PAYJIT: space-optimal JIT compilation and its practical implementation
PAYJIT: space-optimal JIT compilation and its practical implementation
复制标题
PAYJIT:空间优化的JIT编译及其实际实现
DOI:
10.1145/3178372.3179523
复制
发表时间:
2018
期刊:
影响因子:
--
通讯作者:
Zhang, Yan
中科院分区:
文献类型:
--
作者:
Brock, Jacob;Ding, Chen;Xu, Xiaoran;Zhang, Yan
Just-in-time (JIT) compilation in dynamic programming languages can improve execution speed in code with hot sections. However, that comes at the cost of increased memory usage for the storage of compiled code and associated bookkeeping data, as well as up-front compilation time for the hot code.The current standard JIT compilation policy (used in both Android's JIT compiler and the HotSpot Java compiler) is simplistic; any method that has reached a certain hotness, as counted by invocations and loop iterations, is scheduled for compilation. This would be fine if the cost/benefit of compilation was the same for every method of a given hotness, but that is not the case. In fact, compiling a large method will likely result in less overall speedup than compiling a smaller, equally hot method. This exposes an opportunity for improvement. We propose the PAYJIT compilation policy for method-based JIT compilers, which scales compilation hotness thresholds with method sizes, and includes two-point tuning, a mechanism for determining those hotness thresholds. In this way, PAYJIT compiles more small methods, it compiles them sooner, and it nearly eliminates the compilation of large methods that contribute little to overall speedup.Among 10 popular Android apps tested across 16 experiments, the PAYJIT compilation policy decreases compilation time by a maximum of 49.2%, with an average of 18.7%; execution time by a maximum of 10.9%, with an average of 1.34% (for a geometric mean speedup of 1.46%); and code cache size by a maximum of 41.1%, with an average of 15.6%.
登录
查看更多内容
DOI:
10.1145/1141277.1141488
发表时间:
2006-04
期刊:
Proceedings of the 2006 ACM symposium on Applied computing
影响因子:
--
作者:
G. Agosta;S. Crespi-Reghizzi;P. Palumbo;M. Sykora
通讯作者:
G. Agosta;S. Crespi-Reghizzi;P. Palumbo;M. Sykora
DOI:
10.1145/1094811.1094835
发表时间:
2005-10
期刊:
--
影响因子:
--
作者:
Matthew Arnold;Adam Welc;V. T. Rajan
通讯作者:
Matthew Arnold;Adam Welc;V. T. Rajan
DOI:
--
发表时间:
2016
期刊:
ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems
影响因子:
--
作者:
Forrest J. Robinson;Michael R. Jantz;P. Kulkarni
通讯作者:
P. Kulkarni
DOI:
--
发表时间:
2016
期刊:
Conf. Computing Frontiers
影响因子:
--
作者:
Jie Fu;Guojie Jin;Longbing Zhang;Jian Wang
通讯作者:
Jian Wang
DOI:
--
发表时间:
2012
期刊:
Conference on Object-Oriented Programming Systems, Languages, and Applications
影响因子:
--
作者:
H. Inoue;H. Hayashizaki;Peng Wu;T. Nakatani
通讯作者:
T. Nakatani