并行 for 循环 python
parallel for loop python
我想在 python 中并行化一个 for 循环。
循环由生成器提供,我预计有 10 亿个项目。
事实证明,joblib 存在巨大的内存泄漏
Parallel(n_jobs=num_cores)(delayed(testtm)(tm) for tm in powerset(all_turns))
我不想在这个循环中存储数据,有时只是打印一些东西,但主线程在几秒钟内增长到 1 GB 大小。
有没有其他框架可以做大量迭代的?
from multiprocessing import Pool
if __name__ == "__main__":
pool = Pool() # use all available CPUs
for result in pool.imap_unordered(delayed(testtm), powerset(all_turns),
chunksize=1000):
print(result)
我想在 python 中并行化一个 for 循环。
循环由生成器提供,我预计有 10 亿个项目。
事实证明,joblib 存在巨大的内存泄漏
Parallel(n_jobs=num_cores)(delayed(testtm)(tm) for tm in powerset(all_turns))
我不想在这个循环中存储数据,有时只是打印一些东西,但主线程在几秒钟内增长到 1 GB 大小。
有没有其他框架可以做大量迭代的?
from multiprocessing import Pool
if __name__ == "__main__":
pool = Pool() # use all available CPUs
for result in pool.imap_unordered(delayed(testtm), powerset(all_turns),
chunksize=1000):
print(result)