2
所以我需要改善我一直在努力的腳本的執行時間。我開始與numba JIT裝飾工作,試圖並行計算然而它拋出我numba @jit慢了一點,純粹的python?
KeyError: "Does not support option: 'parallel'"
,所以我決定測試nogil如果解除從我的CPU整體的能力,但它比純Python我不明白爲什麼這個慢事情發生了,如果有人可以幫助我,或指引,我將非常感激
import numpy as np
from numba import *
@jit(['float64[:,:],float64[:,:]'],'(n,m),(n,m)->(n,m)',nogil=True)
def asd(x,y):
return x+y
u=np.random.random(100)
w=np.random.random(100)
%timeit asd(u,w)
%timeit u+w
10000圈,最好的3:每循環 137微秒最慢的運行速度比最快的耗時較長7.13倍。這可能意味着正在緩存中間結果 1000000個循環,最好爲3:每個循環1.75μs
嗨@JoshAdel感謝您的回答,我真正的代碼是algorith所以它遍歷相同的功能,檢查改進,所以我不知道如果優化的aguments值的不斷變化和嵌套函數量如果我矢量化執行最多的函數將會是一個問題。再次感謝你 – jmparejaz