Implementación de una plataforma HW para la evaluación de predictores e saltos sobre arquitectura SPARC v8
Loading...
Download
Official URL
Full text at PDC
Publication date
2008
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Citation
Abstract
Los predictores de salto supusieron una gran vía de investigación para la rama de la informática dedicada al estudio e investigación de la arquitectura de los computadores. Su principal objetivo, como el de la gran mayoría de las nuevas ideas en hardware, es la reducción de los tiempos de computación dentro de un procesador, permitiendo realizar la misma carga de trabajo en menos tiempo. Para ello se han ido desarrollando con el tiempo diferentes algoritmos de predicción, cada uno con sus ventajas y sus inconvenientes, pero cuyo resultado en una arquitectura real no puede simularse hasta una vez creada esta, con el consiguiente gasto y riesgo de resultados. Es en esta parte cuando nuestro proyecto resulta destacable. Las herramientas actuales preparadas para simular y medir el éxito o no de un predictor son costosas, además de ser extremadamente lentas (al estar basadas en software y emulación), por lo que conseguir introducir varios de estos predictores en un sistema real y de uso industrial haciendo uso de un sistema hardware reconfigurable como una FPGA resulta ampliamente beneficioso, no ya en coste, sino en tiempo. Para lograr este objetivo hemos implementado una plataforma de evaluación en la que hemos incluido varios predictores que, unidos a un procesador comercial reconocido, nos ha permitido evaluar el rendimiento de cada predictor para diferentes programas. Estos programas, creados expresamente para la medición de datos (comúnmente denominados benchmarks) presentan patrones en su diseño bien diferenciados, lo que permite establecer con exactitud y rapidez qué predictor es el más adecuado para un sistema dado teniendo en cuenta tanto el coste HW como las características de las aplicaciones que se van a ejecutar.
[ABSTRACT]Branch prediction opened up an important research line for the computer science field dedicated to computer architecture. Its main goal, shared by most novel computer architecture techniques, is to improve the performance of processors, in order to carry out the same workload faster. Many prediction schemes have been proposed and developed in order to achieve this objective,, each of them applying different strategies and with different HW cost. To identify the optimal predictor for a given architecture and set of applications designers must carry out extensive simulations In this context our project presents an important contribution. The current tools used for simulation and test of the efficiency of a predictor are normally based on software emulation. However, this approach provides very slow simulation speed. In this project we propose to use a HW platform based on FPGAs to evaluate very fast several branch predictors in a real industry-used system. To this end, we have implemented an evaluation platform for branch predictors, and we have tested it including representative branch prediction schemes that, connected to a commercial processor, have allowed us to evaluate the efficiency of each predictor for several programs. These programs, developed specifically for performance measurement (commonly known as benchmarks) show clearly distinguished execution patterns, and our platform allow us to accurately identify witch predictor is most suitable for each benchmark taking into account its efficiency and its area cost.
Description
Trabajo de clase de la asignatura Sistemas Informáticos (Facultad de Informática, Curso 2007-2008)