New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
mpitrace.F90 in branches/nemo_v3_3_beta/NEMOGCM/EXTERNAL/XMLIO_SERVER/src/IOSERVER – NEMO

source: branches/nemo_v3_3_beta/NEMOGCM/EXTERNAL/XMLIO_SERVER/src/IOSERVER/mpitrace.F90 @ 2281

Last change on this file since 2281 was 2281, checked in by smasson, 14 years ago

set proper svn properties to all files...

  • Property svn:keywords set to Id
File size: 2.1 KB
Line 
1module mpitrace
2  INTEGER,parameter :: VTcheck_buffer=91
3  INTEGER,parameter :: VTprocess_event=92
4  INTEGER,parameter :: VTbuffer_full=93
5 
6  INTEGER,parameter :: nb_inst=7
7  INTEGER :: MPE_begin(nb_inst)
8  INTEGER :: MPE_end(nb_inst)
9 
10contains
11
12  subroutine InitVampir
13    implicit none
14
15#ifdef USE_VT
16    include 'VT.inc'
17    integer :: ierr
18   
19    call VTSYMDEF(VTcheck_buffer,"check_buffer","check_buffer",ierr)
20    call VTSYMDEF(VTprocess_event,"process_event","process_event",ierr)
21    call VTSYMDEF(VTbuffer_full,"buffer_full","buffer_full",ierr)
22    PRINT *,'definition des symbole VT'
23#endif
24
25#ifdef USE_MPE
26    include 'mpe_logf.h' 
27    integer :: ierr,i
28   
29    DO i=1,nb_inst
30      ierr = MPE_Log_get_state_eventIDs( MPE_begin(i), MPE_end(i) )
31    ENDDO
32   
33    ierr = MPE_Describe_state( MPE_begin(VTcaldyn), MPE_end(VTcaldyn),"caldyn", "yellow" )
34    ierr = MPE_Describe_state( MPE_begin(VTintegre), MPE_end(VTintegre),"integre", "blue" )
35    ierr = MPE_Describe_state( MPE_begin(VTadvection), MPE_end(VTadvection),"advection", "green" )
36    ierr = MPE_Describe_state( MPE_begin(VTdissipation), MPE_end(VTdissipation),"dissipation", "ivory" )
37    ierr = MPE_Describe_state( MPE_begin(VThallo), MPE_end(VThallo),"hallo", "orange" )
38    ierr = MPE_Describe_state( MPE_begin(VTphysiq), MPE_end(VTphysiq),"physiq", "purple" )
39    ierr = MPE_Describe_state( MPE_begin(VTinca), MPE_end(VTinca),"inca", "LightBlue" )
40#endif     
41  end subroutine InitVampir
42
43  subroutine VTb(number)
44    implicit none
45    INTEGER :: number
46#ifdef USE_VT   
47    include 'VT.inc'
48    integer :: ierr
49   
50    call VTBEGIN(number,ierr)
51#endif 
52#ifdef USE_MPE
53    include 'mpe_logf.h' 
54    integer :: ierr,i
55    ierr = MPE_Log_event( MPE_begin(number), 0, '' )
56#endif
57
58  end subroutine VTb
59
60  subroutine VTe(number)
61    implicit none
62    INTEGER :: Number
63#ifdef USE_VT   
64    include 'VT.inc'
65    integer :: ierr
66   
67    call VTEND(number,ierr)
68#endif   
69
70#ifdef USE_MPE
71    include 'mpe_logf.h' 
72    integer :: ierr,i
73    ierr = MPE_Log_event( MPE_end(number), 0, '' )
74#endif
75
76  end subroutine VTe
77 
78end module mpitrace
Note: See TracBrowser for help on using the repository browser.