├── .gitignore ├── LICENSE.md ├── README.md └── index.html /.gitignore: -------------------------------------------------------------------------------- 1 | /.idea 2 | /nbproject/ 3 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | [![Creative Commons License](https://i.creativecommons.org/l/by/4.0/88x31.png)](http://creativecommons.org/licenses/by/4.0/) 2 | 3 | This work is licensed under a [Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by/4.0/). 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # lossless-benchmark 2 | Benchmark results for lossless data compressors. 3 | See here: https://tarsa.github.io/lossless-benchmark/ 4 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 11 | lossless-benchmark 12 | 17 | 18 | 19 | 20 |
21 |

Lossless data compression benchmark

22 |
23 | Contents: 24 | 32 |
33 |
34 |

[filled in script]

35 |
36 |
37 | 41 |
42 |
43 | 47 |
48 |
49 | 53 |
54 |
55 |
56 | 62 | 164 |
165 |
166 |

Algorithms

167 | Column "Alg" shows the dominant algorithm used in a compression program. Compression algorithms are 168 | explained in depth in an excellent online book 169 | Data Compression Explained so I won't repeat that 170 | here. I will only list some algorithms names and their abbreviations: 171 | 183 | Please note that compression programs often combine multiple compression algorithms, filtering, 184 | transforms, etc so the dominant algorithm (or algorithms) is a subjective category and can also be a 185 | subject to interpretation and/ or discussion. Some algorithm families (like Lempel-Ziv) have multiple 186 | variants so concrete algorithm can be either named after the popular algorithm family it resembles or 187 | named with it's unique name. 188 |
189 |
190 |
191 |

Test sets:

192 | 223 |
224 |
225 |
226 |

Compression programs

227 | 276 |
277 |
278 |
279 |

Rules:

280 | 299 |
300 |
301 |
302 |

Questions & answers

303 |
    304 |
  1. 305 |

    Q: How to measure speed and memory usage on Microsoft Windows?

    306 |

    A: Look for latest version of ProcProfile here: 307 | encode.ru: 308 | Command Line Process Profiling Tool

    309 |
  2. 310 |
  3. 311 |

    Q: How to measure speed and memory usage on GNU/ Linux?

    312 |

    A: Invoke /usr/bin/time -v <original command>. Time to be reported will 313 | be after Elapsed (wall clock) time and memory usage to be reported will be 314 | after Maximum resident set size (kbytes) (needs to be scaled to get usage in 315 | megabytes).

    316 |
  4. 317 |
318 |
319 |
320 | 339 | 342 | 345 | 349 | 497 | 886 | 889 | 892 | 897 | 898 | 899 | 903 | --------------------------------------------------------------------------------