4 releases (2 breaking)

new 0.3.0+SZ3-3.2.2 Jan 8, 2025
0.2.0+SZ3-3.2.1 Dec 9, 2024
0.1.1+SZ3-3.1.8.1 May 28, 2024
0.1.0+SZ3-3.1.8 May 22, 2024

#137 in Compression

Download history 74/week @ 2024-09-20 91/week @ 2024-09-27 159/week @ 2024-10-04 129/week @ 2024-10-11 167/week @ 2024-10-18 137/week @ 2024-10-25 39/week @ 2024-11-01 23/week @ 2024-11-08 42/week @ 2024-11-15 332/week @ 2024-11-22 581/week @ 2024-11-29 536/week @ 2024-12-06 86/week @ 2024-12-13 194/week @ 2025-01-03

318 downloads per month
Used in numcodecs-sz3

MIT/Apache and GPL-3.0-only

4.5MB
39K SLoC

C 35K SLoC // 0.2% comments C++ 2K SLoC // 0.1% comments Rust 1K SLoC // 0.0% comments Visual Studio Project 180 SLoC Python 79 SLoC // 0.3% comments Objective-C 69 SLoC Visual Studio Solution 24 SLoC Batch 19 SLoC Shell 13 SLoC

sz3-rs

High level bindings to the SZ3 lossy floating point compressor.

Usage

let data = vec![0; 64 * 64 * 64];
let data = DimensionedData::build(&data)
    .dim(64)?
    .dim(64)?
    .remainder_dim()?;
let config = Config::new(ErrorBound::Absolute(0.02));
let compressed = compress_with_config(&data, &config);
let decompressed = decompress::<f32, _>(&*compressed);

Dependencies

~2.7–5.5MB
~104K SLoC