Vtune
Introduction
VTune est un produit d'Intel pour analyser la performance des systèmes et des applications OpenMP et MPI.
Module logiciel
Pour charger le module sur une de nos grappes, lancez
[name@server ~]$ module load vtune
Changement de noms
Il sera question ici de Intel® VTune™ Amplifier, dont le nom a été changé pour Intel® VTune™ Profiler dans la documentation des plus récentes versions. Aussi, les commandes amplxe-cl et amplxe-gui ont été renommées vtune et vtune-gui respectivement pour la ligne de commande et les outils graphiques. Les versions des modules VTune offertes pour nos grappes sont antérieures au changement de ces noms. Le contenu de cette page sera mis à jour quand le module sera mis à jour dans l'environnement par défaut StdEnv/2020. Pour plus d'information, voyez cette page du guide de l'utilisateur.
Types d'analyses
To collect analysis information run:
[name@server ~]$ amplxe-cl -collect <analysis-type> <target_exe> <exe_arguments>
where <analysis-type> should be replaced by one of the available analysis, e.g. hotspots, and <target_exe> is the path to the executable you would like to analyze. It is recommended to compile your executable with the "-g" option and to use the same optimization level as normal so as to obtain accurate results. A listing of version specific argument options and several usage examples maybe displayed on the command line by running amplxe-cl -help
, after loading the vtune module. Complete downloadable documentation for Parallel Studio XE (including VTune) for all recent versions can be found here. The latest version of the Intel VTune Profiler User Guide may be found here.
Créer un rapport
Pour créer un rapport, lancez
[name@server ~]$ amplxe-cl -report <report-type>
où <report-type> est le type de rapport à générer (hotspots). Voyez aussi la page Generate Command Line Reports.
Exemple de matrice
Pour analyser et générer le projet Intel Matrix Sample Project en ligne de commande avec 4 cœurs :
salloc --time=1:00:00 --cpus-per-task=4 --ntasks=1 --mem=16G --account=def-yours module load StdEnv/2016.4 *OR* StdEnv/2018.3 module load intel/2019.3 (optional) module load vtune/2019.3 cp -a $EBROOTVTUNE/vtune_amplifier/samples/en/C++/matrix . cd matrix/linux make icc amplxe-cl -collect hotspots ../matrix amplxe-cl -report summary
La plus récente version de matrix_multiply (qui construit avec cmake) se trouve ici.
Mode graphique
Intel Matrix Sample Project peut être exécuté en mode graphique, comme décrit ici [1]. Pour utiliser VTune dans VNC voyez les directives ci-dessous. Le mode graphique peut être utile pour générer des configurations en commande de ligne, comme décrit ici Running VTune graphically can be useful to generate command line configurations as discussed in [2].
Nœuds des grappes
- Connectez-vous à un nœud de calcul ou à un nœud de connexion avec TigerVNC;
module load StdEnv/2016.4 *OR* StdEnv/2018.3
module load intel/2019.3
(optional)module load vtune/2019.3
amplxe-gui
Nœuds VDI
- Connectez-vous à gra-vid avec TigerVNC;
module load CcEnv StdEnv/2016.4 *OR* StdEnv/2018.3
module load intel/2019.3
(optional)module load vtune/2019.3
amplxe-gui
MPI example
First, load the latest VTune module.
module load StdEnv/2020 module load vtune
Then compile your MPI program as you usually would and run it inside a job or in an interactive session started by a salloc command using:
srun aps your_mpi_program.x
After the program finishes, the profiling data will be stored in a directory called aps_result_YYYYMMDD where YYYYMMDD is the current date.
There is a lot of information you can extract from that data. To get the basic summary report of your program's performance, run:
aps-report -D aps_result_YYYYMMDD
where you would replace YYYYMMDD to match the actual directory that has been created. This command creates an HTML file, which can be copied to your own computer and viewed in a browser. The report will clearly identify performance issues that are affecting your code.