mirror of
https://github.com/google/brotli.git
synced 2026-07-08 17:56:58 +00:00
Decode MetaBlock Multithreading #14
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @dominikhlbg on GitHub (Aug 24, 2015).
More an idea as an issue.
Every MetaBlock could decode standalone in a thread.
Now an issue.
The blocksize is stored in meta-block header. (see spec. 9.2.) But only the final uncompressed size of block. The compressed size length isn't stored. That is a problem. Because the next thread will not know the position to start parallel the decoding of next block.
Solution:
Include a store information about compression block size.
@eustas commented on GitHub (Oct 6, 2015):
Hello.
Nice idea. Unfortunately, the spec is frozen now.
But, like with deflate/gzip it shouldn't be a problem: brotli format could remain intact, and some framing format could be added around it to take care of parallel encoding/decoding.
Also, these is another solution: put block length information into the preceding metadata block.
So, format will be the same, but capable encoders/decoders would benefit from parallel execution.
We will be glad to hear about results of experiments in this area.
@rdp commented on GitHub (May 22, 2017):
So include it in the next version possibly? :)