Extrae API
Issue #80
new
program jg
#ifdef _EXTRAE
use, INTRINSIC :: ISO_C_BINDING, ONLY: C_CHAR,C_NULL_CHAR,C_PTR,C_LOC
use extrae_module
#endif
implicit none
#ifdef _EXTRAE
INTEGER(KIND=8), PARAMETER, DIMENSION(2) :: extrae_values = (/ 0, 1 /)
CHARACTER(KIND=C_CHAR,LEN=6), DIMENSION(2), TARGET :: &
extrae_descr_values
TYPE(C_PTR), DIMENSION(2) :: extrae_descr_values_ptrs
CHARACTER(KIND=C_CHAR,LEN=20) :: extrae_evt_desc = &
"jgLoop1" // C_NULL_CHAR
!call extrae_version(extrae_majorv, extrae_minorv, extrae_revisionv)
!print *, "EXTRAE version:", extrae_majorv, extrae_minorv, extrae_revisionv
extrae_descr_values(1) = "End " // C_NULL_CHAR
extrae_descr_values(2) = "Begin" // C_NULL_CHAR
extrae_descr_values_ptrs(1) = C_LOC(extrae_descr_values(1))
extrae_descr_values_ptrs(2) = C_LOC(extrae_descr_values(2))
#endif
call MPI_INIT(ierr)
#ifdef _EXTRAE
call extrae_define_event_type (1000, extrae_evt_desc, 2, &
extrae_values, extrae_descr_values_ptrs)
call extrae_shutdown()
#endif
...
!.....Start iterations.
do l=iterini,nnl
#ifdef _EXTRAE
!if ( (l==2) .or. (l==5) .or. (l==9) ) then
if ( (l==200) .or. (l==500) .or. (l==900) ) then
call extrae_restart()
call extrae_event(1000, int(l,8))
endif
#endif
...
#ifdef _EXTRAE
if ( (l==210) .or. (l==510) .or. (l==910) ) then
call extrae_event(1000, 0_8)
call extrae_shutdown()
endif
#endif
enddo
#ifdef _EXTRAE
call extrae_fini()
#endif
call MPI_FINALIZE(ierr)
end program jg
Comments (1)
-
reporter - Log in to comment