Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Black Belt
15 Views

17.0 update 1 coarrays on Windows 10 x64

I cannot successfully run any coarray program using the Intel 64 target compiler on 17.0 update one with VS2015.  Even the simplest program (just an END statement) results in an indefinite deadlock in WaitForSingleObjectEx across all processes created as part of running the coarray program. 

17.0 initial release works, 17.0 update one IA-32 works.

The call chain from the executable to the WaitForSingleObjectEx in the call include libicaf.dll (17.0-001) and impimt.dll (2017.00.1.0), that were built in October, so I presume they are from update one.  The call stack for the primary process has gone via for_rtl_ICAF_LAUNCH, while the secondary processes have gone via main then for_rtl_init. 

I am stumped.
 

0 Kudos
7 Replies
Highlighted
15 Views

How very interesting. I can reproduce this - we'll investigate.

0 Kudos
Highlighted
15 Views

Escalated as DPD200416079. So far, I haven't been able to figure out which piece changing triggers the problem. I can take a 17.0.1-built EXE and run it in a 17.0.0 build environment, and it works fine. But if I add the paths to the Fortran and MPI DLLs from 17.0.0 to a 17.0.1 environment, it hangs. We'll get to the bottom of this soon.

0 Kudos
Highlighted
15 Views

Steve,

Is there a similar issue with the Linux distribution?
 

Jim Dempsey

0 Kudos
Highlighted
15 Views

Um... yes, it would seem!

0 Kudos
Highlighted
15 Views

On Windows, at least, if you replace the impimt.dll in the 17.0.1 folder (C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.1.143\windows\mpi\intel64\bin) with the one from 17.0.0, it fixes the hang issue. You'll also want to replace the one in C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64_win\mpirt

I am extremely puzzled that we didn't catch this during our usual product verification testing and am asking some pointed questions right now...

The same general workaround probably works on Linux as well (it would be a .so file).

0 Kudos
Highlighted
Employee
15 Views

A fixed library is targeted for Intel MPI 2017.0.2 and for the Intel Fortran Compiler 17.0.2 in the appropriate editions of Intel Parallel Studio XE 2017 update 2.

It will be some weeks before it's available for download, though. In the meantime, you should be able to set the environment variable

     I_MPI_COLL_INTRANODE=pt2pt

as a workaround.

0 Kudos
Highlighted
Black Belt Retired Employee
15 Views

Update 2 fixed this problem for me.

0 Kudos