3 ms·
There are also deflate-specific tricks you can use - just spam empty non-final blocks ad infinitum. import zlib zlib.decompress(b"\x00\x00\x00\xff\xff"
by Retr0id 11mo ago
There are also deflate-specific tricks you can use - just spam empty non-final blocks ad infinitum.
import zlib
zlib.decompress(b"\x00\x00\x00\xff\xff" * 1000 + b"\x03\x00", wbits=-15)
If you want to spin more CPU, you'd probably want to define random huffman trees and then never use them.
- Retr0id 11mo agoI had claude implement the random-huffman-trees strategy and it works alright (~20MB/s decompression speed), but a minimal huffman tree that only encodes the end symbol works out even slower (~10MB/s), presumably because each tree is more compact. The minimal version boils down to: bytes.fromhex("04c001090000008020ffaf96") * 1000000 + b"\x03\x00"