> On 10 Oct 2018, at 13:28, Åke Sandgren <[email protected]> wrote:
> 
> 
> 
> On 10/10/2018 09:54 AM, Jakob Schiøtz wrote:
>> Hi all,
>> 
>> I am making an easyconfig (WIP PR #6984), and to solve an issue I need to 
>> set an environment variable pointing to a library in a dependency.  The 
>> variably logically belongs in this module, not in the dependency, as it is a 
>> quirk of this software that requires it to be set.
>> 
>> I thus need to refer to paths in a dependency in a modextravars line in the 
>> .eb.  I want to set the variable GPAW_FFTWSO to the value 
>> $EBROOT_FFTW/lib/libfftw3f.so,$EBROOT_FFTW/lib/libfftw3.so
>> 
>> I assume that doing an "import os” and then using os.genenv() is not 
>> considered god style in an easyconfig.  Is there a better way?  Writing 
>> $EBROOT_FFTW in the string does not work, it is of course not expanded.
>> 
>> 
>> Reason:
>> The package GPAW with the iomkl and intel toolchains is linked with Intel 
>> MKL.  But Intel MKL contains an incomplete implementation of the FFTW 
>> interface, and it is apparently incompatible with the real FFTW meaning that 
>> calling FFTW functions from both libraries in the same executable causes 
>> core dumps.  Unfortunately, the optional dependency libvdwxc (which gives 
>> extra functionality to GPAW) links against the real FFTW (and cannot use MKL 
>> as a key function is missing).  Linking GPAW with FFTW before MKL almost 
>> works, but unfortunately the Python code does some unholy stuff and tries to 
>> find the FFTW library itself, picks up MKL and crases.  Setting GPAW_FFTWSO 
>> overrrules this.
>> 
> 
> Are you using the library from $FFTWLIB (or FFTLIB), i.e. the actual
> fftw wrapper library for mkl that EB sets up?
> 
> Or are you letting it use the mkl directly? There are some differences
> between the two approaches.

GPAW is getting BLAS, SCALAPACK etc directly from MKL, but is expecting FFTW 
for the FFT, and it is probably the MKL wrappers causing the trouble, since 
libwdvxc needs the “real” FFTW and mixing the two does not work.

> 
> -- 
> Ake Sandgren, HPC2N, Umea University, S-90187 Umea, Sweden
> Internet: [email protected]   Phone: +46 90 7866134 Fax: +46 90-580 14
> Mobile: +46 70 7716134 WWW: http://www.hpc2n.umu.se

--
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