Communication Dans Un Congrès Année : 2023

Fast Instruction Cache Simulation is Trickier than You Think

Résumé

Given the performances it achieves, dynamic binary translation is the most compelling simulation approach for cross-emulation of software centric systems. This speed comes at a cost: simulation is purely functional. Modeling instruction caches by instrumenting each target instruction is feasible, but severely degrades performances. As the translation occurs per target instruction block, we propose to model instruction caches at that granularity. This raises a few issues that we detail and mitigate. We implement this solution in the QEMU dynamic binary translation engine, which brings up an interesting problem inherent to this simulation strategy. Using as test vehicle a multicore RISC-V based platform, we show that a proper model can be nearly as accurate as an instruction accurate model. On the PolyBench/C and PARSEC benchmarks, our model slows down simulation by a factor of 2 to 10 compared to vanilla QEMU. Although not negligible, this is to be balanced with the factor of 20 to 60 for the instruction accurate approach.

Fichier principal
Vignette du fichier
qemu-icache.pdf (616.57 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Licence

Dates et versions

hal-04131264 , version 1 (16-06-2023)

Licence

Identifiants

Citer

Marie Badaroux, Julie Dumas, Frédéric Pétrot. Fast Instruction Cache Simulation is Trickier than You Think. DroneSE and RAPIDO: System Engineering for constrained embedded systems (RAPIDO 2023), Jan 2023, Toulouse, France. pp.48-53, ⟨10.1145/3579170.3579261⟩. ⟨hal-04131264⟩
141 Consultations
774 Téléchargements

Altmetric

Partager

  • More