【发布时间】:2017-07-23 02:49:25
【问题描述】:
在我的项目中,我实现了python-multiprocessing 以提高处理速度。我在一个 4 核系统中对其进行了测试。但它仅显示处理时间减少了约 25%。
这是一个示例代码:
t1 = time.time()
p = Pool()
p.map(functin, file_list)
p.close()
p.join()
print '==========================================================='
print 'Pool put resume took := ',time.time() - t1
print '==========================================================='
从理论上讲,处理时间应该减少 1\4th,因为 4 个内核正在执行该功能,而不是单个内核。我还检查了任务管理器并确认有 4 个进程正在运行。 因此,请任何人解释为什么它没有显示处理时间显着减少。我是否缺少任何配置?
【问题讨论】:
-
处理减少 25% 和 1/4 有什么区别?
-
假设这个过程通常需要 100 秒,现在使用多处理在 75 秒内完成。但理论上它应该在 25 秒内完成。我的意思是@ShubhamNamdeo
标签: python django python-multiprocessing