torch.set_num_threads

举报
风吹稻花香 发表于 2021/06/05 00:16:54 2021/06/05
【摘要】   t.set_num_threads 可以设置 PyTorch 进行 CPU 多线程并行计算时所占用的线程数,用来限制 PyTorch 所占用的 CPU 数目; t.set_printoptions可以用来设置打印 tensor 时的数值精度和格式;   t.set_num_threads 在linux和Windows平台都有效:   ...

 


t.set_num_threads 可以设置 PyTorch 进行 CPU 多线程并行计算时所占用的线程数,用来限制 PyTorch 所占用的 CPU 数目;
t.set_printoptions可以用来设置打印 tensor 时的数值精度和格式;
 

t.set_num_threads 在linux和Windows平台都有效:

 

linux有效,不用时cpu占用能到5000%,设置3后,就到到300%。

linux中,5000%代表用了50个cpu核,300%代表用了3个cpu核。

 

不设置,cpu51%,时间15ms

不设置的时候,torch会自动加载很多cpu,导致CPU占用很高。

 

2的时候,cpu17%,时间15ms变为25ms

4的时候,cpu34%,时间17ms

8的时候,cpu67%,


  
  1. import time
  2. import torch
  3. import numpy as np
  4. while True:
  5. torch.set_num_threads(4)
  6. arr= np.zeros((100,3, 300, 300), dtype=np.float32)
  7. # start=time.time()
  8. # arr=arr-0.406
  9. # print('time1',time.time()-start)
  10. aaa=torch.from_numpy(arr)
  11. start = time.time()
  12. aaa.add_(-0.406)
  13. print('time2',time.time() - start)
  14. # aaa.add_(-0.406)
  15. # print(aaa)
  16. # inps = torch.zeros(50, 3, 300, 300)
  17. time.sleep(0.007)

文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jacke121/article/details/84305727

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。