pypy是一个python的解释器和JIT编译器。可以在不修改任何代码的情况下大幅提升python代码的性能。
使用超级简单,在官网下载编译好的二进制包进行安装,然后然后运行代码的时候指定这个解释器就行了。
我们来试试下面这段代码。
import time
t1 = time.time()
i = 10000000
while i:
i -= 1
print time.time() ...
分类:
其他好文 时间:
2014-11-16 10:45:54
阅读次数:
147
第6章讲的是类型和成员基础重要认知:虚方法虚方法的设计原则:设计一个类型时,应尽量减少所定义的虚方法的数量。 首先,调用虚方法的速度比调用非虚方法慢。 其次,JIT编译器不能内嵌虚方法,这进一步影响了性能。 第三,虚方法使组件的版本控制变得更脆弱。 第四,定义一个基类时,如果希望一些...
使用JIT(Just-In-Time)编译器
JIT编译器概览
JIT编译器是JVM的核心。它对于程序性能的影响最大。CPU只能执行汇编代码或者二进制代码,所有程序都需要被翻译成它们,然后才能被CPU执行。C++以及Fortran这类编译型语言都会通过一个静态的编译器将程序编译成CPU相关的二进制代码。PHP以及Perl这列语言则是解释型语言,只需要安装正确的解释器,它们就能运行在...
分类:
编程语言 时间:
2014-09-25 01:36:48
阅读次数:
551
第二章编写C#程序1.CTS:通用类型系统(CommonTypeSystem);--->公共类型系统。2.CLR:公共语言运行库(CommonLanguageRuntime);3.CIL:通用中间语言(CommonIntermediateLanguage);4.JIT编译器:Just-In-Time;5.GAC:全局程序集缓存(GlobalAssemblyCaches);6.垃圾回收..
分类:
其他好文 时间:
2014-09-10 12:44:21
阅读次数:
177
1.JIT的工作原理图工作原理 当JIT编译启用时(默认是启用的),JVM读入.class文件解释后,将其发给JIT编译器。JIT编译器将字节码编译成本机机器代码。 通常javac将程序源码编译,转换成java字节码,JVM通过解释字节码将其翻译成相应的机器指令,逐条读入,逐条解释翻译。非常显然,经...
分类:
编程语言 时间:
2014-08-17 21:20:12
阅读次数:
214
在Android JIT实时编译是在Android 2.2之后才引入的,JIT编译器可以显著的提高机器的性能,经过测试,android 2.2的性能较android 2.1提高了 2-5倍。JIT提高机器性能的原因是: 1.JIT实时编译器将dalvik字节码转化为本地代码。 2.本地代码直接由.....
分类:
移动开发 时间:
2014-08-16 15:02:10
阅读次数:
198
一、泛型1.CLR编译时,编译器只为MyList类型产生“泛型版”的IL代码——并不进行泛型的实例化,T在中间只充当占位符。例如:MyList类型元数据中显示的2.执行的时候,当JIT编译器第一次遇到MyList时,将用int替换“范型版”IL代码与元数据中的T—进行泛型类型的实例化。例如:Main...
分类:
Web程序 时间:
2014-08-08 21:05:06
阅读次数:
312
1.JIT的工作原理图工作原理 当JIT编译启用时(默认是启用的),JVM读入.class文件解释后,将其发给JIT编译器。JIT编译器将字节码编译成本机机器代码。 通常javac将程序源码编译,转换成java字节码,JVM通过解释字节码将其翻译成相应的机器指令,逐条读入,逐条解释翻译。非常显然,经...
分类:
编程语言 时间:
2014-07-22 22:51:56
阅读次数:
216