Developpez.com - Rubrique HPC

Le Club des Développeurs et IT Pro

Sortie d'Intel OneAPI 2023.0 : le nouveau compilateur Fortran ifx est prêt à remplacer ifort

Il est 18 % plus rapide et implémente entièrement Fortran 2018

Le 2022-12-23 11:43:06, par vmagnin, Membre éprouvé
Intel vient de sortir ses outils de développement oneAPI 2023, librement téléchargeables. Du côté des compilateurs Fortran, le compilateur classique ifort passe en version 2021.8.0. Mais comme sa numérotation l'indique, c'est du côté du nouveau compilateur ifx 2023.0.0, basé sur LLVM et destiné à remplacer ifort, que les choses se passent désormais.

Après cinq années d'efforts, ifx possède désormais les mêmes fonctionnalités qu'ifort, il implémente intégralement la norme Fortran 2018 et permet de délester les boucles DO CONCURRENT vers le GPU. Le support d'OpenMP 5.0 et 5.1 est amélioré. De plus, la compilation est 18 % plus rapide qu'avec ifort.

Vous trouverez des informations détaillées sur cette étape majeure dans ce billet de Ron Green (ingénieur chez Intel) : The Next Chapter for the Intel® Fortran Compiler. On y apprend en particulier que l'équipe de développement a déjà commencé à travailler sur l'implémentation de certaines nouveautés de la future norme Fortran 2023, attendue pour l'automne prochain.

Intel OneAPI 2023.0
  Discussion forum
2 commentaires
  • vmagnin
    Membre éprouvé
    Effectivement, les deux projets Intel ifx et le nouveau Flang (NVidia) sont totalement indépendants l'un de l'autre. Chacun vise probablement à optimiser en particulier le code sur ses propres processeurs (CPU ou GPU). A noter que le compilateur Intel est totalement opérationnel alors que le nouveau Flang basé sur LLVM est encore loin de l'être. La dernière fois que je l'ai essayé, il appelait encore GFortran en backend pour la compilation et c'est probablement toujours le cas.

    A noter qu'un troisième projet de compilateur Fortran basé sur LLVM est en cours de développement : LFortran. Il est considéré actuellement comme étant entre version alpha et beta. Un de ses objectifs est de permettre de coder en Fortran de manière interactive, par exemple avec Jupyter. Il dispose de plusieurs backends, lui permettant entre autres de générer du code C++ et du code WASM. Son auteur principal, Ondřej Čertík, a quitté le Los Alamos National Laboratory (LANL) pour rejoindre GSI Technology en tant que développeur de compilateurs à temps plein. Il continue d’y développer le compilateur interactif LFortran ainsi que LPython, un nouveau frontal Python. Ils prendront entre autres en charge leurs « processeurs » Gemini Associative Processing Unit (APU), des circuits de mémoire capables d’effectuer en interne des traitements sur les données stockées.
  • dourouc05
    Responsable Qt & Livres
    Quel est le lien entre le nouveau compilateur et Flang (un compilateur Fortran libre et intégré dans la suite LLVM) ? Ou n'y a-t-il aucun partage entre les deux ? De ce que j'en comprends, les deux projets sont indépendants. Garder le même analyseur syntaxique entre ifx et ifort a du sens pour éviter de perturber les clients, mais quid des optimisations, par exemple ? Y a-t-il des raisons techniques pour l'éviter ou est-ce plutôt des relents de concurrence entre NVIDIA et Intel ?