【发布时间】:2018-09-23 20:33:30
【问题描述】:
在 Windows 10、AMD Threadripper 16 核 CPU、64 GB RAM、快速 SSD 上运行 Python 3.6.4(64 位)。在我开始这个测试之前,没有其他东西正在运行(
我们将不胜感激任何修复、解决方法、想法或解释。谢谢。
import multiprocessing as mp
import time
for x in range(2,15):
t0 = time.perf_counter()
with mp.Pool(processes=x) as pool:
pass
print('Done {0} processes in {1:.2f}s'.format(x, time.perf_counter() - t0))
Done 2 processes in 0.79s
Done 3 processes in 1.34s
Done 4 processes in 2.18s
...
Done 12 processes in 6.44s
Done 13 processes in 5.45s
Done 14 processes in 5.73s
【问题讨论】:
-
奇怪,我得到一个一致的
0.11s。但那是在 linux 上,所以可能是平台差异。 -
@Azsgy 我看到你列出的完全相同的结果,也使用 Linux。无法重现 OP 的计时结果。
-
This discussion 关于 Windows 与 Linux 中新进程的“spawn”与“fork”可能是相关的。
标签: python windows multiprocessing