bzip2-os

Crates.iobzip2-os
lib.rsbzip2-os
version0.5.0
sourcesrc
created_at2024-06-13 18:28:10.007225
updated_at2024-06-13 18:28:10.007225
descriptionA pure-Rust multi-threaded implementation of bzip2 compression.
homepage
repositoryhttps://github.com/ohsnyt/bzip2
max_upload_size
id1270897
size204,663
Oh Snyt (ohsnyt)

documentation

README

bzip2-rust

Rust implementation of Bzip2 library. This is late alpha / early beta stage. Use at your own risk. This may be used under either the Apache or MIT license.

Block specific decoding modes are not yet implemented.

The goal of the executable is to allow for near 100% compatibility with the existing C version of the Bzip2 executable. However the internal algorithms differ.

The largest internal differences are that this version implements

  1. an alternative sorting algorithm (SA-IS) optimized for highly repetitive data such as gene sequencing information. You should find signficant speed enhancements for that type of data.
  2. multi-threading to optimize speed on multi-core processors

The C version of Bzip2 was very memory efficient - a key factor for that era. This version tries to be careful with memory usage, but does not prioritize memory usage over speed.

The C version of Bzip2 contains a library and several stand-alone tools to work with files (including damaged, compressed files). I do not attempt to reproduce those tools.

David Snyder, June 2024.

Commit count: 0

cargo fmt