Skip to main content

Thesis defence of Marie Badaroux (SLS team): Dynamic Binary Translation speed and accuracy trade-offs: investigating parallel scalability and cache simulation

Thesis defence / SLS

On March 12, 2024

Marie BADAROUX - SLS team

Composition of the jury
Frédéric PÉTROT - Thesis director - Full professor - Grenoble INP / TIMA Laboratory
Erven ROHOU - Rapporteur - Research Director - Centre INRIA, Université de Rennes
Tanguy RISSET - Rapporteur - Full professor - INSA Lyon
Marie-Laure POTET - Examinator - Full professor - Grenoble INP
Henri-Pierre CHARLES - Examinator - Research Director - CEA Grenoble
Kevin MARTIN - Examinator - Associate professor - Université de Bretagne Sud
Julie DUMAS - Guest - Associate professor - Grenoble INP / TIMA Laboratory

Title: Dynamic Binary Translation speed and accuracy trade-offs: investigating parallel scalability and cache simulation
Keywords: Dynamic Binary Translation, multi-core,cache, instrumentation, QEMU

Abstract: The semiconductor industry continues its trend towards the production of increasingly efficient designs. Currently, it does so by making these devices more and more complex through the integration of "everything" on a chip. However, the time to market and manufacturing costs are non-negligible constraints which make the test and evaluation of such designs particularly challenging. Simulation technologies appear as a solution to let the designers do the evaluation in an appropriate time and cost. Given the performances it achieves and the high level of abstraction it provides, Dynamic Binary Translation (DBT) is the most compelling simulation approach for cross-simulation of software centric systems. The resulting simulation is, however, purely functional. The emerging trend around multi and many-core systems with up to hundreds of cores impacts the simulation mechanisms to make them take advantages of the host architecture and DBT is not an exception to the rule. Improving the DBT mechanism raises the question of how to keep a good balance between speed and accuracy. On the one hand, working on increasing the DBT speed positively affects the balance. On the other hand, adding modeling for new architectural features in the simulation calls the balance into question, as it degrades the performance. Thus, to stay in line with the principles at work when developing DBT, it is preferable to do so by limiting the overhead induced by the new features. The first contribution of this thesis aims at increasing the performance of the parallel simulation by investigating thread affinity of the simulated cores on the physical host cores. The second contribution focuses on a functional cache simulation model that takes benefits of the DBT mechanism and more general solutions to reduce the impact of adding a cache simulation in the simulation. We chose QEMU, the most stable and widely used simulator of its kind, as the DBT engine to implement our contributions.

Titre : Compromis en termes de vitesse et de précision de la Traduction Binaire Dynamique : étude du passage à l’échelle de la version parallèle et d’une simulation de cache
Mots-clés : Traduction Binaire Dynamique, multi-coeur, cache,instrumentation, QEMU

Résumé : L'industrie du semiconducteur continue de tendre vers une production de systèmes de plus en plus efficaces. Ceci est rendu possible par la conception de systèmes de plus en plus complexes qui vient à l'intégration de "tout ce qui est possible" sur une unique puce. Cependant, les délais de commercialisation et les coûts de fabrication de ces systèmes sont des contraintes non négligeable qui rendent le test et l'évaluation particulièrement difficiles. Les technologies de simulation apparaissent comme une solution pour permettre aux concepteurs de réaliser l'évaluation dans des délais raisonnable avec un coût approprié. Compte tenu des performances qu'elle atteint et du haut niveau d'abstraction qu'elle offre, la Traduction Binaire Dynamique (TBD) est l'approche de simulation la plus convaincante pour la simulation croisée de systèmes centrés sur les logiciels. La simulation qui en résulte est cependant purement fonctionnelle. La tendance émergente autour des systèmes multicœurs qui possèdent jusqu'à des centaines de cœurs impacte les mécanismes de simulation et les pousse à tirer parti de l'architecture de la machine hôte et la TBD ne fait pas exception à la règle. Améliorer les mécanismes de la TBD soulève la question de comment maintenir un bon équilibre entre vitesse et précision. D'une part, travailler sur l'accélération de la vitesse de simulation affecte positivement cet équilibre. D'autre part, l'ajout de la modélisation de nouvelles fonctionnalités architecturales dans la simulation remet en question cet équilibre, car les performances seront dégradées. Ainsi, pour rester en cohérence avec les principes à l’œuvre lors du développement de la TBD, il est nécessaire d'introduire ces modèles en limitant leur surcoût. La première contribution de cette thèse vise à augmenter les performances de la simulation parallèle en étudiant l'affinité des processus des cœurs simulés sur les cœurs physiques de la machine hôte. La deuxième contribution se concentre sur un modèle de simulation de cache fonctionnel qui profite du mécanisme de la TBD et des solutions générales pour réduire le surcoût d'ajouter une simulation de cache dans la simulation. Nous avons choisi QEMU, le simulateur le plus stable et le plus utilisé de ce type, comme outil reposant sur la TBD pour mettre en œuvre nos contributions.

Date

On March 12, 2024
Complément date

12/03/2024 - 10:30

Localisation

Complément lieu

Grenoble INP (Viallet) - Amphi Gosse

Submitted on February 9, 2024

Updated on March 6, 2024