An open-source library for compressed floating-point and integer arrays that support high-throughput random access read and write

Area: Data and visualization

CASS member: RAPIDS

Description

One of zfp’s unique features is its support for efficient in-memory representation of multidimensional numerical data for computations like differential equation solvers, data analysis, and visualization, with significant reductions in memory usage. zfp is primarily written in C and C++ but also has Python, Fortran, and other bindings.

Target audience

While zfp can be used in a variety of scenarios, zfp is perfect for teams wishing to integrate lossy compression into codes. For example, zfp includes a set of classes that implement storage and manipulation of a multidimensional array data type. zfp arrays support high-speed read and write random access to individual array elements and are a drop-in replacement for std::vector and native C/C++ arrays. zfp arrays provide accessors like proxy pointers, iterators, and views. zfp arrays allow specifying an exact memory footprint or an error tolerance.

Additional resources

Impact stories