You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
One of the pieces where libsqsh isn't zero-copy is the uncompression of non-continious blocks. While this is an edge case it could end up in situation where up to 1 MiB get copied just to uncompress them afterwards and unnecessarily cache them.
Describe the solution you'd like
The better solution is to write the partial blocks to the extractor and let it handle internal state. This would reduce the amount of (large) copies inside libsqsh.
Describe alternatives you've considered
None
Additional context
The issue is that the implementation of extractors must be capable to always process incoming data completely.
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
One of the pieces where libsqsh isn't zero-copy is the uncompression of non-continious blocks. While this is an edge case it could end up in situation where up to 1 MiB get copied just to uncompress them afterwards and unnecessarily cache them.
Describe the solution you'd like
The better solution is to write the partial blocks to the extractor and let it handle internal state. This would reduce the amount of (large) copies inside libsqsh.
Describe alternatives you've considered
None
Additional context
The issue is that the implementation of extractors must be capable to always process incoming data completely.
The text was updated successfully, but these errors were encountered: