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.
International Journal of Embedded Systems, 2018 Vol.10 No.5, pp.394 - 405
Available online: 24 Sep 2018 *