Aller au contenu principal

Intel Trace Analyzer and Collector (ITAC)

Nous vous invitons à consulter les bonnes pratiques pour le profilage de code pour des conseils généraux sur l'analyse de performance sur Jean Zay.

Description​

ITAC (Intel Trace Analyzer Collector) est un outil graphique faisant partie de la suite Intel Parallel Studio XE et permettant de comprendre le comportement MPI d'un code.

Versions installĂ©es​

  • Plusieurs versions de ITAC sont accessibles suivant les versions d'Intel Parallel Studio XE installĂ©es sur la machine.

Utilisation​

La commande module permet d'accéder aux diverses versions de ITAC.

Pour afficher les diverses versions disponibles, vous avez deux possibilités :

  • via les modulefiles correspondants :
$ module av intel-itac
intel-itac/2018.1(18.0.1) intel-itac/2019.2(19.0.2) intel-itac/2019.5(19.0.5) intel-itac/2020.1
intel-itac/2018.4(18.0.5) intel-itac/2019.4(19.0.4) intel-itac/2020.0 intel-itac/2020.2
  • ou via les environnements Intel :
$ module av intel-all
intel-all/2018.1(18.0.1) intel-all/2019.2(19.0.2) intel-all/2019.5 (19.0.5) intel-all/2020.1
intel-all/2018.5(18.0.5) intel-all/2019.4(19.0.4) intel-all/2020.0 intel-all/2020.2

Pour utiliser, par exemple, la version 2020.2 de ITAC, vous pouvez utiliser :

  • soit le modulefile correspondant :
$ module load intel-itac/2020.2
  • soit l'environnement Intel correspondant :
$ module load intel-all/2020.2
INFO

Notez que les modules intel-all/XX.Y.Z contiennent les environnements Intel complets avec les compilateurs, la bibliothÚque mathématique MKL, la bibliothÚque MPI ainsi que les outils d'analyse des codes.

Une fois le module adéquat chargé, l'utilisation de ITAC se fait en trois étapes :

  • Recompilation de votre programme ;
  • ExĂ©cution de votre programme ;
  • Visualisation/Analyse des rĂ©sultats avec l'interface graphique.

Compilation​

Il faut ajouter l'option -tcollect lors de la compilation avec le compilateur Intel.

$ module load intel-itac/2020.2
$ mpiifort ... source.f90 -tcollect -o my_exe

$ mpiicc ... source.c -tcollect -o my_exe

$ mpiicpc ... source.C -tcollect -o my_exe

ExĂ©cution​

L'exĂ©cution s'effectue, soit de maniĂšre interactive soit en batch, via la commande srun et avec le mĂȘme environnement Intel que celui utilisĂ© pour faire la compilation :

$ module load intel-itac/2020.2
$ srun ... my_exe

Note : l'exécution génÚre un fichier d'analyse dont le nom est composé du nom de l'exécutable et du suffixe .stf (pour cet exemple my_exe.stf).

Attention

L'environnement Intel utilisĂ© Ă  cette Ă©tape doit ĂȘtre le mĂȘme que celui utilisĂ© pour faire la compilation.

Visualisation/analyse des rĂ©sultats​

L'analyse des résultats se fait à l'aide de l'interface graphique (GUI) traceanalyzer en lui indiquant le fichier d'analyse généré lors de l'exécution du code.

Pour utiliser la mĂȘme version 2020.2 que celle utilisĂ©e pour la compilation et l'exĂ©cution, vous devez utiliser les commandes suivantes :

$ module load intel-itac/2020.2
$ traceanalyzer my_exe.stf
Attention

L'environnement Intel utilisĂ© Ă  cette Ă©tape doit ĂȘtre le mĂȘme que celui utilisĂ© pour faire l'Ă©chantillonnage et la compilation.

Documentation​