编程语言
首页 > 编程语言> > Python程序的脏并行化

Python程序的脏并行化

作者:互联网

我有一个程序可以循环加载2600张图像,进行一些处理并返回一个值.伪代码:

for file in files:
  codes[file] = my_function(file)
return codes

问题是-此过程大约需要20-30分钟,并且似乎仅使用一个CPU内核.我正在寻找一种快速而肮脏的方法来在更多的内核上运行它,也许是通过将列表分成两部分来实现的.我已经阅读了很多有关Python及其问题/解决方案的文章,但我不知道下一步该怎么做.我该怎么做呢?

FYI在2009 Macbook Pro(Core 2 Duo)上使用Python 2.7(带有Numpy Scipy Scikit图像和图片) OpenCV.

解决方法:

最简单的方法是进行多重处理:

from multiprocessing import Pool

with Pool() as p:
    all_codes = p.map(my_function, files)
return {f:code for code, f in zip(all_codes, files)}

标签:scikit-image,scipy,python,numpy
来源: https://codeday.me/bug/20191029/1959836.html