目录
- Pytorch限制或增加CPU的核数
- Python获取CPU的线程数量
- 获取CPU的线程数量
- 总结
Pytorch限制或增加CPU的核数
一般Pytorch 默认是使用一半的CPU运行的,有的时候用不到那么多得CPU资源或者占用太多资源挤压别人,这就需要限制核数。
Pytorch提供了一个限制核数的代码:
# cpu_num是一个整数 torch.set_num_threads(cpu_num)
这样就能够限制核数。
Python获取CPU的线程数量
在使用PyTorch搭建目标检测模型时,我们需要设置最佳的数据读取的进程数量;
我觉得,这个数量最好就设置成CPU的线程数量;
获取CPU的线程数量
获取CPU线程数量的代码:
from multiprocessing import cpu_count print(cpu_count())
备注:
Python官方文档中关于multiprocessing.cpu_count()的功能是这样说的:
Return the number of CPUs in the system.
我先以为是文档描述的不准确,后来
Andrew Svetlov在我的Python文档Bug提交中告诉我:
CPU as a shortcut for "logical processor" is very common in software engineering.
所以这里的“the number of CPUs”实际上就是指的系统可以获取到的CPU逻辑核心数;
如果是对于单个CPU而言,那就是当前CPU的线程数量;
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)