kalign icon indicating copy to clipboard operation
kalign copied to clipboard

Enable building on non-x86 architectures

Open mr-c opened this issue 5 years ago • 5 comments

Hello again. This is a patch from the Debian package for kalign. It enables building kalign on no-x86 systems using the SIMD Everywhere header only library.

mr-c avatar Jun 24 '20 08:06 mr-c

The Debian package also removes the call to m4/ax_ext.m4 in configure.ac, but I presume that you'd prefer a switch that defaults to adding the best flags for local compilation instead of its removal.

Instead, on x86 we compile the kalign binary for each SIMD level and install a dispatching script that picks the best binary at runtime.

mr-c avatar Jun 24 '20 08:06 mr-c

@TimoLassmann I've refreshed this PR

mr-c avatar Nov 06 '20 09:11 mr-c

Hi,

The latest release of kalign (3.3.2) compiles on M1 and therefore should also compile on other non-x84 systems.

TimoLassmann avatar Mar 21 '22 05:03 TimoLassmann

Hello @TimoLassmann, thanks for the new release!

I'm still seeing things like include <xmmintrin.h>. Maybe apple ships a compatibility header, but I think it still won't work on other non-x86 systems (and non-Apple compilers on Apple Silicon)

I'll try to do another test to confirm when I get a moment to update the Debian package for your latest release .

mr-c avatar Mar 21 '22 09:03 mr-c

Hi, I think I encapsulated add these platform specific headers in pre-processor statements (#ifdef HAVE_AVX2). Therefore I think kalign should compile using standard C headers on all platforms lacking the specific SIMD instructions. Let me know if that is not the case!

TimoLassmann avatar Mar 22 '22 04:03 TimoLassmann

Thanks @TimoLassmann ; we have kalign 3.3.4 building on a variety of non-x86 architectures in Debian https://buildd.debian.org/status/package.php?p=kalign

mr-c avatar Nov 14 '22 10:11 mr-c

Good to hear, and thanks for you work in putting the debian package together!

TimoLassmann avatar Nov 15 '22 00:11 TimoLassmann