Bringing the web up to speed with WebAssembly
The maturation of the Web platform has given rise to sophisticated and demanding Web
applications such as interactive 3D visualization, audio and video software, and games. With …
applications such as interactive 3D visualization, audio and video software, and games. With …
A survey of adaptive optimization in virtual machines
Virtual machines face significant performance challenges beyond those confronted by
traditional static optimizers. First, portable program representations and dynamic language …
traditional static optimizers. First, portable program representations and dynamic language …
One VM to rule them all
Building high-performance virtual machines is a complex and expensive undertaking; many
popular languages still have low-performance implementations. We describe a new …
popular languages still have low-performance implementations. We describe a new …
The java {HotSpot™} server compiler
M Paleczny, C Vick, C Click - Java (TM) Virtual Machine Research and …, 2001 - usenix.org
Performance for the Java™ Platform has evolved in stages. Early VM's were interpreter-only.
Later VM's were interpreter plus template generated code, and finally interpreter plus …
Later VM's were interpreter plus template generated code, and finally interpreter plus …
[PDF][PDF] A tutorial on behavioral reflection and its implementation
J Malenfant, M Jacques, FN Demers - Proceedings of the …, 1996 - researchgate.net
The efficient implementation of behaviorally reflective languages imposes a formidable
challenge. By definition, behavioral reflection allows a program to modify, even at run-time …
challenge. By definition, behavioral reflection allows a program to modify, even at run-time …
Practical partial evaluation for high-performance dynamic language runtimes
Most high-performance dynamic language virtual machines duplicate language semantics
in the interpreter, compiler, and runtime system. This violates the principle to not repeat …
in the interpreter, compiler, and runtime system. This violates the principle to not repeat …
Design of the Java HotSpot™ client compiler for Java 6
T Kotzmann, C Wimmer, H Mössenböck… - ACM Transactions on …, 2008 - dl.acm.org
Version 6 of Sun Microsystems' Java HotSpot™ VM ships with a redesigned version of the
client just-in-time compiler that includes several research results of the last years. The client …
client just-in-time compiler that includes several research results of the last years. The client …
A framework for reducing the cost of instrumented code
Instrumenting code to collect profiling information can cause substantial execution
overhead. This overhead makes instrumentation difficult to perform at runtime, often …
overhead. This overhead makes instrumentation difficult to perform at runtime, often …
Griffin: Guarding control flows using intel processor trace
Researchers are actively exploring techniques to enforce control-flow integrity (CFI), which
restricts program execution to a predefined set of targets for each indirect control transfer to …
restricts program execution to a predefined set of targets for each indirect control transfer to …
Initialize once, start fast: application initialization at build time
Arbitrary program extension at run time in language-based VMs, eg, Java's dynamic class
loading, comes at a startup cost: high memory footprint and slow warmup. Cloud computing …
loading, comes at a startup cost: high memory footprint and slow warmup. Cloud computing …