3rd December 2013, 04:38
Here is another compressor I'm still working on. It uses only context modelling. The normal version (CM0) is supposed to be "fast", the extended version (CM0_EXT) is more exhaustive. The models are similar, but incompatible with each other. I'm going to continue developing this. If I can improve it further, I will probably release the source later.
CM0/CM0_EXT c in out
CM0/CM0_EXT d out in_reconstructed
Last edited by cade; 5th December 2013 at 03:03.
Reason: Fixed attached exe
The Following 2 Users Say Thank You to cade For This Useful Post:
Nania Francesco (3rd December 2013),Stephan Busch (3rd December 2013)
3rd December 2013, 12:14
which libraries are needed to run those files? I m getting an error message when trying to start them.
3rd December 2013, 15:04
I compiled with the latest MinGW. I have used static linking this time (huge file sizes) so nothing else is needed, and tested on an old computer running Windows XP. Sorry for the inconvenience.
Edit: I updated the attached files in the top post.
Last edited by cade; 3rd December 2013 at 15:07.
3rd December 2013, 16:26
@Stephan Busch - which libraries are needed?
the older *.exe needs libgcc_s_dw2-1.dll and libstdc++-6.dll
(the dlls can be be in the same directory as the *.exe)
4th December 2013, 05:34
Two small changes today: fixed a silly bug when reporting the final file size (forgot to account for the IO buffer, so it was less by 128k) and a small change to the weighting scale between orders to increase compression ratio a little.
I have a hash table with individual counters similar to fpaq0. After I update each bit, I look for (hash + current byte) for each order. The alternative is that instead of after every bit, I could just do it every byte, but then I would have 256 counters out of which only 8 are used, wasting a lot of memory. I can use SIMD to update 8 counters at once, but loading is the main bottleneck. Does anyone have any ideas?
Last edited by cade; 5th December 2013 at 02:56.
5th December 2013, 02:56
There was a silly error with the way I reported file sizes in my IO library (forgot to count how many characters are buffered in memory and just reported ftell), I have updated in the original post. Sorry about that.
9th December 2013, 18:48
CM1 is a reduced and much faster model.
The Following User Says Thank You to cade For This Useful Post:
Nania Francesco (9th December 2013)