Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
6981 Discussions

f90 fortran program with mkl fft's, omp threads, and asynch fortran i/o

happyIntelCamper
Beginner
339 Views
How do you get MKL FFT threads to work with OMP threads in a fortran 90 program using
asynchronous fortran i/o. Such a program seg fault's out of OMP threads. Apparently the threading
models collide.

0 Kudos
1 Solution
TimP
Honored Contributor III
339 Views
How do you get MKL FFT threads to work with OMP threads in a fortran 90 program using
asynchronous fortran i/o. Such a program seg fault's out of OMP threads. Apparently the threading
models collide.

MKL threads are OpenMP threads. There is no collision when using a single OpenMP library (either libguide or libiomp5, dynamic linked, or static linked at final link step). Note that libiomp5 works as a substitute for the Microsoft or gomp OpenMP libraries, but the latter libraries don't work as a substitute for MKL threaded model.
As to the asynchronous I/O, I suppose there is a possible problem with certain brands of compilers; a more specific example would be required. If your MKL and Intel compiler versions are widely disparate, you must use the more recent Intel OpenMP library of those provided by MKL and ifort.

View solution in original post

0 Kudos
2 Replies
Dmitry_B_Intel
Employee
339 Views

Hi,

MKL FFT dosn't do lots of i/o, so the problem may come not from FFT. Could you post a small example?

Thanks
Dima
0 Kudos
TimP
Honored Contributor III
340 Views
How do you get MKL FFT threads to work with OMP threads in a fortran 90 program using
asynchronous fortran i/o. Such a program seg fault's out of OMP threads. Apparently the threading
models collide.

MKL threads are OpenMP threads. There is no collision when using a single OpenMP library (either libguide or libiomp5, dynamic linked, or static linked at final link step). Note that libiomp5 works as a substitute for the Microsoft or gomp OpenMP libraries, but the latter libraries don't work as a substitute for MKL threaded model.
As to the asynchronous I/O, I suppose there is a possible problem with certain brands of compilers; a more specific example would be required. If your MKL and Intel compiler versions are widely disparate, you must use the more recent Intel OpenMP library of those provided by MKL and ifort.
0 Kudos
Reply