- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I have read the post by Martyn Corden: https://software.intel.com/en-us/articles/threading-fortran-applications-for-parallel-performance-on-multi-core-systems?language=es on thread safe Fortran.
There he writes that not all native Fortran libraries are thread safe, and that the thread safe library libifcoremt will be linked automatically when compiled with the /Qopenmp flag.
At my computer I do not have any libifcoremt.dll, only a .lib file.
I have three questions:
1. How may I distribute the thread safe version of libifcore into our installations?
2. Are there more assemblies or libraries that are not thread safe?
3. Are the libifcoremt.lib and other thread safe libraries included in some assemblies that I may distribute?
Best regards, Anna
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Libraries from Microsoft and Intel with names such as libxxyymt.lib are static, multi-threaded libraries. When you link to one or more of these libraries, the code sections from the library objects that are needed are linked into your EXE, which as a result can become quite big. There is no corresponding DLL, nor is one needed.
If you use libraries with names such as libxxyymd.lib, which are dynamic import libraries, the actual code is contained in companion DLLs.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
My understanding is all recent Intel compilers and all currently supported visual studio versions provide thread safe libraries so this no longer should be a concern.
For linking a dll there is a small import lib but this question is distinct from thread safety.
As mecej4 hinted, the lib names with md and mt assert thread safety.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We provide a installer for the compiler redistributables in both executable form and in "merge module" form for installers. See here. The merge modules are in the "redist" folder under your installation of Intel Visual Fortran.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page