Buffer Autocompactante para Switches y Ruteadores en Sistemas Paralelos

Buffer Autocompactante para Switches y Ruteadores en Sistemas Paralelos

Armando Jiménez Flores
 

Texto completo de la Tesis     

 


Resumen

Para resolver grandes problemas, los arquitectos de computadoras buscan satisfacer la creciente demanda de capacidad de cómputo. Aún con el uso del paralelismo, el desempeño de estas máquinas está limitado por los retardos de comunicación entre sus elementos de procesamiento. Por lo que, el diseño de la red de interconexión es un factor decisivo en el desempeño de las computadoras paralelas. Típicamente, el diseño de la red se reduce al diseño del elemento de comunicación, conocido como switch o ruteador. Existen condiciones que hacen necesario el almacenamiento temporal de los datos de comunicación entre procesadores. Para ello se utilizan buffers, dentro del elemento de comunicación, que mejoran su desempeño. No obstante, si la administración del buffer es ineficiente, el desempeño del switch o ruteador se decrementa seriamente. El objetivo de esta tesis es diseñar una memoria especial de alto desempeño que permita reducir los tiempos de comunicación de datos entre los elementos de procesamiento de un sistema paralelo. Esta memoria es utilizada como buffer donde se almacenan temporalmente los datos que se transfieren entre los procesadores del sistema, y es aplicable a switches y ruteadores en sistemas de procesamiento paralelo para mejorar la latencia de comunicación. Se diseña un modelo de buffer que administra dinámicamente los espacios de almacenamiento y permite la concurrencia de operaciones de escritura y lectura. Su modelo se basa en un conjunto de cinco operaciones fundamentales que incluye escrituras o lecturas simples y operaciones paralelas que combinan una escritura con una lectura. Al buffer lo hemos denominado BAC (Buffer Auto-Compactante), porque mantiene compactado su espacio de almacenamiento. El BAC es implementado en código VHDL (Very-High-Speed-Integrated-Circuit Hardware Description Language) y simulado a nivel lógico con una herramienta computacional basada en dicho lenguaje. Se busca que el modelo del BAC administre eficientemente los espacios y tenga propiedades de baja latencia que puedan ser aprovechadas en la implementación.
Para resaltar las propiedades de alto desempeño del BAC, se diseñó completamente en hardware, con un tipo de control distribuido paralelo que utiliza una celda de control por cada localidad del buffer. La capacidad del BAC es expandible: puede crecer en ancho y largo, manteniendo constantes la complejidad de sus celdas de control y el tamaño del bus de direcciones. Cada una de las cinco operaciones fundamentales del BAC se realiza durante un solo ciclo de reloj. Estas consideraciones en el diseño reducen los retardos de comunicación debidos a la administración de los buffers e incrementan el desempeño de los elementos de comunicación.
Las contribuciones de esta tesis son las siguientes: Un análisis de las posibles configuraciones arquitecturales para un buffer de propósito específico desde la perspectiva de su desempeño, un diseño específico completo de un modelo de buffer (BAC) de baja latencia y acceso concurrente, una implementación en VHDL del BAC, un diseño y verificación funcional de los componentes que integran el BAC. Palabras clave: paralelismo, switch, ruteador, buffer, autocompactante, latencia, VHDL.