PythonPandas的CPU使用率很低,并且没有使用所有的内核

PythonPandas的CPU使用率很低,并且没有使用所有的内核,pandas,multicore,windows-server,Pandas,Multicore,Windows Server,我有一个Pandas脚本,在本地core i5 Macbook上的使用率>90%。我正在将它迁移到远程16核Windows Server 2008,但它似乎只使用了16核中的一个。CPU使用率仅

我有一个Pandas脚本,在本地core i5 Macbook上的使用率>90%。我正在将它迁移到远程16核Windows Server 2008,但它似乎只使用了16核中的一个。CPU使用率仅<10%

为什么同一个脚本使用不同的处理器?在Windows服务器上使用所有16核的原因和解决方案是什么


我已经读过Dask和其他Python多核心工具,但我不想花时间在这些工具上,而是想把我的算法转换成并行算法。

它们是同一个版本吗?Python、pandas和多线程库?@IsuruH是的。我把它们都更新到了最新版本。我没有使用任何多线程库,因为默认情况下,Mac平衡了所有内核的工作负载。这可能就是原因。你有一个单线程程序,其中一个底层操作系统决定将其并行化以使用所有可用的内核,而另一个没有。@IsuruH这真是一个奇怪的情况。你知道MacOSX如何并行化这个程序吗?它如何能自动完成这项工作毫无意义,但Windows无法做到。很抱歉,操作系统不是我的强项,而且对Mac电脑一无所知。但是,不难假设其中一个操作系统采用了类似于“线程级推测”的技术,其中一个单线程程序在fly上并行化。这些操作系统是同一个版本吗?Python、pandas和多线程库?@IsuruH是的。我把它们都更新到了最新版本。我没有使用任何多线程库,因为默认情况下,Mac平衡了所有内核的工作负载。这可能就是原因。你有一个单线程程序,其中一个底层操作系统决定将其并行化以使用所有可用的内核,而另一个没有。@IsuruH这真是一个奇怪的情况。你知道MacOSX如何并行化这个程序吗?它如何能自动完成这项工作毫无意义,但Windows无法做到。很抱歉,操作系统不是我的强项,而且对Mac电脑一无所知。但是,不难假设其中一个操作系统采用了类似于“线程级推测”的技术,在这种技术中,单线程程序是动态并行的