Sortie de PGI 2018.10

PGI est une société (maintenant filiale de NVIDIA) spécialisée dans le développement de compilateurs pour le calcul de haute performance. Leur premier produit est toujours le plus connu : un compilateur C et Fortran (maintenant, C++ s’est ajouté à la liste). Le marché visé est celui des superordinateurs, mais aussi de toute application du calcul à haute performance, c’est-à-dire avec un haut degré de parallélisme.

La version 2018.10 de la suite de compilateurs est maintenant sortie et apporte une série de nouveautés intéressantes. Du côté matériel, le compilateur peut cibler les cartes graphiques Tesla V100, un accélérateur pas spécialement nouveau ; PGI rapproche le code écrit avec la norme OpenACC (C++ et Fortran) ainsi que CUDA en Fortran de ce matériel, tant pour des processeurs x86 qu’OpenPOWER.

Pour faciliter le débogage de code, la version précédente de PGI (2018.7) a apporté une fonctionnalité d’autocomparaison : le même code OpenACC est lancé sur le CPU et sur le GPU et les résultats numériques sont comparés (en considérant que le CPU donne toujours des résultats exacts). La nouvelle version, en plus de retravailler le format de sortie de cette option pour le rendre plus lisible, permet de corriger les résultats défaillants en cas d’erreur (patch-and-continue) : les données sont alors copiées depuis le CPU vers le GPU et l’exécution continue avec les nouvelles données. Ainsi, si la suite du code émet à nouveau des avertissements, cela signifie qu’elle est également fausse.

Au niveau des langages, les versions du compilateur livrées en 2018 ont apporté les dernières évolutions : les sous-modules de Fortran 2008, l’assignation de valeurs à des variables allouables qui respecte la sémantique de Fortran 2003 (au lieu de Fortran 1995), OpenACC 2.6 complètement implémenté (et les fonctions anonymes peuvent être utilisées conjointement), C++17 en bonne partie disponible. La version 2018.10 ajoute la construction DO CONCURRENT de Fortran 2008, pour rattraper le retard accumulé ces dernières années.

Source : notes de version.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.