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/