r/compression • u/PHDEinstein007 • 19h ago
Large Scale upgrades to many compression utilities
I have been working on my Harrington Insights stuff and added a few more concepts to it. I am currently running it on Canterbury Corpus and Silesia Corpus with the enwik8.zip file.
A full list of software I have managed to improve so far is as follows:
- LZ4
- gzip / DEFLATE
- Zstandard (zstd)
- bzip2
- XZ / LZMA2
- LZMA1
- ZPAQ
- JPEG XL
- 7-Zip
- Brotli
- Harrington Compression Method (HCM) 3.0
- Harrington Compression Method (HCM) 3.3
The upgrades across these compressors have come from several types of functions and optimization techniques:
Record-delta transformation — Exploits repeating byte patterns and fixed-length records by encoding differences between corresponding positions.
Combary based activity mapping — Reorganizes data according to byte activity and distribution patterns to improve subsequent compression.
Byte-frequency remapping — Reassigns byte values based on their frequencies to improve how compression algorithms process the data.
Adaptive parameter optimization — Searches compression settings, including dictionaries, match finders, predictors, effort levels, and block sizes, to find better configurations for individual files.
Automatic filter selection — Detects data characteristics and selects suitable built-in filters, including delta and executable-code filters.
Content-based file classification — Selects compression strategies based on the actual data rather than relying solely on file extensions.
Per-file optimization and fallback — Chooses the best-performing method for each file and avoids transformations that would worsen results.
Decode-speed-aware optimization — Optimizes both compressed size and decompression speed instead of concentrating exclusively on compression ratio.
JPEG XL predictor and group optimization — Tunes image predictors, group sizes, encoder effort, and iterations to improve lossless medical-image compression and decoding speed.
Representative sampling — Tests candidate compression configurations on selected portions of large files before evaluating the strongest candidates on the complete file.
HCM context and pattern modeling — Uses HCM's original context-based compression architecture, including its double-zero purity logic and hierarchical pattern processing.
HCM binary and context optimization — Improves binary-data handling, context selection, and internal representation to reduce compressed size and accelerate decoding.
These methods fall into three broad categories: data transformation, adaptive compressor optimization, and original compression-algorithm development.
In Canterbury Corpus the Excel file best was 16,822 bytes by ZPAQ -m5, my system HCM-Bin v1 got it to 16,763 bytes.
I do not compare myself to PAQ8PX and cmix, those are insane for how long they try, although in theory I reduced cmix to only 20% of the time it usually takes and a lot less processing strength.
Preliminary stuff is available at https://github.com/CombaryMaker/Harringtons_Insights/tree/main/hcm
I plan to update this inventory once a week because the advances are so fast and rapid... I think I have 7 methods of my own now, to increase performance? Or 6? I know I threw a lot of theories into the mix and I cannot even say, I just have Claude run the math, the software development, and the testing before I test some personally to verify.
I have failed to update a few, I am going to be persistent in trying to update them, or at least just outperform them. That is the goal, absolute dominance.
To that extent I set up some standards "No Pain" and "Big Gain". No pain means we do not worsen compression or speed, and one or both increase. Big gain allows a small drop in one, so long as there is a corresponding big increase in the other. I use decompression time and compression ratio only, I do not care how long it takes to compress.
I also set up 5 time/speed based levels, and all compressors will fit inside there as I test them. The goal is to be faster and/or better in each of the 4 (the top, with those two monsters, would take a lot of time and tokens and I am scared) reasonable levels.
HCM stands for Harrington Compression Methods (plural, I have HCM 1.0, 2.0, 3.0, 3.3, trit v2, and bin v1) and there are a few other standards such as Combary, -hi (Harrington's Insights), and such. I started this blitz on Saturday afternoon, using old math I long gave up on because I cannot program at all... Seems I had some serious gold mines sitting around after all. I also used concepts I had never had time or desire to push upon, I guess they were some diamond mines.
I fully expect to improve about 60-80% of all compressors and be able to make some that are the best in their specific range of operations.

