Full system simulation of many-core heterogeneous SoCs using GPU and QEMU semihosting
ESL – Ecole Polytechnique, Federale de Lausanne, CH
Proceedings of the 5th Annual Workshop on General Purpose Processing with Graphics Processing Units (GPGPU-5), 2012
@inproceedings{raghav2012full,
title={Full system simulation of many-core heterogeneous SoCs using GPU and QEMU semihosting},
author={Raghav, S. and Marongiu, A. and Pinto, C. and Atienza, D. and Ruggiero, M. and Benini, L.},
booktitle={Proceedings of the 5th Annual Workshop on General Purpose Processing with Graphics Processing Units},
pages={101–109},
year={2012},
organization={ACM}
}
Modern system-on-chips are evolving towards complex and heterogeneous platforms with general purpose processors coupled with massively parallel manycore accelerator fabrics (e.g. embedded GPUs). Platform developers are looking for efficient full-system simulators capable of simulating complex applications, middleware and operating systems on these heterogeneous targets. Unfortunately current virtual platforms are not able to tackle the complexity and heterogeneity of state-of-the-art SoCs. Software emulators, such as the open-source QEMU project, cope quite well in terms of simulation speed and functional accuracy with homogeneous coarse-grained multi-cores. The main contribution of this paper is the introduction of a novel virtual prototyping technique which exploits the heterogeneous accelerators available in commodity PCs to tackle the heterogeneity challenge in full-SoC system simulation. In a nutshell, our approach makes it possible to partition simulation between the host CPU and GPU. More specifically, QEMU runs on the host CPU and the simulation of manycore accelerators is offloaded, through semi-hosting, to the host GPU. Our experimental results confirm the flexibility and efficiency of our enhanced QEMU environment.
March 26, 2012 by hgpu