Dear all,

I did not get any response to this before Christmas.  Does anybody have any 
ideas that might help me?

Best regards

Jakob

> On 18 Dec 2018, at 15:00, Jakob Schiøtz <schi...@fysik.dtu.dk> wrote:
> 
> Hi,
> 
> I am trying to build the newest version of ELPA (Eigenvalue SoLvers for 
> Petaflop-Applications, https://elpa.mpcdf.mpg.de/).  It looks like ELPA 
> builds a number of “kernels” that are chosen at runtime depending on the 
> capabilities of the CPU, for example SSE, AVX, AVX2 or AVX512.
> 
> Unfortunately, with the foss toolchain the compiler refuses to build these 
> kernels if the CPU does not support them (the Intel toolchain happily builds 
> them).  This means that I have to configure ELPA with --disable-avx2 or 
> --disable-avx if the CPU does not support these instructions, and 
> --enable-avx512 if the CPU does support that.
> 
> Is there some way to do this easily in an easyconfig?  Maybe a compiler flag 
> that allows using “AVX2 gcc intrinsics” in the code, without otherwise 
> turning on AVX2 instructions (as that would cause the rest of the code to 
> fail if AVX2 is not supported).
> 
> Or do I have to write some complicated stuff into an easyblock?  And if I do 
> the latter, do you know how to portably detect the capabilities of the CPU?
> 
> It seems somewhat silly that the ELPA configure script tests if these 
> instructions are supported and fails if one does not manually disable the 
> unsupported versions instead of just doing the right thing.  But that is 
> beyond my control.
> 
> Best regards
> 
> Jakob
> 
> --
> Jakob Schiøtz, professor, Ph.D.
> Department of Physics
> Technical University of Denmark
> DK-2800 Kongens Lyngby, Denmark
> http://www.fysik.dtu.dk/~schiotz/
> 
> 
> 

--
Jakob Schiøtz, professor, Ph.D.
Department of Physics
Technical University of Denmark
DK-2800 Kongens Lyngby, Denmark
http://www.fysik.dtu.dk/~schiotz/



Reply via email to