Fortran Coder

cputime

查看数: 1308 | 评论数: 4 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2023-7-8 21:27

正文摘要:

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

回复

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

十分感谢您的解答,明白您的意思了,但是如何判断调用的lapack里是否使用了并行呢?我调用的blas库,是看blas库是否使用了并行代码吗?
楚香饭 发表于 2023-7-9 17:28:36
你调用了 lapack,如果 lapack 内部是并行的,那执行 lapack 函数的时候就会自动并行。不需要你的代码中有任何并行代码。

并行代码的 cpu_time 会比实际物理实际长,因为2个核的话,就是物理时间的2倍。8个核就是物理时间的8倍。
caimaxwell 发表于 2023-7-8 22:11:00
楚香饭 发表于 2023-7-8 21:58
可能是你使用了并行的lapack吧

啥意思呢?我代码里并不存在并行的内容,是指调用库函数这里,它另外调用了并行的代码?也不对,那时间也不应该长啊.....
楚香饭 发表于 2023-7-8 21:58:19
可能是你使用了并行的lapack吧

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-10 13:06

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表