Dynamic type checking in Jalapeño
Bowen Alpern, Anthony Cocchi, et al.
JAVA VM 2001
Virtual machines face significant performance challenges beyond those confronted by traditional static optimizers. First, portable program representations and dynamic language features, such as dynamic class loading, force the deferral of most optimizations until runtime, inducing runtime optimization overhead. Second, modular program representations preclude many forms of whole-program interprocedural optimization. Third, virtual machines incur additional costs for runtime services such as security guarantees and automatic memory management. To address these challenges, vendors have invested considerable resources into adaptive optimization systems in production virtual machines. Today, mainstream virtual machine implementations include substantial infrastructure for online monitoring and profiling, runtime compilation, and feedback-directed optimization. As a result, adaptive optimization has begun to mature as a widespread production-level technology. This paper surveys the evolution and current state of adaptive optimization technology in virtual machines. © 2005 IEEE.
Bowen Alpern, Anthony Cocchi, et al.
JAVA VM 2001
Paolina Centonze, Gleb Naumovich, et al.
ISSTA 2006
Ioana Baldini, Stephen J. Fink, et al.
SBAC-PAD 2014
Manu Sridharan, Stephen J. Fink, et al.
ACM SIGPLAN Notices