【发布时间】:2014-10-20 23:11:20
【问题描述】:
python 中并行创建大型稀疏矩阵 M 的正确方法是什么?理想情况下,每个线程将负责为行的子集设置值。生成的矩阵将输入到分类器。 python 全局解释器锁会妨碍高效的并行化吗?
假设输入列表 I 由元组 (i, j, k) 组成。希望为 I 中的所有元组设置 M[i,j] = k。
M = scipy.sparse.dok_matrix((num_rows, num_cols))
for i, j, k in I:
M[i, j] = k
【问题讨论】:
-
这是一个相当开放的问题;有很多方法可以做并行。我个人的股票之一是 ipython-parallel,但你应该看看教程而不是在这里问。
-
“python 全局解释器锁会阻止高效的并行化吗?” 是的。
-
您的数据集有多大?您要处理多少矩阵行?
-
10 亿行 x 10K 列
标签: python parallel-processing