A blocking, shuffling and lossless compression library

Edit Package blosc

Blosc is a high performance compressor optimized for binary data. It has been designed to transmit data to the processor cache faster than the traditional, non-compressed, direct memory fetch approach via a memcpy() OS call. Blosc is the first compressor (that I'm aware of) that is meant not only to reduce the size of large datasets on-disk or in-memory, but also to accelerate memory-bound computations.

It uses the blocking technique to reduce activity on the memory bus as much as possible. In short, this technique works by dividing datasets in blocks that are small enough to fit in caches of modern processors and perform compression / decompression there. It also leverages, if available, SIMD instructions (SSE2) and multi-threading capabilities of CPUs, in order to accelerate the compression / decompression process to a maximum.

Blosc is actually a metacompressor, that meaning that it can use a range of compression libraries for performing the actual compression/decompression. Right now, it comes with integrated support for BloscLZ (the original one), LZ4, LZ4HC, Snappy and Zlib. Blosc comes with full sources for all compressors, so in case it does not find the libraries installed in your system, it will compile from the included sources and they will be integrated into the Blosc library anyway. That means that you can trust in having all supported compressors integrated in Blosc in all supported platforms.

Refresh
Refresh
Source Files
Filename Size Changed
blosc-1.14.4.tar.gz 0000785771 767 KB
blosc.changes 0000017797 17.4 KB
blosc.spec 0000003678 3.59 KB
Revision 12 (latest revision is 24)
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 630788 from Martin Pluskal's avatar Martin Pluskal (pluskalm) (revision 12)
- Update to version 1.14.4:
  * Added a new DEACTIVATE_SSE2 option for cmake that is useful for
    disabling SSE2 when doing cross-compilation (see #236).
  * New check for detecting output buffers smaller than
    BLOSC_MAX_OVERHEAD.
  * The complib and version parameters for blosc_get_complib_info()
    can be safely set to NULL now. This allows to call this
    function even if the user is not interested in these parameters
    (so no need to reserve memory for them).
  * In some situations that a supposedly blosc chunk is passed to
    blosc_decompress(), one might end with an Arithmetic exception.
    This is probably due to the chunk not being an actual blosc
    chunk, and divisions by zero might occur. A protection has been
    added for this.
Comments 0
openSUSE Build Service is sponsored by