Mejora del rendimiento y la escalabilidad de los multiprocesadores de memoria compartida-distribuida basados en directorios
- José Duato Marín Director/a
- José Manuel García Carrasco Codirector
Universitat de defensa: Universidad de Murcia
Fecha de defensa: 27 de de març de 2003
- Mateo Valero Cortés President/a
- Pedro Juan López Rodríguez Secretari/ària
- Emilio López Zapata Vocal
- Ramón Beivide Palacio Vocal
- D. Hill Mark Vocal
Tipus: Tesi
Resum
A pesar de que a través del uso de protocolos de coherencia de caché basados en directorios podemos llevar a cabo la realización de multiprocesadores de memoria compartida escalables y de alto rendimiento, más allá de los límites de los protocolos basados en fisgoneo, existen una serie de factores que limitan el número máximo de nodos que una máquina cc-NUMA puede ofrecer con una buena relación coste/rendimiento. Dos de estos factores son la sobrecarga de circuitería que supone el uso de los directorios, principalmente la cantidad de memoria necesaria para almacenar esta información, y las largas latencias de los fallos de L2 que caracterizan alos multiprocesadores cc-NUMA actuales. En la presente tesis presentamos una serie de propuestas cuyo objetivo es el de paliar estos dos problemas. En primer lugar presentamos una nueva organización para el directorio, que hemos denominado directorio de dos niveles, a través de la cual se consigue reducir de forma significativa la sobrecarga de memoria introducida por la información de directorio sin que ello suponga una pérdida de rendimiento. Además, presentamos el concepto de agrupamiento multicapa y derivamos tres nuevos códigos de compartición comprimidos con menores requerimientos en cuanto a memoria se refiere que los propuestos con anterioridad. A continuación añadimos a la arquitectura de directorio de dos niveles un tercer nivel que integramos, junto con una caché para datos compartidos, dentro de chip del procesador como una forma de acelerar significativamente los fallos de L2. Esta nueva arquitectura de nodo que derivamos a partir de una clasificación de los fallos de L2 en función del trabajo realizado por el directorio para resolverlos, consigue obtener importantes reducciones en la componente de la latencia debida al directorio para todas las categorias de la clasificación. Por último, presentamos también dos técnicas basadas en el uso de predicto