如何加速Python程序

(*-*)浩
(*-*)浩 原创
2019-07-05 14:29:32 1956浏览

这次就说一种简单的方式来加速python计算速度的方法,就是使用numba库来进行,numba库可以使用JIT技术即时编译,达到高性能,另外也可以使用cuda GPU的计算能力来加速,对python来说是一个提速非常好的工具库,使用简单,但是安装稍微复杂一些。

安装完成numba就可以使用了。(推荐学习:Python视频教程

下面写一个小案例来看一下加速后的程序和加速前的程序的区别,借用官网上最经典的例子:

#!/usr/bin/env python
# coding=utf-8
from numba import jit
from numpy import arange
import time

@jit
def sum2d(arr):
    M, N = arr.shape
    result = 0.0
    for i in range(M):
        for j in range(N):
            result += arr[i,j]
    return result

a = arange(9).reshape(3,3)
start_time = time.time()
for i in range(10000000):
    sum2d(a)
end_time = time.time()
print (end_time - start_time)

这里使用numpy生成三行三列的矩阵,[[0,1,2],[3,4,5],[6,7,8]]然后做二维累加计算,值显然应该是36,这里做了10000000次这样的计算,使用@jit注解可以直接的使用numba jit技术实时编译,从而提高速度,最终运行时间大约是3.86s,如果去掉注解的话那么运行时间大约是25.45s从这里可以看出来大约有6.6倍的性能提升,所以使用numba加速python程序确实是方便简单

更多Python相关技术文章,请访问Python教程栏目进行学习!

以上就是如何加速Python程序的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。