-
Notifications
You must be signed in to change notification settings - Fork 558
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
travis: added arm64, ppc64le and s390x tests with simde #283
base: master
Are you sure you want to change the base?
Conversation
@@ -15,6 +15,11 @@ INCLUDES= | |||
LIBS= -lm -lz -lpthread | |||
SUBDIRS= . | |||
|
|||
ifneq ($(simde),) | |||
CFLAGS += -DUSE_SIMDE -DSIMDE_ENABLE_NATIVE_ALIASES -DSIMDE_ENABLE_OPENMP -fopenmp-simd |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here is the explanation of -fopenmp-simd
.
https://gcc.gnu.org/legacy-ml/gcc-patches/2013-10/msg02275.html
And here is the explanation of SIMDE_ENABLE_OPENMP
in the simde README.md
.
For best performance, in addition to -O3 (or whatever your compiler's equivalent is), you should enable OpenMP 4 SIMD support by defining SIMDE_ENABLE_OPENMP before including any SIMDe headers, and enabling OpenMP support in your compiler.
TravisCI has been replaced with Github Actions some time ago - 765fac1. This PR will also solve the two linked issues above! Ping @jmarshall . |
In my opinion, a better solution for mainline bwa than either proposed PR would be for someone who cares to implement native ARM NEON versions of As for Travis: bwa's use of Travis CI was replaced because the service had become unreliable. I have seen no evidence of that having changed since; see also the conversation on lh3/minimap2#740. But I am not a bwa maintainer (so don't ping me). |
Apologies! I pinged you because you did the migration from TravisCI to Github Actions. |
Agreed! And one can still use SIMDe as a fallback for non-X86, non-ARM |
SIMDe may be of interest to people such as Debian packagers who would like to have green lights across all their ports. Unless you can point to e.g. a community doing genomics on s390x, it may be of less interest to mainline bwa IMHO. |
The s390x is a big-endian while x86_64, arm64, ppc64le are a little-endian. So, if someone wants to keep bwa with a big-endian friendly too, the s390x line might be good. |
This PR is to add arm64, ppc64le and s390x tests with simde.
I referred Debian's Makefile and the patch to use simde, as there are Debian's bwa deb packages on some CPU architectures here.
For
.travis.yml
and how to implement simde, I referred minimap2.This PR also fixes #77 and #71 .
Travis is ok here.