python - 如何并行化每次迭代都是并行化作业的for循环
问题描述
我想知道是否有人有并行化 for 循环的经验,其中每次迭代都是使用 python 中的多处理库的并行化函数。我试图再次使用多处理库并行化循环,但似乎该库不允许子工作者创建多处理作业。我应该考虑python中的其他并行库吗?以下是每次迭代的代码。训练数据框将在迭代之间变化。谢谢。
params = {}
pool = Pool(64)
print('---start params calculation--')
train_parallel = train[parallel_cols].copy()
start = time.time()
params = pool.starmap(proc.cal_params, zip(repeat(train_parallel), repeat(policy_segs), repeat(day_to_cum), daily_limits)) # process data_inputs iterable with pool
print(time.time() - start)
params = {key:value for element in params for key, value in element.items()}
print('---end params calculation--')
pool.close()
解决方案
推荐阅读
- dart - 没有为“NumberFormat”类定义方法“toStringDeep”
- python - On_Reaction_Add() 与 On_Ready() Discord.PY 中发送的消息
- firebase - Firebase 安全中是否需要“匹配/{document=**}”
- sql-server - 在sql中求和运行总数
- git - 如何将两个 git 合二为一
- python - 用python从CSV文件制作直方图
- python - 使用 Tensorly 的非负张量分解示例
- php - 我正在尝试将多个复选框传递给 $_POST 页面并将数据保存到数据库
- python - 为什么追加到一个对象的列表属性,会修改同一类下所有对象的属性?
- r - 我可以通过列和行专门计算方差吗