Improve partial compression #18
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Improve the partial compression code to use random text strings instead of all 0s. Using all 0s is still an option.
To use compressible warp objects, you must provide the " --obj.generator partiallyCompressible" flag, then you have two tunable:
--obj.percentCompressible <1-100>: for any given 32K chunk of data in the object, it has this % chance of being compressible data. So 33 here would mean "every 3rd chunk is compressible", 50 would be "every other chunk is compressible.
--obj.compressionRatioTunable <0-64>: When creating a compressible region of the object, we take a known string and pull X-character substrings from it at random to fill it. So a 1 means "randomly chosen letters", 60 means "randomly chosen 60-character substrings".
- This has a special case, where providing a 0 here means the compressible regions are all 0s
A reasonable default invocation is to use "--obj.generator partiallyCompressible --obj.percentCompressible 50 --obj.compressionRatioTunable 40"