Pytorch限制或增加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的线程数量;
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
深入理解Python中的 __new__ 和 __init__及区别介绍
这篇文章主要介绍了深入理解Python中的 __new__ 和 __init__及区别介绍,这两个方法的主要区别在于:__new__ 负责对象的创建而 __init__ 负责对象的初始化。具体内容详情大家跟随小编一起看看吧2018-09-09
Python中使用pypdf2合并、分割、加密pdf文件的代码详解
这篇文章主要介绍了Python中使用pypdf2合并、分割、加密pdf文件的代码,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-05-05


最新评论