Product Design, Manufacturing & Innovation Resources
» 即时 (JIT) 编译

即时 (JIT) 编译

1990
软件工程师在现代工作空间中优化即时编译。.

(图片仅供参考)

及时 即时编译 (JIT) 是一种混合方法,它结合了编译和解释两种方法的特点。与预先编译代码 (AOT) 不同,JIT 编译先执行编译后执行代码。 编者 它在运行时,也就是在执行之前,将字节码翻译成本地机器代码。这使得可以根据实际运行时行为进行动态优化,通常比纯解释执行性能更高。

JIT 编译器在运行时环境或虚拟机中运行。当某个方法首次被调用时,其平台无关的字节码会被编译成原生机器码并缓存。后续调用该方法时,会直接执行快速的原生代码,从而避免解释执行的开销。这虽然会引入一些启动或预热延迟,但对于长期运行的应用程序来说,可以带来显著的长期性能提升。

JIT 编译的关键优势在于能够执行基于性能分析或自适应的优化。运行时可以监控代码的执行情况,收集有关哪些代码路径是“热点”(频繁执行)以及正在处理的数据类型的统计信息。静态 AOT 编译器无法获取这些运行时信息,这使得 JIT 能够做出更明智的优化决策。例如,如果 JIT 观察到某个特定的具体类型总是被使用,则可以对虚方法调用进行推测性内联。如果此假设随后被证明不成立,JIT 可以执行“反优化”,并回退到更安全的执行路径。这种动态特性使得 JIT 编译对于面向对象和动态语言来说极其有效。

UNESCO Nomenclature: 1203
- 计算机科学

类型

软件/算法

中断

重大的

用法

广泛使用

前体

  • 提前(aot)编译器
  • 口译员
  • p 码和其他字节码系统
  • 研究 smalltalk 和 lisp 等动态语言
  • 虚拟机概念

应用程序

  • Java虚拟机(jvm)
  • .net 公共语言运行时(clr)
  • 网络浏览器中的 JavaScript 引擎(例如 v8)
  • pypy,一个高性能的python实现
  • 数据库查询执行引擎

专利:

NA

潜在创新理念

由于机器人流量被拦截(目前每天超过 4 万),此内容仅限社区成员查看。
> 登录 > 或者 > 注册 < (100% 免费)即可访问此内容,以及所有其他受限内容和工具。

相关术语:JIT、即时编译、动态编译、虚拟机、JVM、CLR、V8、字节码、自适应优化、运行时。

历史背景

即时 (JIT) 编译

1980
1986-01-01
1990
1990
1993
1998
2010
1980
1982-07-01
1988-06-01
1990
1993
1997-04-23
2001
2010

(如果日期未知或不相关,例如“流体力学”,则提供其显著出现的近似估计)

相关发明、创新和技术原理

只有注册会员才能免费获得 100% 的全尺寸图片和下载。.

> 登录 <