Coder Social home page Coder Social logo

vestigej / zfp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from llnl/zfp

0.0 1.0 0.0 2.52 MB

Compressed numerical arrays that support high-speed random access

Home Page: http://computing.llnl.gov/projects/floating-point-compression

License: BSD 3-Clause "New" or "Revised" License

Makefile 0.24% C++ 48.42% C 33.30% CMake 7.18% Shell 0.42% Cuda 4.34% Fortran 3.00% Python 3.10%

zfp's Introduction

ZFP

Travis CI Build Status Appveyor Build Status Documentation Status Code Coverage

zfp is a compressed format for representing multidimensional floating-point and integer arrays. zfp provides compressed-array classes that support high throughput read and write random access to individual array elements. zfp also supports serial and parallel (OpenMP and CUDA) compression of whole arrays, e.g., for applications that read and write large data sets to and from disk.

zfp uses lossy but optionally error-bounded compression to achieve high compression ratios. Bit-for-bit lossless compression is also possible through one of zfp's compression modes. zfp works best for 2D, 3D, and 4D arrays that exhibit spatial correlation, such as continuous fields from physics simulations, natural images, regularly sampled terrain surfaces, etc. zfp compression of 1D arrays is possible but generally discouraged.

zfp is freely available as open source and is distributed under a BSD license. zfp is primarily written in C and C++ but also includes Python and Fortran bindings. zfp conforms to various language standards, including C89, C99, C11, C++98, C++11, and C++14, and is supported on Linux, macOS, and Windows.

Quick Start

To download zfp, type:

git clone https://github.com/LLNL/zfp.git

zfp may be built using either CMake or GNU make. To use CMake, type:

cd zfp
mkdir build
cd build
cmake ..
cmake --build . --config Release
ctest

This builds the zfp library in the build/lib directory and the zfp command-line executable in the build/bin directory. It then runs the regression tests.

zfp may also be built using GNU make:

cd zfp
make
make test

Note: GNU builds are less flexible and do not support all available features, e.g., CUDA support.

For further configuration and build instructions, please consult the documentation.

Documentation

Full HTML documentation is available online. A PDF version is also available.

Contributing

The zfp project uses the Gitflow development model. Contributions should be made as pull requests on the develop branch. Although this branch is under continuous development, it should be robust enough to pass all regression tests. The master branch is updated with each release and reflects the most recent official release of zfp. See the Releases Page for a history of releases.

Authors

zfp was originally developed by Peter Lindstrom at Lawrence Livermore National Laboratory. Please see the Contributors Page for a full list of contributors.

Citing zfp

If you use zfp for scholarly research, please cite this paper:

Additional Resources

For more information on zfp, please see the zfp website. For bug reports and feature requests, please consult the GitHub issue tracker. For questions and comments not answered here or in the documentation, please send e-mail to [email protected].

License

zfp is distributed under the terms of the BSD 3-Clause license. See the files LICENSE and NOTICE for details.

SPDX-License-Identifier: BSD-3-Clause

LLNL-CODE-663824

zfp's People

Contributors

salasoom avatar lindstro avatar stevwonder avatar mclarsen avatar da-wad avatar wmamrak avatar maddyscientist avatar ianlee1521 avatar garrettdmorrison avatar mohamed avatar markcmiller86 avatar alichnewsky avatar mathstuf avatar cgohlke avatar lennartnoordsij avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.