Slow inter-image data transfer using coarrays

Slow inter-image data transfer using coarrays

Bild des Benutzers Chris G.

I am using coarrays with the Intel Fortran compiler (2011) with Windows 7, 64 bit. Transferring large matrices (200x2000) between images is taking several (>5) seconds. Is this a well known phenomenon? Is the data transrerred a byte at a time? Simple code to emulate this problem is enclosed.

Chris

AnhangGröße
Herunterladen average.f901023 Bytes
4 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.
Bild des Benutzers Steve Lionel (Intel)

We are working on improving the performance of coarrays. Some of this work is included in Update 1 to the 2013 edition, but requires adding the undocumented command line option /switch:coarray_opts It will be the default in a future version. When I used this, the time taken for your program on 8 images dropped from 97 seconds to 25.4 seconds.

Steve
Bild des Benutzers Chris G.

Thanks, as always. I have ordered the 2013 version and it will arrive soon. Is Update 1 available to download?

Chris

Bild des Benutzers Steve Lionel (Intel)

Yes, Update 1 was released a few weeks ago. Once you get your serial number you can register it at https://registrationcenter.intel.com/ and download the latest version.

Steve

Melden Sie sich an, um einen Kommentar zu hinterlassen.