Estudio e implementación de un simulador para evaluar el rendimiento de microarquitecturas asíncronas
- Colmenar Verdugo, José Manuel
- José Ignacio Hidalgo Pérez Directeur
- Juan Lanchares Dávila Directeur
- Antonio Óscar Garnica Alcazar Directeur
Université de défendre: Universidad Complutense de Madrid
Fecha de defensa: 07 novembre 2008
- Luis Piñuel Moreno Secrétaire
Type: Thèses
Résumé
Esta tesis se dedica al estudio e implementación de una herramienta capaz de evaluar el rendimiento de un procesador superescalar asíncrono de propósito general a través de la simulación, a nivel arquitectónico, del comportamiento dinámico de una microarquitectura donde los tiempos de cómputo de sus componentes sean variables. Para conseguir este objetivo se han cumplido una serie de objetivos secundarios cuyas principales aportaciones se explican a continuación. Se ha propuesto y verificado una metodología de caracterización de tiempos de cómputo variables basada en la utilización de funciones de distribución de probabilidad (FDPs). Esta metodología, apoyada en conceptos estadísticos, parte de una muestra de retardos y obtiene como resultado una FDP suficientemente representativa. Se ha creado un modelo genérico para caracterizar la latencia de un circuito. Según el modelo, la latencia se obtiene como resultado de la agregación de tres factores: tiempo de cómputo, espera debida a la disponibilidad del circuito receptor, y tiempo de protocolo. El modelo permite modelar circuitos síncronos, asíncronos y mixtos como GALS ó LAGS. Se ha propuesto una microarquitectura superescalar asíncrona de 64 bits con predicción de saltos y ejecución dinámica de instrucciones. La microarquitectura se divide en doce dominios de sincronización que se agrupan en cinco etapas: Fetch, Issue, Exec, Write-back y Commit. Cada dominio puede disponer de una temporización independiente del resto. Se ha desarrollado y validado Sim-async, un nuevo simulador arquitectónico basado en SimpleScalar que modela la microarquitectura anteriormente descrita, separando su funcionalidad de su temporización. El simulador adopta la caracterización genérica de la latencia que se ha propuesto, utilizando FDPs para describir la variabilidad en el tiempo de cómputo. Tanto la configuración general como la descripción de las funciones de distribución se realiza a través de archivos XML. Su funcionalidad y utilidad se han demostrado a través de varias simulaciones de los SPEC2000.