我正在用Dask运行长时间的模拟任务。每个任务都很长(几秒钟到几分钟)。
不幸的是,工作节点分散在不同的地方,因此它们之间的网络很慢-最差的节点之间可能只有10MBps。
处理所需的数据相当大(许多MB),因此我首先分散数据以使其在需要的地方可用。
我已将调度程序安装在其自己的16核心服务器上,以免使调度程序成为瓶颈。调度程序运行Linux,因为Windows中打开文件描述符过多,我遇到了问题。工作节点运行Windows的主要原因是所使用的库在Linux中不可用。
我注意到调度程序上的CPU负载为100%,即仅使用一个CPU内核,其他15个处于空闲状态。我觉得调度程序是模拟中的瓶颈。
如果有必要,请运行Python 3.6.8(即将升级至3.8)。