Changeset 145


Ignore:
Timestamp:
02/28/13 17:08:54 (11 years ago)
Author:
ymipsl
Message:

Add vampirtrace management

YM

Location:
codes/icosagcm/trunk/src
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • codes/icosagcm/trunk/src/advect_tracer.f90

    r138 r145  
    3939    USE advect_mod 
    4040    USE mpipara 
     41    USE trace 
    4142    IMPLICIT NONE 
    42  
     43     
    4344    TYPE(t_field),POINTER :: f_hfluxt(:)   ! time-integrated horizontal mass flux 
    4445    TYPE(t_field),POINTER :: f_wfluxt(:)   ! time-integrated vertical mass flux 
     
    5152    REAL(rstd),POINTER :: rhodz(:,:), u(:,:)  
    5253    INTEGER :: ind,k 
     54 
     55    CALL trace_start("advect_tracer")  
    5356 
    5457    CALL transfert_request(f_u,req_e1) 
     
    110113    CALL transfert_request(f_q,req_i1)      ! necessary ? 
    111114    CALL transfert_request(f_rhodz,req_i1)  ! necessary ? 
     115     
     116    CALL trace_end("advect_tracer") 
     117      
    112118 
    113119    ! horizontal transport - split in two to place transfer of gradq3d 
  • codes/icosagcm/trunk/src/caldyn_gcm.f90

    r139 r145  
    9191    USE theta2theta_rhodz_mod 
    9292    USE mpipara 
     93    USE trace 
    9394    IMPLICIT NONE 
    9495    LOGICAL,INTENT(IN)    :: write_out 
     
    109110    INTEGER :: ind,ij 
    110111     
     112    CALL trace_start("caldyn") 
    111113    CALL transfert_request(f_phis,req_i1)  
    112114    CALL transfert_request(f_ps,req_i1)  
     
    188190     
    189191    !    CALL check_mass_conservation(f_ps,f_dps) 
     192    CALL trace_end("caldyn") 
    190193     
    191194END SUBROUTINE caldyn 
     
    195198  USE disvert_mod 
    196199  USE exner_mod 
     200  USE trace 
    197201  IMPLICIT NONE 
    198202  REAL(rstd),INTENT(IN)  :: u(iim*3*jjm,llm) 
     
    208212  LOGICAL,SAVE :: first=.TRUE. 
    209213  !$OMP THREADPRIVATE(first) 
    210    
     214 
     215 
     216  CALL trace_start("compute_pvort")   
    211217  !$OMP BARRIER       
    212218  !$OMP MASTER   
     
    281287    DEALLOCATE(qv)       ! potential velocity   
    282288!!$OMP END MASTER 
    283 !!$OMP BARRIER                                                       
     289!!$OMP BARRIER    
     290    CALL trace_end("compute_pvort") 
     291                                                        
    284292  END SUBROUTINE compute_pvort 
    285293   
     
    288296  USE disvert_mod 
    289297  USE exner_mod 
     298  USE trace 
    290299  IMPLICIT NONE 
    291300    REAL(rstd),INTENT(IN)  :: phis(iim*jjm) 
     
    315324    LOGICAL,SAVE :: first=.TRUE. 
    316325!$OMP THREADPRIVATE(first) 
    317          
     326     
     327    CALL trace_start("compute_caldyn") 
    318328!$OMP BARRIER       
    319329!$OMP MASTER   
     
    644654!!$OMP END MASTER 
    645655!!$OMP BARRIER                                                       
     656    CALL trace_end("compute_caldyn") 
     657 
    646658  END SUBROUTINE compute_caldyn 
    647659 
  • codes/icosagcm/trunk/src/dissip_gcm.f90

    r131 r145  
    430430  USE exner_mod 
    431431  USE geopotential_mod 
     432  USE trace 
    432433  IMPLICIT NONE 
    433434    TYPE(t_field),POINTER :: f_ue(:) 
     
    447448    INTEGER :: l,i,j,n 
    448449     
     450    CALL trace_start("dissip") 
    449451    CALL gradiv(f_ue,f_due_diss1) 
    450452    CALL gradrot(f_ue,f_due_diss2) 
     
    497499      END IF 
    498500   END DO 
     501 
     502   CALL trace_end("dissip") 
    499503 
    500504    CONTAINS 
     
    532536  SUBROUTINE gradiv(f_ue,f_due) 
    533537  USE icosa 
     538  USE trace 
    534539  IMPLICIT NONE 
    535540    TYPE(t_field),POINTER :: f_ue(:) 
     
    540545    INTEGER :: it 
    541546        
     547    CALL trace_start("gradiv") 
     548 
    542549    DO ind=1,ndomain 
    543550      CALL swap_dimensions(ind) 
     
    560567    ENDDO 
    561568 
     569   CALL trace_end("gradiv") 
     570 
    562571  END SUBROUTINE gradiv 
    563572   
     
    565574  SUBROUTINE gradrot(f_ue,f_due) 
    566575  USE icosa 
     576  USE trace 
    567577  IMPLICIT NONE 
    568578    TYPE(t_field),POINTER :: f_ue(:) 
     
    573583    INTEGER :: it 
    574584        
     585    CALL trace_start("gradrot") 
     586 
    575587    DO ind=1,ndomain 
    576588      CALL swap_dimensions(ind) 
     
    594606    ENDDO 
    595607 
     608    CALL trace_end("gradrot") 
     609 
    596610  END SUBROUTINE gradrot 
    597611   
    598612  SUBROUTINE divgrad(f_theta,f_dtheta) 
    599613  USE icosa 
     614  USE trace 
    600615  IMPLICIT NONE 
    601616    TYPE(t_field),POINTER :: f_theta(:) 
     
    605620    INTEGER :: ind 
    606621    INTEGER :: it 
     622 
     623    CALL trace_start("divgrad") 
    607624        
    608625    DO ind=1,ndomain 
     
    626643 
    627644    ENDDO 
     645 
     646    CALL trace_end("divgrad") 
    628647 
    629648  END SUBROUTINE divgrad 
  • codes/icosagcm/trunk/src/timeloop_gcm.f90

    r139 r145  
    1818  USE physics_mod 
    1919  USE mpipara 
    20    
     20  USE trace 
    2121  IMPLICIT NONE 
    2222  TYPE(t_field),POINTER :: f_phis(:) 
     
    222222    LOGICAL :: with_dps 
    223223    INTEGER :: ind 
     224 
     225    CALL trace_start("Euler_scheme")   
     226 
    224227    DO ind=1,ndomain 
    225228       CALL swap_dimensions(ind) 
     
    238241    ENDDO 
    239242 
     243    CALL trace_end("Euler_scheme")   
     244 
    240245    END SUBROUTINE Euler_scheme 
    241246 
     
    245250      REAL(rstd), DIMENSION(4), PARAMETER :: coef = (/ .25, 1./3., .5, 1. /) 
    246251      REAL(rstd) :: tau 
     252   
     253      CALL trace_start("RK_scheme")   
    247254 
    248255      tau = dt*coef(stage) 
     
    268275         END IF 
    269276      END DO 
     277       
     278      CALL trace_end("RK_scheme") 
     279       
    270280    END SUBROUTINE RK_scheme 
    271281 
     
    274284      INTEGER :: ind 
    275285 
     286      CALL trace_start("leapfrog_scheme") 
     287         
    276288      DO ind=1,ndomain 
    277289        CALL swap_dimensions(ind) 
     
    301313           
    302314      ENDDO 
     315 
     316      CALL trace_end("leapfrog_scheme") 
     317 
    303318    END SUBROUTINE leapfrog_scheme   
    304319  
     
    307322    INTEGER :: ind, stage 
    308323    REAL :: tau 
    309     tau = dt/nb_stage 
     324 
     325      CALL trace_start("leapfrog_matsuno_scheme") 
     326     
     327      tau = dt/nb_stage 
    310328      DO ind=1,ndomain 
    311329        CALL swap_dimensions(ind) 
     
    347365       
    348366      ENDDO 
     367      CALL trace_end("leapfrog_matsuno_scheme") 
    349368       
    350369    END SUBROUTINE leapfrog_matsuno_scheme   
     
    353372    IMPLICIT NONE 
    354373      INTEGER :: ind 
     374 
     375      CALL trace_start("adam_bashforth_scheme") 
    355376 
    356377      DO ind=1,ndomain 
     
    375396 
    376397      ENDDO      
     398 
     399      CALL trace_end("adam_bashforth_scheme") 
    377400       
    378401    END SUBROUTINE adam_bashforth_scheme 
Note: See TracChangeset for help on using the changeset viewer.