SURFEX v8.1
General documentation of Surfex
iusrcl.F
Go to the documentation of this file.
1  INTEGER FUNCTION iusrcl()
2  USE parkind1, ONLY : jprd, jpim
3  INTEGER(KIND=JPIM) :: TIMENOWHIGH
4 !RJ REAL(KIND=JPRB) :: AMICCLK
5 !
6 ! MACHINE-DEPENDENT TIMING ROUTINE
7 !
8 !----------------------------------------------------------------------
9 ! Author.
10 ! -------
11 ! Ute Gaertel, Wolfgang Joppich, Anton Schueller *GMD*
12 !
13 ! Modifications.
14 ! -------------
15 ! Original : 93-01-15
16 ! Modified : 93-03-15
17 ! Modified : 93-08-25
18 ! F. Vana 05-Mar-2015 Support for single precision
19 !----------------------------------------------------------------------
20 !
21 !------CM 5
22 !
23 !CM5 integer cmmd_node_timer_clear,cmmd_node_timer_start,
24 !CM5 * cmmd_node_timer_stop,i,istat
25 !CM5 double precision time,cmmd_node_timer_elapsed
26 !CM5 data istat /0/
27 !CM5 save istat
28 !CM5
29 !CM5 if (istat.eq.0) then
30 !CM5 istat = 1
31 !CM5 i = cmmd_node_timer_clear(0)
32 !CM5 i = cmmd_node_timer_start(0)
33 !CM5 endif
34 !CM5 i = cmmd_node_timer_stop(0)
35 !CM5 time = cmmd_node_timer_elapsed(0)
36 !CM5 iusrcl = nint(time*1.0d3)
37 !CM5 i = cmmd_node_timer_start(0)
38  REAL(KIND=JPRD),EXTERNAL :: UTIL_WALLTIME
39  REAL(KIND=JPRD),EXTERNAL :: UTIL_CPUTIME
40  iusrcl = 0
41 !
42 !------iPSC/2, iPSC/860
43 !
44 ! IUSRCL = MCLOCK()
45 !
46 !------Parsytec GCel
47 !
48 ! IUSRCL = TIMENOWHIGH()
49 !
50 !------IBM RS 6000, Meiko, SGI
51 !
52 !CSB IUSRCL = 1000 * SECOND()
53 !cli IUSRCL = 10 * MCLOCK()
54 ! IUSRCL = MCLOCK()
55 #if defined(SGI) || defined(VPP)
56  iusrcl = 1000 * util_walltime()
57 ! IUSRCL = 1000 * util_cputime()
58 #endif
59 !
60 !
61 !------SUN
62 !
63 !3LI IUSRCL = 1000
64 !
65 !
66 !------nCUBE/2
67 !
68 ! IUSRCL = INT (AMICCLK()/1000)
69 #ifdef CRAY
70 #ifndef T3D
71 !
72 !------Cray C90
73 !
74  iusrcl = int( rtc()*4.186e-6_jprd )
75 #else
76 !------Cray T3D
77 !
78  iusrcl = int( rtc()*6.667e-6_jprd )
79 !-- IUSRCL = 1000 * util_walltime()
80 #endif
81 #endif
82 !
83 
84 
85  ENDFUNCTION iusrcl
integer, parameter jpim
Definition: parkind1.F90:13
integer, parameter jprd
Definition: parkind1.F90:39
integer function iusrcl()
Definition: iusrcl.F:2