Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated c-blosc2 to v2.11.1; Enabled AVX512 support in c-blosc2 #283

Merged
merged 4 commits into from
Nov 7, 2023

Conversation

t20100
Copy link
Member

@t20100 t20100 commented Nov 6, 2023

This PR updates c-blosc2 to v2.11.1 which adds AVX512 bitshuffle implementation.

This still need some update/test to enable AVX512 support.

5b38ffeb6 Getting ready for release 2.11.1
ff87d56d4 Fix the header for ALTIVEC functions. Overrides #569.
ffc750b70 Post 2.11.0 release actions done
4ec95bf74 Getting ready for release 2.11.0
79e576472 Fix typo newly found by codespell
60d23181e Update CONTRIBUTING.rst
accf9ffc3 Adapt the ALTIVEC module to the new bitshuffle API
9728e2a00 Re-enabling __builtin_cpu_supports() in GCC and Clang
558d982c0 Activate AVX512 in MSVC and Intel compilers
af9608eee Fixes in signature of functions
68b3bf28b bitshuffle generic synced with bitshuffle upstream
c2e7b84f5 Use the NEON bitshuffle code in the bitshuffle project.
bfbd07db4 Support for disabling AVX512
a03bbc1f0 Proper AVX512 flags for MSVC
fdacf9f3b Fix loosing ends for AVX512 support
da8cd94be Preliminary support for AVX512 for bitshuffle
a5c6c8944 Initial version where SSE2 and AVX2 paths have been ported
af2c53418 Add c-blosc2 package variant for Guix with AVX-512 enabled
e11231bd4 Add c-blosc2 package variant for Guix with AVX2 enabled
f79964a97 Add c-blosc2 package definition for Guix
595f69abb Small name fix
c94787a0c Properly check calls to strtol
38a61f1c2 Merge branch 'public-b2nd_copy_buffer'
83a6d99f0 Move declaration of b2nd_copy_buffer to b2nd.h
a6e5f6552 Add simple unit test for b2nd_copy_buffer
8b81ae78d Use constant qualifiers in b2nd_copy_buffer where appropriate
06d1465f2 Include b2nd_utils and b2nd_copy_buffer in API documentation
40bc0d48d Add docstrings for b2nd_utils header and b2nd_copy_buffer function
e94de3d7c Export the b2nd_copy_buffer function
12e2a765e Move b2nd utilities header to public headers directory
8e1cfd9b6 Merge branch 'main' of github.com:Blosc/c-blosc2
2be8b26a3 Better check that nthreads must be >= 1 and <= INT16_MAX.  Fixes #559.
35e5ace48 fix compile arguments for armv7l
61c00e186 Post 2.10.5 release actions done
f8417b103 Getting ready for release 2.10.5
3ecb9dd57 Check ctx has been created correctly
95e0fd427 Change tuner's functions signature to return always an error code
24b703d94 Fix variable name for decompression context
3e88f8576 Post 2.10.4 release actions done
61377baf0 Getting ready for release 2.10.4
f4d00cc4d Remove duplicated tune inicialization since it is already done in blosc2_create_cctx
bba56388f Re-add ninja again
60e6679a3 Fix typo newly found by codespell
aefc9b5cc Post 2.10.3 release actions done
34b273ee6 Getting ready for release 2.10.3
ea1c222c8 Globally register openhtj2k codec
219f2d6db Bump actions/checkout from 3 to 4
6f8721808 Fix typo found by codespell
eacc7b35e Provide a smoother increase of blocksize over clevels
2329d42a8 Add a BLOSC_INFO macro for details on compression params
20884590b data_dest should be bytes, not float
c57645644 Automatic blocksize also depends on splitmode
4c7f52f42 Add an example of guessing automatic blocksizes for arbitrary chunksizes
6bbade9e1 Suppress an use-after-free warning
96746c028 Redo PR #551: Disable visibility attribute for mingw
8ce0e9684 Revert "First attempt at FetchContent for zlib-ng"
1c6b5906d Revert "zlib-ng static: needs -fPIC"
8185e18f9 Revert "Simplify ZLIB target"
481ca7ba3 Revert "Superbuild: Export & Install Zlib-NG"
3cece4776 Revert "Cleanup: internal-complibs/zlib-ng*"
22770bf7d Revert "Clone zlib-ng to build, not source directory"
e5c7f8263 Revert latest PR #544
4f886c3f9 Disable visibility attribute for mingw
365424276 Clone zlib-ng to build, not source directory
9cc30a4af Cleanup: internal-complibs/zlib-ng*
c6196c9c6 Superbuild: Export & Install Zlib-NG
c73b89418 Simplify ZLIB target
36d78effb zlib-ng static: needs -fPIC
02cc3d096 First attempt at FetchContent for zlib-ng
37e083e68 CMake: Cleanup Threads Search
5f66aff62 Fix unused parameter warning with dlopen function
79a6e9614 Post 2.10.2 release actions done

git-subtree-dir: src/c-blosc2
git-subtree-split: 72c5cc1e8516b1af39202c810e77fd1f790e3139
@t20100 t20100 added this to the Next release milestone Nov 6, 2023
@t20100 t20100 marked this pull request as ready for review November 7, 2023 12:28
@t20100
Copy link
Member Author

t20100 commented Nov 7, 2023

Ready for review.

This compiles blosc2 with AVX512 support if enabled: The SHUFFLE_AVX512_ENABLE is always set and bitshuffle-avx512.c always compiled and the selection of whether or not AVX512 support is available relies on AVX512 compiler arguments (-mavx512f -mavx512bw /arch:AVX512) and #if defined(__AVX512F__) && defined (__AVX512BW__) in bitshuffle-avx512.c.

@t20100 t20100 changed the title Updated c-blosc2 to v2.11.1 Updated c-blosc2 to v2.11.1; Enabled AVX512 support in c-blosc2 Nov 7, 2023
@vasole vasole merged commit f203a28 into silx-kit:main Nov 7, 2023
7 checks passed
@t20100 t20100 deleted the update-blosc2 branch January 19, 2024 12:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants