Bull NovaScale Guide D'installation page 41

Table des Matières

Publicité

-
Positionner chaque événement au type désiré ( cf fpapi.h)
numevents= 2
events(1)=PAPI_FP_INS
events(2)=PAPI_TOT_CYC
-
Démarrer les compteurs et tester le compte-rendu
call PAPIf_start_counters(events, numevents, ierr)
if ( ierr .NE. PAPI_OK ) then
call PAPIF_perror(ierr,errorstring,PAPI_MAX_STR_LEN)
print *, errorstring
end if
-
Faire un début de traitement, puis lire et réinitialiser les compteurs sans les
arrêter
call PAPIf_read_counters(values,numevents,ierr)
if ( ierr .NE. PAPI_OK ) then
call PAPIF_perror(ierr,errorstring,PAPI_MAX_STR_LEN)
print *, errorstring
end if
-
On peut aussi accumuler les compteurs en utilisant la routine
PAPIf_accum_counters(values,numevents,ierr)
-
Continuer le traitement puis arrêter les compteurs:
call PAPIf_stop_counters(values, numevents, ierr)
if ( ierr .NE. PAPI_OK ) then
call PAPIF_perror(ierr,errorstring,PAPI_MAX_STR_LEN)
print *,errorstring
end if
c)
Il permet de gérer des évènements prédéfinis (au nombre de 100 dans PAPI!)
aussi bien que des évènements complètement natifs, définis par leur codage
dans les registres.
-
Il faut commencer par initialiser la library par
Description de l'environnement logiciel Linux HPC
L'interface détaillé "low-level"( thread safe)
2-27

Publicité

Table des Matières
loading

Table des Matières