首页> 外文会议>International Conference on Algorithms and Architectures for Parallel Processing >Exploration of the Relationship Between Just-in-Time Compilation Policy and Number of Cores
【24h】

Exploration of the Relationship Between Just-in-Time Compilation Policy and Number of Cores

机译:浅谈立交性汇编政策与核心数的关系

获取原文

摘要

Just-in-Time (JIT) compilation is a key technique for programs written in managed languages, such as Java and JavaScript. Traditionally, a conservative JIT compilation policy is used without impacting application threads too much on single-core machines. Nowadays, modern machines provide more and more processor cores, which are abundant computing resources. Modern virtual machines also have the ability to use an aggressive compilation policy, such as spawning multiple concurrent compiler threads, which is suitable to multicore situation. However, the suitable JIT compilation policy varies with the number of microprocessor cores. The goal of this work is to explore the relationship between the number of microprocessor cores on modern machines and the suitable JIT compilation policies that can enable existing as well as future VMs to realize better program performance. In this work, we design novel experiments and implement new VM configurations to effectively control the compiler aggressiveness in the industry-standard Oracle HotSpot Java VM to achieve the goal. We notice that when single core is used, traditional foreground compilation with single compiler thread has better performance. As the number of cores increases, which makes more abundant computing resources available, background compilation with more compiler threads and smaller compilation threshold reaches better performance. After comparison between the foreground compilation and the background compilation, we propose a novel compilation policy, the throttling compilation, which stops interpretation when the compilation queue is too long. This policy combines the advantages of the foreground compilation and the background compilation, which gains better performance.
机译:即时(JIT)编译是用托管语言编写的程序的关键技术,例如Java和JavaScript。传统上,使用保守的JIT编译策略,而不会在单核机器上影响应用线程过多。如今,现代机器提供了越来越多的处理器核心,这是丰富的计算资源。现代虚拟机也有能力使用攻击性编译策略,例如产卵多个并发编译器线程,这适合多核情况。但是,合适的JIT汇编策略随着微处理器核的数量而变化。这项工作的目标是探讨现代机器上的微处理器核心数量和可以实现现有的合适的JIT汇编策略,以实现更好的程序性能。在这项工作中,我们设计新颖的实验并实现了新的VM配置,以有效地控制行业标准的Oracle Hotspot Java VM中的编译器攻击性,以实现目标。我们注意到使用单核,与单个编译线程的传统前景编译具有更好的性能。随着核心的数量增加,这使得可用的更丰富的计算资源,背景编译与更多编译线程和较小的编译阈值达到更好的性能。在比较前台编译和后台编译后,我们提出了一种新颖的编译策略,限制编译,它在编译队列太长时停止解释。该策略结合了前景编译的优势和背景编译,从而提高了更好的性能。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号