source: tags/ORCHIDEE_1_9_6/ORCHIDEE/src_parallel/tools_para.f90 @ 3865

Last change on this file since 3865 was 720, checked in by didier.solyga, 12 years ago

Add svn headers for all modules. Improve documentation of the parameters. Replace two values by the corresponding parameters.

  • Property svn:keywords set to HeadURL Date Author Revision
File size: 1.5 KB
Line 
1! Parallel tools : Barrier and Finalize.
2
3!-
4!< $HeadURL$
5!< $Date$
6!< $Author$
7!< $Revision$
8!-
9
10MODULE tools_para
11!-
12  USE ioipsl
13  USE defprec
14  USE timer
15  USE data_para
16!-
17#include "src_parallel.h"
18!-
19CONTAINS
20  SUBROUTINE stop_mpi()
21#ifdef CPP_PARA
22    CALL MPI_COMM_FREE(MPI_COMM_ORCH,ierr)
23    CALL MPI_FINALIZE(ierr)
24#endif
25    CALL ipslerr(3,'STOP_MPI','MPI has been stopped in ORCHIDEE.',&
26 &                 "Don't know the reason","Please verify output.")
27  ENd subroutine stop_mpi
28
29  SUBROUTINE barrier_para()
30#ifdef CPP_PARA
31    CALL MPI_BARRIER(MPI_COMM_ORCH,ierr)
32#endif
33  END SUBROUTINE barrier_para
34
35  SUBROUTINE finalize_para(timer_global,timer_mpi)
36    INTEGER, INTENT(IN) :: timer_global, timer_mpi
37    DOUBLE PRECISION :: cpu_time_mpi
38
39    cpu_time_mpi = Get_cpu_time(timer_mpi)
40    WRITE(numout,*) '*********************************************************'
41    WRITE(numout,*) ' TEMPS GLOBAL   ---> REAL TIME :',Get_real_time(timer_global)
42    WRITE(numout,*) ' TEMPS GLOBAL   ---> CPU TIME  :',Get_cpu_time(timer_global)
43    WRITE(numout,*) ' TEMPS HORS MPI ---> REAL TIME :',Get_real_time(timer_mpi)
44    WRITE(numout,*) ' TEMPS HORS MPI ---> CPU TIME  :',cpu_time_mpi
45    WRITE(numout,*) '*********************************************************' 
46    WRITE(numout,*) 'END OF RUN.'
47
48    CALL Write_Load_Balance(REAL(cpu_time_mpi, r_std))
49#ifdef CPP_PARA
50!    CALL MPI_COMM_FREE(MPI_COMM_ORCH,ierr)
51    CALL MPI_FINALIZE(ierr)
52#endif
53  END SUBROUTINE finalize_para
54
55END MODULE tools_para
Note: See TracBrowser for help on using the repository browser.