如何在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. 有没有办法在GNU OpenMP中结束空闲线程?
- 3. 如何确定进程是否处于空闲状态C
- 4. 线程在OpenMP的C++
- 5. 线程空闲指针
- 6. 寻找iOS设备空闲状态
- 7. Wifi只是进入空闲状态
- 8. 通过代码取消空闲状态...
- 9. C#:查询线程状态
- 10. OpenMP竞争状态?
- 11. 监视Tomcat中的空闲线程
- 12. iOS中的空闲线程方法
- 13. 应用程序崩溃,如果它处于空闲状态
- 14. ASP.NET - 工作线程,IO线程和空闲线程
- 15. 线程在OpenMP的
- 16. Linux for armv8 - 避免所有处于空闲状态的处理器状态
- 17. pthread线程状态
- 18. 获得在C线程状态++ /窗口
- 19. 线程池中的线程状态
- 20. 在Openmp中销毁线程(C++)
- 21. SciPy的CMD公司的工作,但不是空闲状态
- 22. Openmp线程分歧?
- 23. OpenMP和核/线程
- 24. OpenMP线程创建
- 25. Openmp线程睡眠
- 26. 检查网页上的用户状态(活动,空闲)
- 27. Pentaho的表输入步骤进入空闲状态
- 28. CUDA线程闲置
- 29. 如何在IOS和android中获取应用程序的空闲状态?
- 30. 多线程工作线程状态
只需获得(仍然)免费的Oracle Solaris Studio(尽管它的名称也包含Linux版本)。它包括线程分析器工具,它能够收集线程利用率信息并将其呈现在一个漂亮的GUI中。 – 2013-02-20 11:15:52