我有一个python脚本,可以通过多处理在旧的四核笔记本电脑上运行。模拟不能并行化,我只是在不同的内核上运行模拟的不同实例。
我当时正在考虑在Google计算引擎上租用一些更强大的cpus。我能否仅在具有更多可用内核的情况下使用相同的python多处理脚本?
该脚本只调用一个池,然后多次套用
答案 0 :(得分:0)
是的,应该有可能。例如,如果您需要访问同一实例上的多个核心,则使用Compute Engine作为基础VM的App Engine flexible runtime可以configure the number of cores available
答案 1 :(得分:0)
多重处理在Google VM上的工作方式与在本地机器上相同(大致...)。为了使用盒子上所有可用的内核,请勿将processes
参数传递给multiprocesing.Pool
,例如:
pool = multiprocessing.Pool(processes=None)
这将使Python创建具有Pool
个进程的multiprocessing.cpu_count()
,cpu_count
通常是许多内核。