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

Use SIMDe #22

Merged
merged 116 commits into from
Dec 20, 2023
Merged

Use SIMDe #22

merged 116 commits into from
Dec 20, 2023

Conversation

james-d-mitchell
Copy link
Member

This is WIP but I wanted to see if the tests can be run from this branch in the CI.

- created build.hpp for TPUBuild
- epu8id and similar are now Epu8.id()
- improved doc
check_cxx_compiler_flag('-mavx' HPCOMBI_HAVE_FLAG_AVX)
#check_cxx_compiler_flag('-march=native' HPCOMBI_HAVE_FLAG_NATIVE)
#check_cxx_compiler_flag('-mavx2' HPCOMBI_HAVE_FLAG_AVX2)
#check_cxx_compiler_flag('-mavx512bw' HPCOMBI_HAVE_FLAG_AVX512BW)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I recommend also checking for -fopenmp-simd and if it is found, adding it and -DSIMDE_ENABLE_OPENMP (generates better autovectorization)

README.md Outdated
Comment on lines 10 to 16
HPCombi was initially designed using the SSE and AVX instruction sets, and did
not work on machines without these instructions (such as ARM). From v1.0.0
HPCombi supports processors with other instruction sets also, via
[simd-everywhere](https://github.com/simd-everywhere/simde). It might be the
case that the greatest performance gains are achieved on processors supporting
the SSE and AVX instruction sets, but the HPCombi benchmarks indicate that
there are also still signficant gains on other processors too.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I usually say SIMDe or SIMD Everywhere (SIMDe).

@hivert hivert merged commit b3f3973 into main Dec 20, 2023
14 checks passed
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.

4 participants