概述
cpu参数:
1个物理cpu,2个逻辑cpu(超线程),单核 具体 http://blog.csdn.net/dba_waterbin/article/details/8644626 物理CPU、逻辑CPU和CPU核数
打包文件,单进程
# coding=utf-8 from multiprocessing import Process import sys, os import time def timetask(times): cmd="tar zcfPh /data/nerri_%s.tar.gz /data/backup" % times os.system(cmd) def works_multi_process(func, worknum): proc_record = [] for i in range(worknum): p = Process(target = func, args = (i,)) p.start() proc_record.append(p) for p in proc_record: p.join() def works_single_process(func, worknum): proc_record = [] for i in range(worknum): p = Process(target = func, args = (i,)) p.start() p.join() if __name__ == '__main__': print time.strftime('============start:%H%M%S==========') procs = 2 works_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左右 磁盘io %util:20左右
多进程 进程数2 每个进程占用cpu 90左右 平均cpu 100左右 磁盘io %util:50+左右 变化幅度较大 20~70
多进程 进程数3 一个进程占用cpu 90左右 另外两个进程占用cpu45左右 平均cpu 100左右 磁盘io %util:50+左右 变化幅度较大
多进程 进程数4 每个进程占用cpu45左右 平均cpu 100左右 磁盘io %util:35%左右 磁盘io %util:50+左右 变化幅度较大
转载于:https://www.cnblogs.com/nerrissa/p/5594291.html
最后
以上就是文静白猫为你收集整理的python多进程提高cpu利用率的全部内容,希望文章能够帮你解决python多进程提高cpu利用率所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复