source: lmdz_wrf/WRFV3/lmdz/vampir.F90 @ 1

Last change on this file since 1 was 1, checked in by lfita, 10 years ago
  • -- --- Opening of the WRF+LMDZ coupling repository --- -- -

WRF: version v3.3
LMDZ: version v1818

More details in:

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