1
3
也许你的问题是因为
因此,如果这是您的情况,那么您应该切换到线程后端,如果您能够在调用时释放全局解释器锁
这个
docs
这么说吧
|
2
3
您遇到的问题很可能是python编译器本质上的一个基本问题。 如果您阅读“ https://www.ibm.com/developerworks/community/blogs/jfp/entry/Python_Is_Not_C?lang=en “,您可以从一位专门从事优化和并行python代码的专业人士那里看到,对于python线程来说,迭代大型循环是一种固有的缓慢操作。因此,生成更多循环数组的进程只会减慢速度。 然而,有些事情是可以做的。
这个
Cython
和
Numba
编译器都是为优化类似C/C++风格的代码而设计的(即您的案例),尤其是Numba的新
@vectorise
修饰符允许标量函数以并行方式在具有大型数组的大型数组上接受和应用操作(
我不太理解您的代码,无法给出一个实现示例,但请尝试一下!这些编译器以正确的方式使用,在过去为我带来了3000000%的并行进程速度提升! |
serlingpa · 如何准备我的数据以避免无法推断频率 1 年前 |
Guillaume · 使用操作从Python列表创建numpy数组 2 年前 |
mikanim · 改进二维余弦函数的numpy功能 2 年前 |
Klimt865 · 在Python中将数组列表转换为列表列表 2 年前 |
Lynn · 如果列包含Python中的特定字符串,则从列中删除值 2 年前 |
Jan Hrubec · 选择numpy数组的前n个元素 2 年前 |