多处理嵌套python循环

时间:2016-05-07 19:10:59

标签: python multithreading numpy multiprocessing

为了改进我的代码有一个沉重的循环,我需要加快速度。如何为这样的代码实现多处理? (a典型的大小为2,l大小为10)

 fopen("students/students.txt", "r");

1 个答案:

答案 0 :(得分:2)

如果HeavyComputationThatIsThreadSafe1函数只使用数组而不使用python对象,我会使用concurrent futures(或python2 backportThreadPoolExecutorNumba(发布了GIL或cython)。否则使用ProcessPoolExecutor

请参阅:

http://numba.pydata.org/numba-doc/latest/user/examples.html#multi-threading

您希望在最外层循环的级别上并行计算,然后从每个线程/进程生成的块中填充output。这假设这样做的成本比计算便宜得多,应该是这种情况。