Mon 3 Apr 2017 15:30 - 15:55 at D2.10 - GC, and Concurrency

A common problem arising from embedding a virtual machine as a component in a larger software system is the management of references between the VM’s managed heap and the embedder’s heap. Direct references between components allow fast communication, but can result in cycles over component boundaries, making these hybrid systems prone to memory leaks. In this paper we present a design and implementation of a tracing mechanism for effective and efficient garbage collection over component boundaries which is implemented and shipped in Chrome’s JavaScript virtual machine V8 and the Blink rendering engine. Tracing through the C++ heap of Blink poses several challenges on which we elaborate: 1) an abstract visitation mechanism for C++ objects that can be used by the V8 garbage collector, 2) write barriers for C++ objects to reduce pauses through incremental marking, and 3) a mechanism to verify correctness of write barrier usage.

Extended Abstract (morevms17-final4.pdf)108KiB

Mon 3 Apr

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

15:30 - 17:00
GC, and ConcurrencyMoreVMs at D2.10
15:30
25m
Talk
Garbage Collection as a Joint Venture
MoreVMs
File Attached
15:55
25m
Talk
OpenCL JIT Compilation for Dynamic Programming Languages
MoreVMs
Juan Fumero The University of Edinburgh, Michel Steuwer The University of Edinburgh, Lukas Stadler Oracle Labs, Austria, Christophe Dubach University of Edinburgh
File Attached
16:20
25m
Talk
An Extensible Virtual Machine Design for the Execution of High-level Languages on Tagged-token Dataflow Machines
MoreVMs
Mathijs Saey Vrije Universiteit Brussel, Joeri De Koster Vrije Universiteit Brussel, Belgium, Jennifer B. Sartor Sofware Languages Lab, Vrije Universiteit Brussel, Wolfgang De Meuter Vrije Universiteit Brussel
File Attached
16:45
25m
Talk
Moving beyond single-threaded concurrency
MoreVMs
Marek Marecki Polish-Japanese Academy of Information Technology
File Attached