作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Fortran MPI 进行编码,我需要获取程序的运行时间。因此,我尝试使用 WTIME() 函数,但得到了一些奇怪的结果。
部分代码是这样的:
program heat_transfer_1D_parallel
implicit none
include 'mpif.h'
integer myid,np,rc,ierror,status(MPI_STATUS_SIZE)
integer :: N,N_loc,i,k,e !e = number extra points (filled with 0s)
real :: time,tmax,start,finish,dt,dx,xmax,xmin,T_in1,T_in2,T_out1,T_out2,calc_T,t1,t2
real,allocatable,dimension(:) :: T,T_prev,T_loc,T_loc_prev
call MPI_INIT(ierror)
call MPI_COMM_SIZE(MPI_COMM_WORLD,np,ierror)
call MPI_COMM_RANK(MPI_COMM_WORLD,myid,ierror)
...
t1 = MPI_WTIME()
time = 0.
do while (time.le.tmax)
...
end do
...
call MPI_BARRIER(MPI_COMM_WORLD,ierror)
t2 = MPI_WTIME()
call MPI_FINALIZE(ierror)
if(myid.eq.0) then
write(*,"(8E15.7)") T(1:N-e)
write(*,*)t2
write(*,*)t1
end if
并且 t1 和 t2 的输出值相同且非常大:1.4240656E+09任何想法为什么?非常感谢。
最佳答案
来自documentation :返回值:自过去任意时间以来的时间(以秒为单位)。他们没有具体说明有多远 ;-) 这里只有 t2-t1 有意义...
此外,MPI_Wtime()
的返回值是 double
! t1
和 t2
声明为单精度 float 。
关于parallel-processing - MPI Fortran WTIME 运行不正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28530072/
我正在使用 Fortran MPI 进行编码,我需要获取程序的运行时间。因此,我尝试使用 WTIME() 函数,但得到了一些奇怪的结果。 部分代码是这样的: program heat_tran
我正在尝试将 OpenMP 用于数据库内部项目以提高性能。我需要将运行时间(正在使用omp_get_wtime())保存在文件中,因为我无法从该程序将任何内容打印到控制台。请建议是否有更好的方法。我尝
我是一名优秀的程序员,十分优秀!