下面对Fortran中的几种调用时间的子程序(CPU_TIME,SYSTEM_CLOCK,DATA_AND_TIME,DATA_AND_TIME)进行对比研究。
CPU_TIME——Returns a REAL value representing the elapsed CPU time in seconds. (详细信息见 https://gcc.gnu.org/onlinedocs/gfortran/CPU_005fTIME.html)
语法: CALL CPU_TIME(TIME)。TIME的类型是实数型。
SYSTEM_CLOCK——(详细信息见 https://gcc.gnu.org/onlinedocs/gfortran/SYSTEM_005fCLOCK.html)
语法: CALL SYSTEM_CLOCK([COUNT, COUNT_RATE, COUNT_MAX])。COUNT,COUNT_RATE和COUNT_MAX是整数类型。当参数count的kind不同时,count的单位也会不一样。count是INTEGER(4)类型的话,返回的时间是毫秒,count的类型是INTEGER(8)类型,那么返回的时间是纳秒。所以在计算时间的时候为了得到时间的单位为秒,需要使用COUNT/COUNT_RATE。
DATA_AND_TIME————(详细信息见https://gcc.gnu.org/onlinedocs/gfortran/ITIME.html)
CPU_TIME——Returns a REAL value representing the elapsed CPU time in seconds. (详细信息见 https://gcc.gnu.org/onlinedocs/gfortran/CPU_005fTIME.html)
语法: CALL CPU_TIME(TIME)。TIME的类型是实数型。
SYSTEM_CLOCK——(详细信息见 https://gcc.gnu.org/onlinedocs/gfortran/SYSTEM_005fCLOCK.html)
语法: CALL SYSTEM_CLOCK([COUNT, COUNT_RATE, COUNT_MAX])。COUNT,COUNT_RATE和COUNT_MAX是整数类型。当参数count的kind不同时,count的单位也会不一样。count是INTEGER(4)类型的话,返回的时间是毫秒,count的类型是INTEGER(8)类型,那么返回的时间是纳秒。所以在计算时间的时候为了得到时间的单位为秒,需要使用COUNT/COUNT_RATE。
DATA_AND_TIME————(详细信息见https://gcc.gnu.org/onlinedocs/gfortran/ITIME.html)
语法: DATE_AND_TIME(DATE, TIME, ZONE, VALUES)。DATA,