多处理器机器上的Python:多处理器还是非GIL解释器

多处理器机器上的Python:多处理器还是非GIL解释器,python,multiprocessing,Python,Multiprocessing,这更像是一个风格问题。对于具有多核的CPU限制进程,您通常是使用多处理模块,还是使用带有没有GIL的解释器的线程?我只是简单地使用了多处理库,但除了CPython之外,我对其他任何东西都没有经验。我很好奇首选的方法是什么,如果是使用不同的解释器,是哪种解释器。看看并行Python——我曾经在我的四核机器上很好地将工作分配给处理器。它甚至支持集群 看看并行Python——我过去习惯于在我的四核机箱上的处理器之间很好地分割工作。它甚至支持集群 我看不出这里有什么样式参数,不管是哪种方式——CPyth

这更像是一个风格问题。对于具有多核的CPU限制进程,您通常是使用多处理模块,还是使用带有没有GIL的解释器的线程?我只是简单地使用了多处理库,但除了CPython之外,我对其他任何东西都没有经验。我很好奇首选的方法是什么,如果是使用不同的解释器,是哪种解释器。

看看并行Python——我曾经在我的四核机器上很好地将工作分配给处理器。它甚至支持集群

看看并行Python——我过去习惯于在我的四核机箱上的处理器之间很好地分割工作。它甚至支持集群

我看不出这里有什么样式参数,不管是哪种方式——CPython 2.6中的多处理,还是当前版本的Jython和IronPython中的线程,都允许您以极其相似的方式和样式编写代码;-。因此,我会基于非常精明的考虑因素进行选择——如果我的CPU非常有限,可以从多个内核中获益,那么性能显然是最重要的,我是否可以认真地使用任何只使用CPython的库,比如numpy或其他只使用JVM或.NET的库,诸如此类。

我在这里看不到真正的风格参数,不管是哪种方式-CPython 2.6中的多处理,还是当前版本的Jython和IronPython中的线程,都允许您以极其相似的方式和风格编写代码;-。因此,我会基于非常精明的考虑因素进行选择——如果我的CPU非常有限,可以从多个内核中获益,那么性能显然是最重要的,我是否可以认真地使用任何只使用CPython的库,比如numpy或其他只使用JVM或.NET的库,等等。

你的工作量是什么样的?从风格的角度来看,这显然对python程序员非常重要,我不认为许多python拥护者会喜欢非GIL解释器您的工作负载是什么样的?从风格的角度来看,这显然对python编程人员非常重要,我不认为许多python拥护者会喜欢非GIL解释器。通常,您会进行一些基准测试,以确定在不降低性能的情况下,每个CPU可以处理多少python进程。我将从每个核心三个Python进程开始,然后向上工作。理想情况下,您将进行一些基准测试,以确定每个CPU可以处理多少个Python进程而不会降低性能。我将从每个核心的三个Python进程开始,然后向上工作。