m1macpython如何调用多核

Python016

m1macpython如何调用多核,第1张

1、首先多进程是在各自单独的进程内存管理下运行代码,而多线程是共享一个进程内存。

2、其次首先打开m1macpython,点击主界面。

3、最后在主菜单点击调用多核即可。

python由于GIL的关系,python的多线程并没有发挥多核的作用,这些线程都是在在单核上跑的

所以要想发挥多核的作用,就需要使用多进程,尽可能的在每一个CPU核心上分配到一个python进程。

所以要想跑满多核CPU就得多进程多线程互相结合

比方我有一个4核的CPU,那么这样一来,在单位时间内每个核只能跑一个线程,然后时间片轮转切换。但是Python不一样,它不管你有几个核,单位时间多个核只能跑一个线程,然后时间片轮转。看起来很不可思议?但是这就是GIL搞的鬼。任何Python线程执行前,必须先获得GIL锁,然后,每执行100条字节码,解释器就自动释放GIL锁,让别的线程有机会执行。这个GIL全局锁实际上把所有线程的执行代码都给上了锁,所以,多线程在Python中只能交替执行,即使100个线程跑在100核CPU上,也只能用到1个核。通常我们用的解释器是官方实现的CPython,要真正利用多核,除非重写一个不带GIL的解释器。