Numba庫使用簡介
1.基本用法
@jit(nopython=True)
@jit(nogil=True)
@jit(nopython=True, nogil=True)
@jit(cache=True)
#保存函數編譯結果到一個基於文件的緩存中。可以通過傳遞cache=True實現
2.高級用法
@jit(nopython=True, parallel=True)
#編譯器將編譯一個版本,並行運行多個原生的線程(沒有GIL)
@njit #這個裝飾器與@jit(nopython=True)等價
@vectorize([float64(float64, float64)])
#注意順序,精度低的在前,高的在後
#其中, float64(float64, float64)]表示數據精度
#示例
@vectorize([int32(int32, int32),
int64(int64, int64),
float32(float32, float32),
float64(float64, float64)])
def f(x, y):
return x + y
參考鏈接: https://www.jianshu.com/p/69d9d7e37bc5