All Projects → LLNL → fpzip

LLNL / fpzip

Licence: BSD-3-Clause License
Lossless compressor of multidimensional floating-point arrays

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
CMake
9771 projects
Makefile
30231 projects

Projects that are alternatives of or similar to fpzip

fpzip
Cython bindings for fpzip, a floating point image compression algorithm.
Stars: ✭ 24 (-58.62%)
Mutual labels:  compression, floating-point
Turbo-Transpose
Transpose: SIMD Integer+Floating Point Compression Filter
Stars: ✭ 50 (-13.79%)
Mutual labels:  compression, floating-point
Zfp
Compressed numerical arrays that support high-speed random access
Stars: ✭ 384 (+562.07%)
Mutual labels:  compression, data-viz
ndzip
A High-Throughput Parallel Lossless Compressor for Scientific Data
Stars: ✭ 19 (-67.24%)
Mutual labels:  compression, floating-point
minformat
gominfmt makes the Go code more compact to aid further compression; revert with gofmt
Stars: ✭ 19 (-67.24%)
Mutual labels:  compression
rangecoder
a fast range coder in C++, using SSE
Stars: ✭ 50 (-13.79%)
Mutual labels:  compression
pakkero
Pakkero is a binary packer written in Go made for fun and educational purpose. Its main goal is to take in input a program file (elf binary, script, even appimage) and compress it, protect it from tampering and intrusion.
Stars: ✭ 143 (+146.55%)
Mutual labels:  compression
pyrus-cramjam
Thin Python wrapper to de/compression algorithms in Rust - lightweight & no dependencies
Stars: ✭ 40 (-31.03%)
Mutual labels:  compression
xdelta-sharp
Decompressor for delta encoding VCDIFF (RFC-3284) -- xdelta3 compatible.
Stars: ✭ 27 (-53.45%)
Mutual labels:  compression
Competitive-Feature-Learning
Online feature-extraction and classification algorithm that learns representations of input patterns.
Stars: ✭ 32 (-44.83%)
Mutual labels:  compression
VTEnc
VTEnc C library
Stars: ✭ 31 (-46.55%)
Mutual labels:  compression
image-optimizer
Smart image optimization
Stars: ✭ 15 (-74.14%)
Mutual labels:  compression
smallz4
Optimal LZ4 compression
Stars: ✭ 24 (-58.62%)
Mutual labels:  compression
lz4-napi
Fastest lz4 compression library in Node.js, powered by napi-rs and lz4-flex.
Stars: ✭ 29 (-50%)
Mutual labels:  compression
naps
An experiment for building gateware for the axiom micro / beta using nmigen and yosys
Stars: ✭ 28 (-51.72%)
Mutual labels:  compression
zopflipy
A Python bindings for Zopfli
Stars: ✭ 17 (-70.69%)
Mutual labels:  compression
compress-net-notes
No description or website provided.
Stars: ✭ 20 (-65.52%)
Mutual labels:  compression
nim-snappy
Nim implementation of Snappy compression algorithm
Stars: ✭ 14 (-75.86%)
Mutual labels:  compression
bzip2-rs
Pure Rust bzip2 decoder
Stars: ✭ 28 (-51.72%)
Mutual labels:  compression
hdt-cpp
HDT C++ Library and Tools
Stars: ✭ 94 (+62.07%)
Mutual labels:  compression

fpzip

INTRODUCTION

fpzip is a library and command-line utility for lossless and optionally lossy compression of 2D and 3D floating-point arrays. fpzip assumes spatially correlated scalar-valued data, such as regularly sampled continuous functions, and is not suitable for compressing unstructured streams of floating-point numbers. In lossy mode, fpzip discards some number of least significant mantissa bits and losslessly compresses the result. fpzip currently supports IEEE-754 single (32-bit) and double (64-bit) precision floating-point data. fpzip is written in C++ but has a C compatible API that can be called from C and other languages. It conforms to the C++98 and C89 language standards.

fpzip is released as Open Source under a three-clause BSD license. Please see the file LICENSE for further details.

INSTALLATION

CMake builds

fpzip was developed for Linux and macOS but can be built on Windows using CMake. To use CMake, type:

cd fpzip
mkdir build
cd build
cmake ..
cmake --build . --config Release

fpzip can be configured using compile-time options, e.g.:

cmake .. -DFPZIP_FP=FPZIP_FP_SAFE -DBUILD_UTILITIES=OFF

To display the available options, type:

cmake .. -L

Basic regression testing is available:

ctest -V -C Release

GNU builds

fpzip may also be built using GNU make:

cd fpzip
gmake

This builds lib/libfpzip.a and bin/fpzip.

The GNU make options are listed in the file Config and should preferably be set on the command line, e.g.:

gmake FPZIP_FP=FPZIP_FP_SAFE BUILD_UTILITIES=0

To run the regression tests, type:

gmake test

DOCUMENTATION

Documentation is currently limited to the source files themselves. For information on the API, please see the header file include/fpzip.h. For an example of how to call fpzip, please see the source file utils/fpzip.cpp. This utility may be used to compress binary files of raw floating-point numbers. Usage is given by:

fpzip -h

AUTHOR

fpzip was written by Peter Lindstrom at Lawrence Livermore National Laboratory.

CITING fpzip

If you use fpzip for scholarly research, please cite the following paper:

Peter Lindstrom and Martin Isenburg
"Fast and Efficient Compression of Floating-Point Data"
IEEE Transactions on Visualization and Computer Graphics, 12(5):1245-1250, 2006

LICENSE

fpzip is distributed under the terms of the BSD license. See the files LICENSE and NOTICE for details.

SPDX-License-Identifier: BSD

LLNL-CODE-764017

QUESTIONS AND COMMENTS

For questions and comments, please contact us at [email protected]. Please submit bug reports and feature requests via the GitHub issue tracker.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].