Slow inter-image data transfer using coarrays

Slow inter-image data transfer using coarrays

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

Fichier attachéTaille
Télécharger average.f901023 octets
4 posts / 0 nouveau(x)
Dernière contribution
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.
Portrait de 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

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

Chris

Portrait de 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

Connectez-vous pour laisser un commentaire.