Enabling Adaptive Techniques in Heterogeneous MPSoCs Based on Virtualization
This article explores the use of virtualization to enable mechanisms like task migration and dynamic mapping in heterogeneous MPSoCs, thereby targeting the design of systems capable of adapt their behavior to time-changing workloads. Because tasks may have to be mapped to target processors with different instruction set architectures, we propose the use of Low Level Virtual Machine (LLVM) to postcompile the tasks at runtime depending on their target processor. A novel dynamic mapping heuristic is also proposed, aiming to exploit the advantages of specialized processors while taking into account the overheads imposed by virtualization. Extensive experimental work at different levels of abstraction-FPGA prototype, RTL and system-level simulation-is presented to evaluate the proposed techniques.
heterogeneous mpsocs virtualization task migration dynamic mapping design performance