Releases: Blosc/c-blosc
Release 1.14.3
The main change for this release is that the pthreads library is
not needed on any Windows build anymore. Thanks to Steven G. Johnson.
Also, the internal Zstd sources have been updated to 1.3.4; expect
an important performance boost (can be up to 10%, specially for low
compression levels).
For more info, please see the release notes in:
https://github.com/Blosc/c-blosc/blob/master/RELEASE_NOTES.rst
Version 1.14.2
- Reverted the $Configuration var in CMake configuration for Windows so
as to restore the compatibility with MS VisualStudio compilers.
Version 1.14.1
-
Fixed a bug that caused C-Blosc to crash on platforms requiring strict
alignment (as in some kinds of ARM CPUs). Fixes #223. Thanks to Elvis
Stansvik and Michael Hudson-Doyle for their help. -
Fixed a piece of code that was not C89 compliant. C89 compliance is
needed mainly by MS VS2008 which is still used for creating Python 2
extensions. -
Remove the (spurious) $Configuration var in cmake config for Windows.
Thanks to Francis Brissette for pointing this out.
Release 1.14.0
-
New split mode that favors forward compatibility. That means that,
from now on, all the buffers created starting with blosc 1.14.0 will
be forward compatible with any previous versions of the library --at
least until 1.3.0, when support for multi-codec was introduced.So as to select the split mode, a new API function has been introduced:
https://github.com/Blosc/c-blosc/blob/master/blosc/blosc.h#L500
Also, the BLOSC_SPLITMODE environment variable is honored when using
theblosc_compress()
function. See
https://github.com/Blosc/c-blosc/blob/master/blosc/blosc.h#L209There is a dedicated blog entry about this at:
http://blosc.org/posts/new-forward-compat-policy/
More info in PR #216.Caveat Emptor: Note that Blosc versions from 1.11.0 to 1.14.0 might
generate buffers that cannot be read with versions < 1.11.0, so if
forward compatibility is important to you, an upgrade to 1.14.0 is
recommended. -
All warnings during cmake build stage are enabled by default now.
PR #218. Thanks to kalvdans. -
Better checks on versions of formats inside Blosc. PR #219. Thanks
to kalvdans. -
The BLOSC_PRINT_SHUFFLE_ACCEL environment variable is honored now.
This is useful for determining at runtime whether the different SIMD
capabilities (only for Intel processors) are available to Blosc to get
better performance during shuffle/bitshuffle operation. As an example,
here it is the normal output for the simple.c example:$ ./simple
Blosc version info: 1.14.0.dev ($Date:: 2018-02-15 #$ )
Compression: 4000000 -> 41384 (96.7x)
Decompression succesful!
Succesful roundtrip!and here with the BLOSC_PRINT_SHUFFLE_ACCEL environment variable set:
$ BLOSC_PRINT_SHUFFLE_ACCEL= ./simple
Blosc version info: 1.14.0.dev ($Date:: 2018-02-15 #$ )
Shuffle CPU Information:
SSE2 available: True
SSE3 available: True
SSSE3 available: True
SSE4.1 available: True
SSE4.2 available: True
AVX2 available: True
AVX512BW available: False
XSAVE available: True
XSAVE enabled: True
XMM state enabled: True
YMM state enabled: True
ZMM state enabled: False
Compression: 4000000 -> 41384 (96.7x)
Decompression succesful!
Succesful roundtrip!Blosc only currently leverages the SSE2 and AVX2 instruction sets, but
it can recognize all of the above. This is useful mainly for debugging.
Release 1.13.5
New conan binaries publicly accessible in https://bintray.com/blosc/Conan.
Still experimental, but feedback is appreciated. No changes have been
made to codebase, so yo don't need to update.
For more info, please see the release notes in:
https://github.com/Blosc/c-blosc/blob/master/RELEASE_NOTES.rst
Release 1.13.4
Fixed a buffer overrun that happens when compressing small buffers and
`len(destination_buffer) < len(source_buffer) + BLOSC_MAX_OVERHEAD'.
Thanks to Ivan Smirnov for reporting this.
Release 1.13.3
Tests should work now when external compressors are located in non-system locations. Fixes #210. Thanks to Leif Walsh.
Release 1.13.2
-
C-Blosc can be compiled on CentOS 6 now.
-
LZ4 internal codec upgraded to 1.8.1.
For more info, please see the release notes in:
https://github.com/Blosc/c-blosc/blob/master/RELEASE_NOTES.rst
Release 1.13.1
Fixed a bug uncovered by the python-blosc test suite: when a buffer is
to be copied, then we should reserve space for the header, not block
pointers.
For more info, please see the release notes in:
https://github.com/Blosc/c-blosc/blob/master/RELEASE_NOTES.rst
Release 1.13.0
A serious optimization of memory copy functions (see blosc/fastcopy.c
) .
This benefits the speed of all the codecs, but specially the BloscLZ one.
As a result of the above, the BloscLZ codec received a new adjustment of
knobs so that you should expect better compression ratios with BloscLZ too.
Also, the LZ4 codec internal sources have been updated to 1.8.0. And internal
Zstd sources have been updated to 1.3.3 too.