[CP2K-user] [CP2K:11555] WAS: intel gnu toolchain fails NOW: OMP problem with intel toolchain
Hans Pabst
hf.... at gmail.com
Tue May 21 12:13:55 UTC 2019
In addition, the latest ARCH files avoid this problem even if IPO/LTO is
enabled. Please note that LTO is enabled by default when using the GNU
toolchain. Apparently, LTO is not as exercised as the regular build/link
flow and there are occassionally issues related to LTO when building
complex applications.
Am Dienstag, 21. Mai 2019 13:53:40 UTC+2 schrieb Hans Pabst:
>
> This issue occassionally happens depending on the toolchain. It may have
> something to do with the version of Bintools. The problem can be avoided
> with adding IPO=0 to the make-command (no edit of the Make/Arch file
> needed).
>
> Am Freitag, 12. April 2019 15:53:36 UTC+2 schrieb Ronald Cohen:
>>
>> I got the code to build with the following change to the arch file:
>>
>> ifneq (0,$(IPO))
>> OPTFLAGS += -flto -Wl,-flto -Wno-lto-type-mismatch
>> else
>> OPTFLAGS += -fno-lto -Wl,-fno-lto -Wno-lto-type-mismatch
>> endif
>>
>> However, now a new problem, with gcc6.3 and with 8.2 and 8.3:
>>
>> /
>> \ *
>> *
>> [ABORT]
>> *
>> * \___/ Thread number has
>> changed *
>> *
>> | *
>> *
>> O/| *
>> * /|
>> | *
>> * / \
>> dbcsr_dist_methods.F:519 *
>>
>> *******************************************************************************
>>
>>
>> ===== Routine Calling Stack =====
>>
>> 10 dbcsr_create_new
>> 9 build_overlap_matrix
>> 8 build_core_hamiltonian_matrix
>> 7 qs_energies_init_hamiltonians
>> 6 qs_energies
>> 5 qs_forces
>> 4 cp_eval_at
>> 3 geoopt_bfgs
>> 2 cp_geo_opt
>> 1 CP2K
>> For some reason it works tith the gnu toolchainj but always have this
>> problem with gnu compilers but intel toolchain.
>> It seems like OMP_GET_NUM_THREADS()
>> always reports 1 thread though there are 4.
>>
>> Ron
>>
>>
>>
>>
>> On Monday, April 8, 2019 at 5:38:41 PM UTC-4, Ronald Cohen wrote:
>>>
>>> Thank you, but to be clear I am using gnu compilers, as called by the
>>> intel distribution, using the intel tool chain with GNU=1. I am properly
>>> sourcing the intel variable scripts and the correct compilers are being
>>> used. Still I get the reported error. Thanks,
>>>
>>> Ron
>>>
>>> Sent from my iPhone
>>>
>>> On Apr 8, 2019, at 17:14, Mohammad Shakiba wrote:
>>>
>>> Dear Ronald,
>>>
>>> I had problems with compiling CP2K with intel compilers too. I want to
>>> share my experience about compiling CP2K with intel. Some of them works
>>> properly and some not. The recommended versions are included in the
>>> following links:
>>>
>>> https://www.cp2k.org/dev:compiler_support
>>>
>>> https://xconfigure.readthedocs.io/en/latest/cp2k/
>>>
>>> Use the links above which are good for compiling locally on clusters.
>>> First, you're gonna have to recompile libxsmm yourself in the $HOME
>>> directory (use the link in xconfigure and the rest). Then based on your CPU
>>> (type 'lscpu' to find out what kind of cpu you got, for example I have
>>> Xeon-E5-v4) you have to source to the intel compiler:
>>>
>>> source
>>> /opt/intel/compilers_and_libraries_yourversion/linux/bin/compilervas.sh
>>> intel64
>>>
>>> Always source to intel compiler like above before using CP2K. You can
>>> check that by typing for example 'mpirun --version'. Also, check if your
>>> CP2K version pass the regtests, for example it compiles with intel 17.0.1
>>> but with wrong answers.
>>>
>>> Hope you find it useful.
>>>
>>>
>>> On Monday, April 8, 2019 at 6:27:05 PM UTC+4:30, Ronald Cohen wrote:
>>>>
>>>> I am trying to use the intel gnu toolchain on my KNL cluster using GNU,
>>>> and it always faiuls for every version of the intel suite I can find with
>>>> the following:
>>>>
>>>>
>>>> make ARCH=Linux-x86-64-intelx ELPAROOT=/home/rcohen/gnu/gcc6.3/
>>>> AVX=3 OMP=1 GNU=1 MKL=2 MIC=1 VERSION=psmp
>>>>
>>>> to1: fatal error: multiple prevailing defs for
>>>> ?libxsmm_gemm_auto_prefetch_default?
>>>> compilation terminated.
>>>> lto-wrapper: fatal error: gfortran returned 1 exit status
>>>> compilation terminated.
>>>> /usr/bin/ld: error: lto-wrapper failed
>>>> collect2: error: ld returned 1 exit status
>>>> /home/rcohen/CP2K/cp2k/obj/Linux-x86-64-intelx/psmp/all.dep:86: recipe
>>>> for target '/home/rcohen/CP2K/cp2k/exe/Linux-x86-64-intelx/graph.psmp'
>>>> failed
>>>> make[3]: ***
>>>> [/home/rcohen/CP2K/cp2k/exe/Linux-x86-64-intelx/graph.psmp] Error 1
>>>> make[3]: *** Waiting for unfinished jobs....
>>>>
>>>>
>>>> I cannot find a fix for the "multiple prevaiing ..." or that anyone
>>>> else has reported it. Any help is appreciated.
>>>>
>>>> The gnu toolchain built find, but without elpa or mkl. I was trying to
>>>> add in elpa and mkl.
>>>>
>>>> Ron Cohen
>>>>
>>>>
>>>> --
>>>
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20190521/cd6e9197/attachment.htm>
More information about the CP2K-user
mailing list