Aceleradores vectoriales para procesadores superescalares
- QUINTANA DOMÍNGUEZ, FRANCISCA CANDELARIA
- Mateo Valero Cortés Directeur/trice
- Roger Espasa Sans Co-directeur/trice
Université de défendre: Universidad de Las Palmas de Gran Canaria
Fecha de defensa: 19 décembre 2001
- Roberto Moreno Díaz President
- Enrique Fernández García Secrétaire
- Francisco Tirado Fernández Rapporteur
- José María Llaberia Griño Rapporteur
- Emilio López Zapata Rapporteur
Type: Thèses
Résumé
La evolución de los procesadores superescalares actuales es costosa y fuertemente dependiente de la tecnología, y no puede realizarse simplemente aumentando el número de instrucciones que se ejecutan en cada ciclo de reloj. Nuestra propuesta consiste en explotar otra fuente alternativa de paralelismo presente en los programas, el paralelismo de datos o DLP. Este tipo de paralelismo posee ciertas ventajas inherentes, como la disminución del número de instrucciones y operaciones ejecutadas, una menor presión en la unidad de búsqueda de instrucciones, una unidad de control más sencilla, un conocimiento a priori del patrón de los accesos a memoria, un uso del 100% de los elementos accedidos a memoria y facilidad de escalado del diseño. La contribución principal de esta tesis consiste en demostrar que ILP y DLP pueden unirse en una única arquitectura para ejecutar aplicaciones numéricas y multimedia con un nivel de rendimiento que cada paradigma, por sí mismo, no podría obtener. El diseño de la arquitectura es ILP+DLP es muy similar al de un procesador superscalar actual, con el añadido de un banco de registros vectorial, y sus conexiones con las unidades funcionales, y algunos registros de propósito especial. Hemos diseñado también una nueva jerarquía de caches, basada en la "vector cache". Esta nueva cahe es capaz de enviar pequeños vectores al procesador a través de un bus ancho, consiguiéndose así un ancho de banda alto con la memoria, y una baja latencia. El estudio de repertorio de instrucciones vectorial muestra que los programas vectoriales ejecutan menor número de instrucciones, operaciones y bloques básicos debido al mayor nivel semántico de las instrucciones vectoriales. La evaluación de rendimiento de la arquitectura ILP+DLP con memoria ideal muestra que escala muy bien el rendimiento a medida que se añaden más recursos, e incluso se obtienen mejores resultados que para una arquitectura sup