A Metaobject Protocol for Optimizing Application-Specific Run-Time Variability

被引:0
|
作者
Chari, Guido [1 ]
Garbervetsky, Diego [1 ]
Marr, Stefan [2 ]
机构
[1] UBA, FCEN, Dept Comp, ICC CONICET, Buenos Aires, DF, Argentina
[2] Johannes Kepler Univ Linz, Linz, Austria
基金
奥地利科学基金会;
关键词
D O I
10.1145/3098572.3098577
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Just-in-time compilers and their aggressive speculative optimizations reduced the performance gap between dynamic and static languages drastically. To successfully speculate, compilers rely on the program variability observed at run time to be low, and use heuristics to determine when optimization is beneficial. However, some variability patterns are hard to capture with heuristics. Specifically, ephemeral, warmup, rare, and highly indirect variability are challenges for today's compiler heuristics. As a consequence, they can lead to reduced application performance. However, these types of variability are identifiable at the application level and could be mitigated with information provided by developers. As a solution, we propose a metaobject protocol for dynamic compilation systems to enable application developers to provide such information at run time. As a proof of concept, we demonstrate performance improvements for a few scenarios in a dynamic language built on top of the Truffle and Graal system.
引用
收藏
页数:5
相关论文
共 50 条
  • [1] Designing application-specific cores using JBits: A run-time parameterizable FIR filter
    James-Roxby, P
    [J]. RECONFIGURABLE TECHNOLOGY: FPGAS AND RECONFIGURABLE PROCESSORS FOR COMPUTING AND COMMUNICATIONS III, 2001, 4525 : 18 - 26
  • [2] ARTE: An Application-specific Run-Time managEment framework for multi-cores based on queuing models
    Mariani, Giovanni
    Palermo, Gianluca
    Zaccaria, Vittorio
    Silvano, Cristina
    [J]. PARALLEL COMPUTING, 2013, 39 (09) : 504 - 519
  • [3] Run-Time Monitoring Mechanism for Efficient Design of Application-specific NoC Architectures in Multi/Manycore Era
    Ben Ahmed, Akram
    Ochi, Takayuki
    Miura, Shohei
    Ben Abdallah, Abderazek
    [J]. 2013 SEVENTH INTERNATIONAL CONFERENCE ON COMPLEX, INTELLIGENT, AND SOFTWARE INTENSIVE SYSTEMS (CISIS), 2013, : 440 - 445
  • [4] Optimizing ML with run-time code generation
    Lee, P
    Leone, M
    [J]. ACM SIGPLAN NOTICES, 1996, 31 (05) : 137 - 148
  • [5] Optimizing marshalling by run-time program generation
    Aktemur, B
    Jones, J
    Kamin, S
    Clausen, L
    [J]. GENERATIVE PROGRAMMING AND COMPONENT ENGINEERING, PROCEEDINGS, 2005, 3676 : 221 - 236
  • [6] Optimizing ML with run-time code generation
    Lee, P
    Leone, M
    [J]. ACM SIGPLAN NOTICES, 2004, 39 (04) : 542 - 553
  • [7] Business specific interaction at run-time
    Faure, D
    Grisvard, O
    Praud, S
    Sedogbo, C
    [J]. INNOVATIONS THROUGH INFORMATION TECHNOLOGY, VOLS 1 AND 2, 2004, : 1432 - 1433
  • [8] Run-time support for extensible protocol stacks
    Dandekar, H
    Purtell, A
    Schwab, S
    [J]. 2003 IEEE CONFERENCE ON OPEN ARCHITECTURES AND NETWORK PROGRAMMING PROCEEDINGS, 2003, : 43 - 52
  • [9] Coordinated Run-time Adaptation of Variability-intensive Systems: An Application in Cloud Computing
    Metzger, Andreas
    Bayer, Andreas
    Doyle, Daniel
    Sharifloo, Amir Molzam
    Pohl, Klaus
    Wessling, Florian
    [J]. 2016 IEEE/ACM 1ST INTERNATIONAL WORKSHOP ON VARIABILITY AND COMPLEXITY IN SOFTWARE DESIGN (VACE), 2016, : 5 - 11
  • [10] Exploring the relationship between parallel application run-time variability and network performance in clusters
    Evans, JJ
    Hood, CS
    Gropp, WD
    [J]. LCN 2003: 28TH CONFERENCE ON LOCAL COMPUTER NETWORKS, PROCEEDINGS, 2003, : 538 - 547