- 主题:万CM,程序计算速度提不上去,求教如何分析瓶颈在哪
自己写的蒙特卡洛仿真程序,用了tbb和mkl,在8c16t的台式机cpu占用率只有35%左右(debug版本能开到95%+)。
指定tbb只用单线程,开8个进程同时跑,也是35%左右。
我确定代码里没用等待或锁,并且IO都放到了ramdisk里,运算速度上不去的原因会是什么呢?
我怀疑是源码里memcpy/memmove用得过多,但就现在这计算速度估算了一下,内存吞吐2500MB/s,离内存瓶颈还远着吧?有什么工具能分析瓶颈在哪吗?
--
FROM 119.103.117.*
对的,r7 2700。
刚在e5 2680v2试了试,cpu占用率30~35%,也跑不开。
【 在 somebody 的大作中提到: 】
: 难道是amd cpu?
--
FROM 117.128.4.*
用了。
刚把这个去掉跑了跑,cpu占用60%+,现代cpu超过50可认为满载了吧。但是计算速度也降低了一半多
【 在 Quanm 的大作中提到: 】
: 传说中的 export MKL_DEBUG_CPU_TYPE=5 用了没? :
--
FROM 117.128.4.*