Discuss / Python / 8核CPU和4核CPU?

8核CPU和4核CPU?

Topic source

俯仰瞬间

#1 Created at ... [Delete] [Delete and Lock User]

由于Pool的默认大小是CPU的核数,如果你不幸拥有8核CPU,你要提交至少9个子进程才能看到上面的等待效果。

对于老师说的这句话不太理解

我的电脑是4核CPU, 我是不是要提交至少5个子进程才能看到等待结果?

可是我将for i in range(5):改成3之后也能看到等待结果,是不是我哪里理解错了?

Ciq1n7

#2 Created at ... [Delete] [Delete and Lock User]

CUP运行只有上限 不是在运行过程中每个CPU都要工作的

俯仰瞬间

#3 Created at ... [Delete] [Delete and Lock User]

我明白了,等待结果的意思是说task 4要等待前面某个task完成后才能执行,也就是说看到print('Task %s runs %0.2f seconds.' % (name, (end - start)))的输出结果之后再Run task 4

如果是8核的话,要提交至少9个子进程才能看到上述过程

其实也可以将8核的pool改成pool(3),这样提交4个子进程就能做到了,但是这样好像是把计算机的性能晾在一边不用了。。。

把pool()里的参数去掉,就是按照操作系统的核数来,我试了一下,就是这样。不知道是不是这个意思。

俯仰瞬间

#5 Created at ... [Delete] [Delete and Lock User]

是的,就是这个意思


  • 1

Reply