[Wien] NMR Integration crashes when using nmr_integ:localhost:4 in .machines Link error
Gavin Abo
gabo13279 at gmail.com
Mon Sep 1 13:23:09 CEST 2025
At [1], the current latest version of oneAPI is 2025.2. There it has
under supported Linux distributions "SuSE LINUX Enterprise Server* 15
SP4, SP5, SP6". Those look like they might be more aligned with the
openSUSE Leap 15.x versions seen in the list at [2]. The openSUSE
Tumbleweed looks like it's a rolling release that might always be ahead
of what Intel is developing the oneAPI with. If that is the case,
incompatibility risks are probably going to be higher using Tumbleweed
than one of the distributions in Intel's oneAPI supported list.
The error message has:
`/lib64/libm.so.6' for IFUNC symbol `modff'
The modff is a function in the libm library [3] that looks to be a part
of the identified GLIBC. I see that you mentioned downgrading the GLIBC
(which could need using an older OpenSUSE Leap version) is not a
solution for you.
A few other ideas below that you may or may not want to consider.
Intel has a libimf Compiler Math Library [4] that seems to contain a
modff function [5]. So, static linking to the libimf.a might be a
possibility. There is a post about a RELINK error that might be of
interest at [6].
IFUNC in the above message is likely a GNU indirect function that
resolves a function implementation picked by a resolver at runtime where
glibc uses this to provide multiple implementations optimized for
different architecture levels [7]. I don't recall what architecture was
targeted for your compile, but say it was AVX and the new glibc has an
issue with it. Maybe falling back to an architecture (see [8]) were
optimization isn't as good if the processor your using also supports it,
say SSE3, might be something to try.
If the Intel MPI source code for libmpi.so.12 has to be compiled with
the GLIBC 2.42 by Intel in a future release to fix the issue, an
alternate solution might be to use a different Message Passing Interface
(MPI) such as MPICH or OpenMPI [9].
[1]
https://www.intel.com/content/www/us/en/developer/articles/system-requirements/oneapi-base-toolkit/2025.html
[2] https://en.wikipedia.org/wiki/OpenSUSE#Version_history
[3] https://sourceware.org/newlib/libm.html#modf
[4]
https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2025-2/compiler-math-library.html
[5]
https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2025-2/nearest-integer-functions.html
[6]
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Trouble-linking-libimf-a-on-Linux/td-p/1342415
[7] https://maskray.me/blog/2021-01-18-gnu-indirect-function
[8]
https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2025-2/arch.html
[9] https://en.wikipedia.org/wiki/MPICH#MPICH_derivatives
Kind Regards,
Gavin
WIEN2k user
On 9/1/2025 1:30 AM, Michael Fechtelkord via Wien wrote:
> Hello all,
>
>
> thanks again for all your advise. I now used ifort 2021.1.1 and icc
> 2021.4.0 for compilation (with flag -no-gcc) but the SIGSEV is still
> there. As you can see it is a C-Library related communication error
>
> The new GLIBC 2.42 core library does not work together correctly with
> Intels mpi (all versions, see error reports below). It will be
> difficult to solve that problem, a downgrade of a Core library is not
> recommendable, so I use as a work around the sequential integration on
> one core. The integration step does not really take long and the
> parallel calculation of the electron current is still working.
>
> I am sure that problem will arise soon for most who use mpirun and
> have GLIBC 2.42 in their LINUX operating system.
>
> Best regards,
>
> Michael
>
> ------------------------------------
>
> EXECUTING: mpirun -np 4 -machinefile .machine_nmrinteg
> /usr/local/WIEN2k/nmr_mpi -case MgF2 -mode integ -green
>
> /usr/local/WIEN2k/nmr_mpi: Relink
> `/opt/intel/oneapi/mpi/2021.1.1//lib/release/libmpi.so.12' with
> `/lib64/libm.so.6' for IFUNC symbol `modff'
> /usr/local/WIEN2k/nmr_mpi: Relink
> `/opt/intel/oneapi/mpi/2021.1.1//lib/release/libmpi.so.12' with
> `/lib64/libm.so.6' for IFUNC symbol `modff'
> /usr/local/WIEN2k/nmr_mpi: Relink
> `/opt/intel/oneapi/mpi/2021.1.1//lib/release/libmpi.so.12' with
> `/lib64/libm.so.6' for IFUNC symbol `modff'
> /usr/local/WIEN2k/nmr_mpi: Relink
> `/opt/intel/oneapi/mpi/2021.1.1//lib/release/libmpi.so.12' with
> `/lib64/libm.so.6' for IFUNC symbol `modff'
>
> ===================================================================================
>
> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
> = RANK 0 PID 391888 RUNNING AT localhost
> = KILLED BY SIGNAL: 11 (Segmentation fault)
> ===================================================================================
>
>
> ===================================================================================
>
> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
> = RANK 1 PID 391889 RUNNING AT localhost
> = KILLED BY SIGNAL: 11 (Segmentation fault)
> ===================================================================================
>
>
> ===================================================================================
>
> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
> = RANK 2 PID 391890 RUNNING AT localhost
> = KILLED BY SIGNAL: 11 (Segmentation fault)
> ===================================================================================
>
>
> ===================================================================================
>
> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
> = RANK 3 PID 391891 RUNNING AT localhost
> = KILLED BY SIGNAL: 11 (Segmentation fault)
> ===================================================================================
>
>
> stop
>
> /opt/fftw-3.3.10/mpi/.libs/mpi-bench: Relink
> `/opt/intel/oneapi/mpi/2021.1.1//lib/release/libmpi.so.12' with
> `/lib64/libm.so.6' for IFUNC symbol `modff'
>
> ===================================================================================
>
> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
> = RANK 0 PID 66889 RUNNING AT Marlowe
> = KILLED BY SIGNAL: 11 (Segmentation fault)
> ===================================================================================
>
> FAILED mpirun -np 1 /opt/fftw-3.3.10/mpi/mpi-bench:
>
>
> Am 30.08.2025 um 10:15 schrieb Michael Fechtelkord via Wien:
>> Hello Peter,
>>
>>
>> lapw0 crashes with the same error:
>>
>> /usr/local/WIEN2k/lapw0_mpi: Relink
>> `/opt/intel/oneapi/mpi/2021.13/lib/libmpi.so.12' with
>> `/lib64/libm.so.6' for IFUNC symbol `modff'
>> /usr/local/WIEN2k/lapw0_mpi: Relink
>> `/opt/intel/oneapi/mpi/2021.13/lib/libmpi.so.12' with
>> `/lib64/libm.so.6' for IFUNC symbol `modff'
>> /usr/local/WIEN2k/lapw0_mpi: Relink
>> `/opt/intel/oneapi/mpi/2021.13/lib/libmpi.so.12' with
>> `/lib64/libm.so.6' for IFUNC symbol `modff'
>> /usr/local/WIEN2k/lapw0_mpi: Relink
>> `/opt/intel/oneapi/mpi/2021.13/lib/libmpi.so.12' with
>> `/lib64/libm.so.6' for IFUNC symbol `modff'
>> [1] Exitcode 255 mpirun -np 4 -machinefile
>> .machine0 /usr/local/WIEN2k/lapw0_mpi lapw0.def >> .time00
>>
>> OMP_NUM_THREADS=1 does not change anything.
>>
>>
>> I will try the 2021.1.0 version of oneapi soon and get back with the
>> results soon.
>>
>>
>> Best regards,
>>
>> Michael
>>
>>
>> Am 29.08.2025 um 16:10 schrieb Peter Blaha:
>>> Just for some more info:
>>>
>>> Does this crash also occur in an mpirun of lapw0 ?? (would point to
>>> fftw)
>>>
>>> What is your OMP_NUM_THREADS variable ? Set it to one (also in
>>> .bashrc).
>>>
>>>
>>>
>>> Am 29.08.2025 um 12:54 schrieb Michael Fechtelkord via Wien:
>>>> Dear all,
>>>>
>>>>
>>>> I am back now to ifort 2021.13 because it crashes much less as the
>>>> new ifx compiler, also it produces omp errors using fftw3 during
>>>> compilation.
>>>>
>>>> All worked fine since the last Open Suse Tumbleweed version using
>>>> Kernel 6.16.3-1 (Opensuse Tumbleweed 202250827). Parallel Jobs
>>>> terminate when using "mpirun" with the following error. The same
>>>> error appears when I have compiled fftw 3.10 with gcc 15.1 and run
>>>> "make check" the check routine crashes when using mpirun with the
>>>> same error.
>>>>
>>>>
>>>> Does somebody know what that relink error means and how to solve
>>>> it? Is it maybe the opensuse libm.so.6 library (glibc version
>>>> 2.42.1) causing the error, because the new version does not contain
>>>> the symbol, libmpi is reqeusting?
>>>>
>>>>
>>>>
>>>> Best regards,
>>>>
>>>> Michael
>>>>
>>>> ---------------
>>>>
>>>> EXECUTING: mpirun -np 4 -machinefile .machine_nmrinteg
>>>> /usr/local/ WIEN2k/nmr_mpi -case MgF2 -mode integ -green
>>>>
>>>> /usr/local/WIEN2k/nmr_mpi: Relink
>>>> `/opt/intel/oneapi/mpi/2021.13/lib/ libmpi.so.12' with
>>>> `/lib64/libm.so.6' for IFUNC symbol `modff'
>>>> /usr/local/WIEN2k/nmr_mpi: Relink
>>>> `/opt/intel/oneapi/mpi/2021.13/lib/ libmpi.so.12' with
>>>> `/lib64/libm.so.6' for IFUNC symbol `modff'
>>>> /usr/local/WIEN2k/nmr_mpi: Relink
>>>> `/opt/intel/oneapi/mpi/2021.13/lib/ libmpi.so.12' with
>>>> `/lib64/libm.so.6' for IFUNC symbol `modff'
>>>> /usr/local/WIEN2k/nmr_mpi: Relink
>>>> `/opt/intel/oneapi/mpi/2021.13/lib/ libmpi.so.12' with
>>>> `/lib64/libm.so.6' for IFUNC symbol `modff'
>>>>
>>>> ===================================================================================
>>>>
>>>> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
>>>> = RANK 0 PID 396989 RUNNING AT localhost
>>>> = KILLED BY SIGNAL: 11 (Segmentation fault)
>>>> ===================================================================================
>>>>
>>>>
>>>> ===================================================================================
>>>>
>>>> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
>>>> = RANK 1 PID 396990 RUNNING AT localhost
>>>> = KILLED BY SIGNAL: 11 (Segmentation fault)
>>>> ===================================================================================
>>>>
>>>>
>>>> ===================================================================================
>>>>
>>>> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
>>>> = RANK 2 PID 396991 RUNNING AT localhost
>>>> = KILLED BY SIGNAL: 11 (Segmentation fault)
>>>> ===================================================================================
>>>>
>>>>
>>>> ===================================================================================
>>>>
>>>> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
>>>> = RANK 3 PID 396992 RUNNING AT localhost
>>>> = KILLED BY SIGNAL: 11 (Segmentation fault)
>>>> ===================================================================================
>>>>
>>>>
>>>> stop
>>>>
>>>> /opt/fftw-3.3.10/mpi/.libs/mpi-bench: Relink `/opt/intel/oneapi/
>>>> mpi/2021.13/lib/libmpi.so.12' with `/lib64/libm.so.6' for IFUNC
>>>> symbol `modff'
>>>>
>>>> ===================================================================================
>>>>
>>>> = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
>>>> = RANK 0 PID 183831 RUNNING AT planck
>>>> = KILLED BY SIGNAL: 11 (Segmentation fault)
>>>> ===================================================================================
>>>>
>>>> FAILED mpirun -np 1 /opt/fftw-3.3.10/mpi/mpi-bench:
>>>>
>>>>
>>>
More information about the Wien
mailing list