我有一個已被OpenMP並行化的循環,但由於任務的性質,有4個critical
子句。如何剖析OpenMP瓶頸
如何分析加速並找出哪些關鍵子句(或者非關鍵(!))佔用循環內最多時間的最佳方法是什麼?
我使用Ubuntu 10.04使用g ++ 4.4.3
我有一個已被OpenMP並行化的循環,但由於任務的性質,有4個critical
子句。如何剖析OpenMP瓶頸
如何分析加速並找出哪些關鍵子句(或者非關鍵(!))佔用循環內最多時間的最佳方法是什麼?
我使用Ubuntu 10.04使用g ++ 4.4.3
intel vtune是一個很好的產品。與scalasca或tau相比,使用非常簡單。這是值得的錢。 – tune2fs
VTune實際上可以免費用於非商業軟件。 http://software.intel.com/en-us/non-commercial-software-development – SaiyanGirl
英特爾似乎已經停止免費提供vtune。現在只有提供學術用途的產品。 –
Arm MAP具有OpenMP和pthreads性能分析 - 並且無需工具或修改源代碼即可工作。您可以看到同步問題以及線程在源線級別花費時間的位置。 OpenMP profiling博客條目值得一讀。
MAP被廣泛用於高性能計算,因爲它也是剖析MPI等多進程應用程序。
我修改了原始文章的其他信息 – Mikhail
我做了這樣的任務,修改了omp庫資源並添加了一個rdtsc的 – osgx