
379
10
장
파이썬 성능 개선
이 방식은 코드 실행 속도를
20
배에서
100
배까지 개선한다.
10.5.2
Numba
알고리즘 구조상
Numba
를 적용하면 좀 더 속도 개선을 할 수 있다. 그리고 실제로
ndarray
버
전에 적용한 함수
ewma
_
nb
( )
에서는 속도 개선이 가능했다.
In [159]: ewma_nb = numba.jit(ewma_py)
In [160]: %time data['EWMA_NB'] = ewma_nb(data[sym], alpha)
➊
CPU times: user 269 ms, sys: 11.4 ms, total: 280 ms
Wall time: 294 ms
In [161]: %timeit data['EWMA_NB'] = ewma_nb(data[sym], alpha)
➊
30.9 ms ± 1.21 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)
In [162]: %time data['EWMA_NB'] = ewma_nb(data[sym].values, alpha)
➋
CPU times: user 94.1 ms, sys: 3.78 ms, total: 97.9 ms
Wall time: 97.6 ms
In [163]: %timeit data['EWMA_NB'] = ewma_nb(data[sym].values, ...