如何提升Python代碼的執行速度
測試環境
- 操作系統:Ubun 18.04
- CPU:Intel® Core™ i5-7300HQ CPU @ 2.50GHz
測試例子
import random
def monte_carlo_ip(nsamples):
acc = 0
for i in range(nsamples):
x = random.random()
y = random.random()
if (x ** 2 + y ** 2) < 1.0:
acc += 1
return 4.0 * acc / nsamples
print(monte_carlo_ip(100000000))
測試結果
- pypy2-jit: 2.834s
- pypy2-stm: 5.407s
- pypy3: 2.934s
- python3: 25.243s
- python3+numba: 1.726s
- Python3+Cython(不包含C代碼):6.274s