[gmx-users] Intel MKL taken in preference of the specified FFT library
reuti at staff.uni-marburg.de
Fri Jul 17 12:49:50 CEST 2015
thy for your reply and clarification about the library issue.
> Am 16.07.2015 um 20:43 schrieb Mark Abraham <mark.j.abraham at gmail.com>:
> On Thu, Jul 16, 2015 at 5:47 PM Reuti <reuti at staff.uni-marburg.de> wrote:
>> I just downloaded Gromacs 5.1-rc1 and want to compile it using the GNU
>> compilers and a self compiled FFTW*. I configured Gromacs with:
>> $ cmake .. -DCMAKE_INSTALL_PREFIX=/home/reuti/local/gromacs-5.1-rc1
>> -DGMX_FFT_LIBRARY=fftw3 -DCMAKE_PREFIX_PATH=/home/reuti/local/fftw-3.3.4
>> As there was now shared version of FFTW it complains about it, and hence I
>> compiled FFTW again - this time with shared library flag and the configure
>> step of Gromacs succeeded. But after `make` and `make install` I faced the
>> result, that the binary `gmx` like the library in "lib64" were linked
>> against Intel MKL. Well, there is an old version of the Intel MKL on the
>> system and hence in the LD_LIBRARY_PATH. Once I cleared the LD_LIBRARY_PATH
>> I got the result I expected.
> Older MKL had a "feature" of providing headers that look like FFTW but
> execute MKL, and programs will find that if it precedes real FFTW in the
> lookup path.
>> Question: is this the intended behavior? IMO the GMX_FFT_LIBRARY=fftw3
>> flag should be honored first and any set LD_LIBRARY_PATH ignored.
> Yes, but Intel decided to be "compatible" a.k.a. "deceptive." IIRC enough
> people complained that it got fixed for subsequent MKL. Meanwhile, our
> CMake code is quite complicated enough without double-checking for every
> possible rare case ;-) Meanwhile, there are ways of forcing the find
> mechanism to find the FFTW you really want.
>> -- Reuti
>> *) The automatic download (like outlined in the INSTALL:
>> -DGMX_BUILD_OWN_FFTW=ON -DREGRESSIONTEST_DOWNLOAD=ON) of FFTW and the
>> regression tests points to the Gromacs site, but AFAICS they were moved to
>> box.com, hence the automatic download fails.
> No, the FFTW download goes to its site, and the tests download goes to
> gerrit.gromacs.org. None of that has changed.
For the FFTW you are right, I overlooked that it was complaining about the regression test only:
CMake Error at tests/CMakeLists.txt:57 (message):
status_string: "Unsupported protocol"
log: Hostname was NOT found in DNS cache
Connected to gerrit.gromacs.org (18.104.22.168) port 80 (#0)
GET /download/regressiontests-5.1-rc1.tar.gz HTTP/1.1
HTTP/1.1 302 Found
Date: Fri, 17 Jul 2015 10:08:02 GMT
Server Apache/2.2.22 (Ubuntu) is not blacklisted
Server: Apache/2.2.22 (Ubuntu)
Without the protocol error it would have downloaded from the final destination without getting noticed. But " HTTP/1.1 302 Found" is an URL redirect.
>> Gromacs Users mailing list
>> * Please search the archive at
>> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
>> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>> * For (un)subscribe requests visit
>> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
>> send a mail to gmx-users-request at gromacs.org.
> Gromacs Users mailing list
> * Please search the archive at http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before posting!
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or send a mail to gmx-users-request at gromacs.org.
More information about the gromacs.org_gmx-users