python进程占用cpu过高_python多进程提高cpu利用率

本文通过实例代码分析了Python进程中CPU占用过高的问题,并展示了如何使用多进程来提高CPU利用率。实验结果显示,随着进程数的增加,CPU的平均利用率有所改变,单进程时平均CPU约45%,而多进程时不同进程数下CPU分配情况不同,但总利用率保持在100%左右。
摘要由CSDN通过智能技术生成

cpu参数:

打包文件,单进程

#coding=utf-8

from multiprocessing importProcessimportsys, osimporttimedeftimetask(times):

cmd="tar zcfPh /data/nerri_%s.tar.gz /data/backup" %times

os.system(cmd)defworks_multi_process(func, worknum):

proc_record=[]for i inrange(worknum):

p= Process(target = func, args =(i,))

p.start()

proc_record.append(p)for p inproc_record:

p.join()defworks_single_process(func, worknum):

proc_record=[]for i inrange(worknum):

p= Process(target = func, args =(i,))

p.start()

p.join()if __name__ == ‘__main__‘:print time.strftime(‘============start:%H%M%S==========‘)

procs= 2works_multi_process(timetask, procs)print time.strftime(‘============end:%H%M%S========‘)

运性结果:

单进程:

============start:154554==========

============end:154903===========

多进程:

============start:155513==========

============end:155627========

查看磁盘和cpu利用率:iostat -x 1 10

ps:

单进程占用cpu 90左右  平均cpu 45左右

多进程 进程数2  每个进程占用cpu 90左右  总的cpu 100左右

多进程 进程数3 一个进程占用cpu 90左右  另外两个进程占用cpu45左右  总的cpu 100左右

多进程 进程数4 每个进程占用cpu45左右  总的cpu 100左右

系统的线程调度。即使是单线程,在不同的时间片,也有可能被调度到不同的核。可以控制在哪个核上运行~

原文:http://www.cnblogs.com/nerrissa/p/5594291.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值