PyPy 与 Python 的一个小 timeit (二)


前面做了PyPy 与C Python 对比;


这次了解到有个叫nuitka 的玩意存在,号称“将Python 无缝 转换成C++(100%)”;


既然如此叼? 好的,Candy特意编译了一个 Python2.7.11 安装好nuitka 后进行编译。

代码与

[root@server ~]# time ./demo.exe

real    0m22.646s
user    0m22.632s
sys     0m0.007s
[root@server ~]#


 经过此役后,发现user对比 C Python 性能提升2倍,但是还是比不上PyPy的优化程度。



让我们再来看一段代码,abc.py 的代码如下:

def test(n,m):
    m=m
    vals = []
    keys = []
    for i in xrange(m):
        vals.append(i)
        keys.append('a%s'%i)
    d = None
    for i in xrange(n):
        d = dict(zip(keys, vals))
    return d
if __name__ == '__main__':
    test(1000000,100)



Python 2.7:

[root@server ~]# time python2.7 abc.py

real    0m11.284s
user    0m11.270s
sys     0m0.012s


PyPy:

[root@server ~]# time pypy abc.py

real    0m9.997s
user    0m6.752s
sys     0m1.549s



nuitka :

[root@server abc.dist]# time ./abc.exe

real    0m10.717s
user    0m10.707s
sys     0m0.006s



具体使用化解,请大家自行斟酌! 


这里只给出了一个针对性、专业性不是非常强的测试,很多情况也没考虑到;细节方面,还请各位自己测试。



你可能感兴趣的:(PyPy 与 Python 的一个小 timeit (二))