Fast Cycle-approximate Simulation Techniques for Manycore Architecture Exploration
Techniques de simulation rapide au niveau quasi cycle-precis pour l'exploration d'architectures manycoeurs
Abstract
Since the computational needs precipitously grow each year, HPC technology becomes a driving force for numerous scientific and consumer areas. The most powerful supercomputer has been progressing from TFLOPS to PFLOPS throughout the last ten years. However, the extremely high power consumption and therefore the high cost pushed researchers to explore more energy-efficient technologies, such as the use of low-power embedded SoCs.
The evolution of emerging manycore systems forecasted to feature hundreds of cores by the end of the decade calls for efficient solutions for the design space exploration and debugging. Available industrial and academic simulators differ in terms of simulation speed/accuracy trade-offs. Cycle-approximate simulators are popular and attractive for architectural exploration. Even though enabling flexible and detailed architecture evaluation, cycle-approximate simulators entail slow simulation speeds, thereby limiting their scope of applicability for systems with hundreds of cores. This calls for alternative approaches capable of providing high simulation speed while preserving accuracy that is crucial to architectural exploration.
In this thesis, we evaluate cycle-approximate simulation techniques for fast and accurate exploration of multi- and manycore architecture exploration. Expecting to significantly reduce simulation time still preserving the accuracy at the cycle-approximate level, we propose a hybrid trace-oriented approach to enable flexible manycore architecture simulation. We design a set of simulation techniques to overcome the main weaknesses of the trace-oriented approach. The trace synchronization technique aims to manage control and data dependencies arising from the abstraction of processor cores. The trace replication technique is proposed to simulate manycore architectures using a finite set of pre-collected traces. The computation phase scaling technique is designed to enable flexible switching between multiple processor models without considering microarchitectural difference but taking into account the computation speed ratio.
Based on the proposed simulation environment, we explore several manycore architectures in terms of performance and energy-efficiency trade-offs.
Le calcul intensif joue un rôle de premier plan pour de nombreux domaines scientifiques. La croissance en puissance crête des supercalculateurs a evolué du tera-ops au peta-ops en l'espace d'une decennie. Toutefois, la consommation d'énergie associée extrêmement élevée ainsi que le coût associé ont motivé des recherches vers des technologies plus efficaces énergetiquement comme l'utilisation de processeurs issus du domaine des systèmes embarqués à faible puissance. Selon les prévisions, les systèmes multicoeurs émergents seront constitués de centaines de coeurs d'ici la fin de la decennie. Cette évolution nécessite des solutions efficaces pour l'exploration de l'espace de conception et le débogage. Les simulateurs industriels et académiques disponibles à ce jour diffèrent en termes de compromis entre vitesse de simulation et precision. Les simulateurs quasi cycle-precis sont populaires et attrayants pour l'exploration architecturale. En outre, bien que permettant une évaluation flexible et détaillée de l'architecture, les simulateurs quasi cycle-precis entrainent des vitesses de simulation lentes ce qui limite leur champ d'application pour des systèmes avec des centaines de coeurs. Cela exige des approches alternatives capables de fournir des simulations rapides tout en préservant une précision élevée, ce qui est crucial pour l'exploration architecturale.
Dans cette thèse, des modèles d'architectures multicoeurs complexes ont été développés et évalués en utilisant des systèmes de simulation quasi cycle-precis pour l'exploration de la performance et de la puissance. Sur cette base, une approche hybride orientée traces d'exécution a été proposée pour permettre une exploration rapide, flexible et précise des architectures multicoeurs à grande échelle. Sur la base de l'environnement de simulation propose, plusieurs congurations de systèmes manycoeurs ont été construites et estimées en evaluant le passage à l'échelle des performances. Enfin, des configurations alternatives d'architectures multicoeurs hétérogènes ont été proposées et ont montré des améliorations significatives en termes d'efficacité énergétique.
Origin | Files produced by the author(s) |
---|