如何在Linux上運行的OpenMP(C)代碼中識別出團隊的空閒線程?
我想測量作爲一個團隊工作的線程的空閒時間。可能嗎?是否有任何字段顯示線程的狀態?OpenMP(C)空閒線程的狀態
回答
閱讀Status
領域/proc/self/task/$tid/status
其中tid
是gettid()
系統調用
這也爲第三場獲得您的任務ID(唯一的每個線程)在/proc/self/task/$tid/stat
/proc/self/task/$tid/stat
還將包含utime
和stime
領域爲每個任務,所以你可以得到他們的「活躍時間」。檢查http://linux.die.net/man/5/proc以查看哪些字段是。
謝謝!有沒有辦法將omp_get_thread_num()與gettid()結果相對應? – 2013-02-20 00:41:50
恐怕不是。 'omp_get_thread_num()'是特定於進程的,通常從0開始計數。而'gettid()'是內核'pid_t'。它本質上與進程ID PID相同,只是更具體而且實際上進程內主任務/線程的TID與進程PID相同。您需要從每個線程調用'gettid()'來確定它們的ID或枚舉目錄'/ proc/self/task'。 – 2013-02-21 11:44:39
- 1. OpenMP,VTune,空閒線程
- 2. Admob狀態空閒
- 3. 有沒有辦法在GNU OpenMP中結束空閒線程?
- 4. 如何確定進程是否處於空閒狀態C
- 5. 線程在OpenMP的C++
- 6. 線程空閒指針
- 7. 關閉空閒線程ExecutorService
- 8. C#:查詢線程狀態
- 9. 尋找iOS設備空閒狀態
- 10. 通過代碼取消空閒狀態...
- 11. Unity3d動畫返回空閒狀態
- 12. Android - 空閒狀態數據丟失
- 13. Wifi只是進入空閒狀態
- 14. GetFGCallState總是回到空閒狀態
- 15. OpenMP競爭狀態?
- 16. MDI應用程序在空閒狀態下消耗100%的CPU
- 17. 如何檢查MVC應用程序的空閒狀態
- 18. 監視Tomcat中的空閒線程
- 19. iOS中的空閒線程方法
- 20. 線程狀態
- 21. 應用程序崩潰,如果它處於空閒狀態
- 22. 空閒狀態檢測Silverlight 4應用程序
- 23. 狀態的線程
- 24. ASP.NET - 工作線程,IO線程和空閒線程
- 25. C#線程的狀態和「睡眠」
- 26. 線程在OpenMP的
- 27. ThreadPoolExecutor如何中斷空閒線程?
- 28. Linux for armv8 - 避免所有處於空閒狀態的處理器狀態
- 29. 獲得在C線程狀態++ /窗口
- 30. pthread線程狀態
只需獲得(仍然)免費的Oracle Solaris Studio(儘管它的名稱也包含Linux版本)。它包括線程分析器工具,它能夠收集線程利用率信息並將其呈現在一個漂亮的GUI中。 – 2013-02-20 11:15:52