Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I wonder how this compares to xz or lzo. Is the main draw the fact that it runs in really low memory?


The linked blog post [1] contains a benchmark against the Canterbury Corpus [2]. It is hard to test against other compressors because of its very low memory requirement, but LZO1X-1(11) (`lzo1x -11` in LZBench [3]) comes close as both LZO1X-1(11) and HS 13,4 targets 8 KB of work memory. The result (higher is better):

    HS 13,4     LZO1X-1(11) sample
    
    54.90%      38.02%      alice29.txt
    50.51%      34.00%      asyoulik.txt
    57.63%      49.38%      cp.html
    64.68%      56.97%      fields.c
    56.87%      51.03%      grammar.lsp
    71.65%      64.12%      kennedy.xls
    56.53%      40.33%      lcet10.txt
    48.57%      29.41%      plrabn12.txt
    77.74%      82.91%      ptt5
    47.76%      40.64%      xargs.1
    
    64.10%      54.90%      total (note: doesn't include `sum`)
It does seem to have a good compression compared with LZO1X. I think this is mostly because LZO1X has a requirement that literals should be aligned at byte boundary for the performance but Heatshrink doesn't.

[1] https://spin.atomicobject.com/2013/03/14/heatshrink-embedded...

[2] https://corpus.canterbury.ac.nz/

[3] https://morotti.github.io/lzbench-web/


There is a blog post linked at the bottom of the readme that has some more interesting numbers.

https://spin.atomicobject.com/2013/03/14/heatshrink-embedded...


I think it's like LZO or LZ4 but with tiny window, so the compression is not great.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: