Open Access Article

Title: Direct garbage collection: two-fold speedup for managed language embedded systems

Authors: Rasmus Ulslev Pedersen; Martin Schoeberl

Addresses: Department of Digitalization, Copenhagen Business School, Denmark ' Department of Applied Mathematics and Computer Science, Technical University of Denmark, Denmark

Abstract: More and more embedded systems are emerging based on managed language runtime systems using garbage collected languages such as Java, Python, or the .NET language family. Furthermore, the garbage collection (GC) process is a bottleneck in an embedded system, effectively blocking most other processes including mutator memory access, responding to inputs, or asserting outputs. We demonstrate a valuable new heap memory architecture for garbage collected embedded systems, which works by creating a direct path between memory modules to achieve a two-fold speedup for a memory copy operation as compared to a baseline scenario using multiplexed shared address- and databusses. This direct-path memory setup is generalisable, and memory modules will continue to work as expected when not engaged in garbage collection. The solution space is evaluated by simulating GC activity extracted from the Elephant Track GC tracer. One particular solution is also implemented in hardware to demonstrate the practical realisation of the direct fast copy architecture.

Keywords: garbage collection; managed languages; embedded systems; real-time; memory; SRAM.

DOI: 10.1504/IJES.2018.095138

International Journal of Embedded Systems, 2018 Vol.10 No.5, pp.394 - 405

Received: 16 Feb 2017
Accepted: 02 Dec 2017

Published online: 01 Oct 2018 *