-
Intel The Parallel Universe N°48 - Avril 2022
Professional Fortran/C/C++ Linux x86
Caractéristiques des différentes licences en fonction des éditions PGI :
Le tableau suivant répertorie les fonctionnalités, les capacités et les options de licences pour les différents produits PGI
Feature | PGI Community Edition |
PGI Professional Edition Node-locked |
PGI Professional Edition Network floating |
---|---|---|---|
Licensing | |||
Type | 1 year for each release | Perpetual | Perpetual |
Releases per Year | 1–2 | 6–9 | 6–9 |
Archive Release Access |
|
|
|
Restricted Content Access | With registration |
|
|
Price | Gratuit | Payant | Payant |
Language Options | |||
Fortran & C/C++ |
|
|
|
Fortran only |
|
||
Operating Systems | |||
Linux x86-64 |
|
|
|
Linux/OpenPOWER |
|
|
|
macOS |
|
||
Windows |
|
|
|
MPI Processes | |||
Debugging with PGDBG® | 16 local | 16 local | 256 local or remote |
Support Options | |||
User Forums |
|
|
|
E-mail Support |
|
|
|
Premier Service Option |
|
|
Note: PGDBG debugger and PGPROF profiler support up to 64 OpenMP threads.
Principales différences entre PGI "Professional Edition" et "Community Edition":
- PGI Professional node-locked—For deployment on a single node-locked system. This license allows up to 16 MPI processes to be debugged using PGDBG as in mpirun -np 16 -dbg=pgdbg foo. All 16 processes must be running on the same system as PGDBG.
-
PGI Professional network floating—For deployment on any number of networked nodes. This license allows for up to 256 MPI processes to be debugged using PGDBG and the processes can run on different cluster nodes as designated by the machines.LINUX file but only if the PGI daemons are installed.
Note that PGI Professional network floating includes daemons for installation on cluster slave nodes that PGDBG uses for cluster debugging. The daemons are not included in the PGI Professional node-locked installation package.
Principales fonctionnalités de PGI 2018
SPEC ACCEL 1.2 Performance
|
Accelère les applications HPC avec les GPUs Tesla V100PGI OpenACC et CUDA Fortran prennent désormais en charge CUDA 9.1 fonctionnant sur GPU Tesla Volta. Tesla V100 offre plus de bande passante mémoire, plus de multiprocesseurs de streaming, NVLink de prochaine génération et de nouvelles fonctionnalités de microarchitecture qui s'additionnent pour améliorer les performances et la programmabilité. Pour les programmeurs OpenACC et CUDA Fortran, Tesla V100 offre une prise en charge matérielle et des performances améliorées pour les fonctions de mémoire unifiée CUDA sur les systèmes basés sur les processeurs x86-64 et OpenPOWER. Avec PGI 2018, vous bénéficiez du meilleur des deux mondes: des performances CPU de classe mondiale et une prise en charge complète du GPU.. |
Support des CPUs les plus récentsLa performance des processeurs multicœurs reste l'une des principales forces des compilateurs PGI, qui prennent désormais en charge la dernière génération de processeurs HPC, notamment Intel Skylake, IBM POWER9 et AMD Zen. Les compilateurs PGI Fortran 2003, C11 et C ++ 14 offrent une vectorisation SIMD de pointe et bénéficient de fonctions intrinsèques numériques simples et doubles optimisées sur Linux x86, Linux OpenPOWER et macOS. |
SPEC CPU 2017 FP Speed
|
|
Support complet de OpenACC 2.6Tous les compilateurs PGI prennent désormais en charge les dernières fonctionnalités OpenACC sur les GPU Tesla et les processeurs multicœurs. Les nouvelles fonctionnalités d'OpenACC 2.6 incluent les directives de copie en profondeur, la construction en série, la clause if_present dans la construction host_data, la clause no_create data, les clauses attach / detach, les routines API acc_get_property et le support amélioré des arguments optionnels Fortran. Les autres fonctionnalités OpenACC ajoutées ou améliorées incluent les améliorations de la directive de cache et la prise en charge des tableaux constants nommés dans les modules Fortran. |
OpenACC pour la Mémoire unifiée CUDALes compilateurs PGI tirent parti des fonctionnalités matérielles Pascal et Volta GPU, de NVLink et de la mémoire unifiée CUDA pour simplifier la programmation OpenACC sur les serveurs à processeurs accélérés par GPU x86-64 et OpenPOWER. Lorsque les données allouables OpenACC sont placées dans la mémoire unifiée CUDA, aucun mouvement explicite de données ou de données n'est nécessaire. Cela simplifie l'accélération GPU des applications qui utilisent largement les données allouables et vous permet de vous concentrer sur la parallélisation et l'évolutivité de vos algorithmes. |
Réduit l'effort de développement
|
|
Support AVX-512Les instructions de la CPU Intel AVX-512, disponibles sur les processeurs Skylake de dernière génération, permettent de multiplier par deux le nombre d'opérations en virgule flottante par rapport aux instructions AVD SIMD de la génération précédente. Avec une largeur de 512 bits, AVX-512 double la largeur du registre et le nombre total de registres, et peut aider à améliorer les performances des applications HPC |
Nouvelles fonctionnalités de C ++ 17La version 2018 du compilateur PGI C ++ introduit un support partiel pour le standard C ++ 17 lors de la compilation avec --c ++ 17 ou -std = c ++ 17. Les fonctionnalités de langage C ++ 17 supportées sont disponibles sur toutes les versions de macOS supportées et sur les systèmes Linux avec GCC 5 ou plus récent. Les nouvelles fonctionnalités du langage C ++ incluent des instructions conditionnelles à la compilation (constexpr if), des liaisons structurées, des instructions de sélection avec des initialiseurs, des expressions de fold, des variables inline, constexpr lambdas, et lambda capture de * this by value. |
|
|
OpenMP 4.5 pour les processeurs multicœursPrécédemment disponible avec les compilateurs PGI pour Linux / OpenPOWER, PGI 2018 introduit la prise en charge de la syntaxe et des fonctions OpenMP 4.5 dans les compilateurs PGI Fortran, C et C ++ sous Linux / x86-64. Vous pouvez maintenant utiliser PGI pour compiler des programmes OpenMP 4.5 pour une exécution en parallèle sur tous les cœurs d'une CPU ou d'un serveur multicœur. Les régions TARGET sont implémentées avec la prise en charge par défaut de l'hôte multicœur comme cible, et les boucles PARALLEL et DISTRIBUTE sont parallélisées sur tous les threads OpenMP. |
PGI Unified Binary pour Tesla et MulticoreUtilisez OpenACC pour créer des applications pour l'accélération GPU et l'exécution parallèle sur tous les cœurs d'un serveur multicœur. Lorsque vous exécutez l'application sur un système compatible GPU, les régions OpenACC se déchargent et s'exécutent sur le GPU. Lorsque le même exécutable d'application est exécuté sur un système sans GPU, les régions OpenACC sont exécutées en parallèle sur tous les cœurs du système. Si vous développez des applications commerciales ou de production, vous pouvez maintenant accélérer votre code avec OpenACC et déployer un seul binaire utilisable sur n'importe quel système, avec ou sans GPU |
PGI Unified Binary Performance
|
|
Utilisation des Lambdas C ++ 14 avec Capture dans les régions OpenACC
Les expressions lambda C ++ fournissent un moyen pratique de définir des objets de fonction anonymes à l'emplacement où ils sont appelés ou passés en arguments. Le spécificateur de type automatique peut être appliqué aux paramètres lambda pour créer une expression lambda polymorphe. Avec les compilateurs PGI, vous pouvez utiliser lambdas dans les régions de calcul OpenACC de vos programmes C ++. L'utilisation de lambdas avec OpenACC est utile pour diverses raisons. Un exemple est de générer une génération de code personnalisée pour différents modèles de programmation ou plates-formes. C ++ 14 a ouvert des portes pour de plus en plus de cas d'utilisation lambda, en particulier pour les lambdas polymorphes, et toutes ces fonctionnalités sont maintenant utilisables dans vos programmes OpenACC. |
Générateur de code LLVM / x86-64La version 2018 inclut un générateur de code LLVM pour x86-64 entièrement intégré aux compilateurs PGI Fortran, C et C ++, incluant le support pour OpenACC et CUDA Fortran. Cette version initiale introduit la prise en charge des fonctionnalités OpenMP 4.5 ciblant les processeurs multicœurs x86-64 et améliore les performances de nombreuses applications C ++. Inclus dans le package d'installation de PGI Linux, les composants LLVM s'installent avec les compilateurs PGI par défaut et sont appelés avec une simple option de ligne de commande. |
|
|
Caractéristiques de profilage amélioréesLa nouvelle vue détaillée du processeur affiche une répartition du temps passé sur le processeur pour chaque thread. Trois options d'arborescence d'appel vous permettent de profiler en fonction de l'appelant, de l'appelé ou du numéro de fichier et de ligne. Afficher le temps pour tous les threads ensemble ou individuellement, trier rapidement les événements par min ou max time, et plus encore. Les autres nouvelles fonctionnalités comprennent une option permettant d'ajuster la fréquence d'échantillonnage du compteur de programme et un affichage amélioré montrant la version NVLink de la topologie NVLink. |
Nom | Professional Fortran/C/C++ Linux x86 |
---|---|
Réf. | 018AL-NL-C-999 |
Editeur | PGI |
Système d'exploitation | Linux |
Version | PGI 2018 |
Licence ESD | Livraison électronique, envoi par email des clés de licence Electronic Software Delivery (ESD) |
Media | Envoi par email des liens d'activation et de téléchargement |
Délai et livraison | Email 24-48h |