caimaxwell 发表于 2023-7-8 21:27:05

cputime

大佬们,我想问问为什么在subroutine里上下call cpu_time计算出来的时间比总时间还长?
这里T2-T3用了462s,程序运行的总时间也出295s。代码是串行的。

楚香饭 发表于 2023-7-8 21:58:19

可能是你使用了并行的lapack吧

caimaxwell 发表于 2023-7-8 22:11:00

楚香饭 发表于 2023-7-8 21:58
可能是你使用了并行的lapack吧

啥意思呢?{:4_104:}我代码里并不存在并行的内容,是指调用库函数这里,它另外调用了并行的代码?也不对,那时间也不应该长啊.....

楚香饭 发表于 2023-7-9 17:28:36

你调用了 lapack,如果 lapack 内部是并行的,那执行 lapack 函数的时候就会自动并行。不需要你的代码中有任何并行代码。

并行代码的 cpu_time 会比实际物理实际长,因为2个核的话,就是物理时间的2倍。8个核就是物理时间的8倍。

caimaxwell 发表于 2023-7-10 13:51:24

楚香饭 发表于 2023-7-9 17:28
你调用了 lapack,如果 lapack 内部是并行的,那执行 lapack 函数的时候就会自动并行。不需要你的代码中有 ...

十分感谢您的解答,明白您的意思了{:4_99:},但是如何判断调用的lapack里是否使用了并行呢?我调用的blas库,是看blas库是否使用了并行代码吗?
页: [1]
查看完整版本: cputime