Región de Murcia
Fundación Séneca
Ficha descriptiva

Protocolos de coherencia con consistencia total-store-order

La tendencia actual en el desarrollo de procesadores es el aumento del número de núcleos de procesamiento (cores) dentro del chip. Este tipo de arquitectura se conoce como arquitectura multicore o chip-multiprocessor (CMP). Los CMPs están presentes en todos los segmentos del mercado desde dispositivos móviles, tabletas u ordenadores personales, hasta servidores de altas prestaciones.

El soporte hardware requerido para asegurar la correcta ejecución de las aplicaciones en CMPs acarrea una complejidad extra importante debido a la necesidad de mantener la coherencia de los datos almacenados en las cachés privadas de cada uno de los cores de forma transparente al programador. De esta tarea se encarga el protocolo de coherencia de cachés.

Este protocolo puede introducir una degradación en el rendimiento de las aplicaciones debido a la latencia y al consumo de energía necesarios para mantener actualizadas todas las copias de cada dato. Además, el mantenimiento de la coherencia también requiere un área del chip considerable, el cual aumenta dramáticamente con el número de cores que forman el sistema.

Los protocolos de coherencia actualmente implementados en CMPs con un gran número de cores, tales como el Xeon Phi de Intel de 60 cores, son los basados en directorio. Este tipo de protocolos presenta serios inconvenientes, como la considerable cantidad de memoria requerida dentro del chip para almacenar la información de directorio, la ineficiencia debida a la invalidación de copias remotas o la complejidad del protocolo de coherencia debida al gran número de estados (transitorios) del protocolo.

La actividad a desarrollar consistirá en el diseño de un nuevo protocolo de coherencia que mejore los citados aspectos negativos de los protocolos de coherencia actuales. Hasta el momento, el profesor Kaxiras y yo hemos estado trabajando en mejorar los mecanismos de coherencia basándonos en un modelo de consistencia que ofrece consistencia secuencial para aplicaciones sin carreras de datos (SC-for-DRF, en inglés). Dicha colaboración ha dado fruto a numerosas publicaciones en las más prestigiosas conferencias en arquitectura de computadores. El resultado de esta investigación son protocolos de coherencia simples, sin necesidad de mantener un directorio o de inundar la red de interconexión de mensajes, con un alto rendimiento, eficientes energéticamente, capaces de soportar cachés virtualmente indexadas e etiquetadas, y con una sincronización eficiente.

Sin embargo, a pesar de las ventajas de estos protocolos, los fabricantes de procesadores que tienen que ejecutar aplicaciones legacy se muestran reluctantes a la hora de implementar procesadores que solo ofrecen un comportamiento correcto para aplicaciones sin carreras de datos.

La actividad, por tanto, a realizar durante esta estancia se centrará en un cambio radical en los protocolos de coherencia que venimos desarrollando el profesor Kaxiras y yo. En concreto, pretendemos diseñar un protocolo que ofrezca un modelo de consistencia total-store-order (TSO), que es un modelo más estricto que el SC-for-DRF, y es empleado por la mayoría de los procesadores actuales (x86). Además, queremos conseguir que el nuevo protocolo tenga las mismas ventajas en sencillez y eficiencia que los anteriormente propuestos. De este modo, esperamos que nuestra contribución suponga un gran avance en el desarrollo de multiprocesadores de propósito general escalables.

Programa

Movilidad Investigadora

Convocatoria

Estancias Externas de Investigadores 2015

Área

Tecnologías de la información y de las comunicaciones (TIC) / Arquitectura y tecnología de Computadores (035)

Expediente

19981/EE/15

Investigador

Ros Bardisa, Alberto

Grupo de Investigación

CAPS