Mejora de la eficiencia energética de sistemas de memoria transaccional hardware para arquitecturas multinúcleo
- Manuel Eugenio Acacio Sánchez Director
- Juan Fernández Peinador Director
Defence university: Universidad de Murcia
Fecha de defensa: 15 January 2016
- José Manuel García Carrasco Chair
- Francisco J. Alfaro Cortés Secretary
- Julio Sahuquillo Borras Committee member
Type: Thesis
Abstract
TESIS: Mejora de la Eficiencia Energética de Sistemas de Memoria Transaccional Hardware para Arquitecturas Multinúcleo Resumen Las actuales arquitecturas de procesador con múltiples núcleos de ejecución (arquitecturas multinúcleo o CMP) se presentan con un gran reto difícil de superar para la mayoría de los programadores. El clásico modelo de programación secuencial sigue siendo aplicable en un CMP, sin embargo mediante su empleo no se estarían aprovechando los múltiples núcleos de procesamiento de que disponen estos chips. Para poder extraer todo el rendimiento posible de un CMP es necesario recurrir a la programación paralela y al uso de varios hilos de ejecución. A través de ellos se consigue exprimir el paralelismo a nivel de hilo (TLP) que estas arquitecturas explotan. El modelo de Memoria Transaccional (TM) está siendo promovido actualmente como un nuevo paradigma mediante el cual los programadores pueden desarrollar sus aplicaciones de forma cercana al paradigma secuencial al que están acostumbrados, pero habilitando los beneficios del uso de varios núcleos de ejecución. La identificación en el código de las secciones críticas es la única condición nueva que debe satisfacerse. Enmarcando estas secciones en bloques de código denominados transacciones, el sistema de Memoria Transaccional (TM) se encarga de asegurar las propiedades de atomicidad y aislamiento a pesar de la ejecución de los mismos en paralelo. Todo ello de forma totalmente transparente al programador, que no debe preocuparse por los problemas típicos achacados al uso de los cerrojos clásicos (interbloqueo, convoying e inversión de prioridades). En esta tesis doctoral se presta atención a las implementaciones hardware del modelo de Memoria Transaccional (HTM). Por otra parte, la búsqueda del rendimiento de forma aislada ha dejado de ser la principal motivación en el desarrollo de procesadores para pasar a serlo el rendimiento por watio. El rendimiento sigue siendo importante pero no a costa de un consumo desmesurado de energía. El objetivo de esta tesis es abordar el diseño de sistemas HTM teniendo en cuenta tanto rendimiento como consumo de energía. Para ello, se analiza con detalle en primer lugar el rendimiento y consumo energético que las implementaciones hardware actuales ofrecen (eager-eager y lazy-lazy). Los resultados de este estudio comparativo permiten identificar las ventajas e inconvenientes de cada uno de estos sistemas de memoria transaccional y son el punto de partida para proponer técnicas encaminadas a mejorar los aspectos problemáticos que cada sistema presenta. Por un lado, para los sistemas eager-eager se ha observado que una fracción importante de la energía consumida es debida a los conflictos que surgen entre transacciones. Se han desarrollado, implementado y evaluado diversas políticas que permiten serializar en tiempo de ejecución transacciones que entran en conflicto sólo cuando éste se produce sin que se produzcan ciclos de que den lugar a interbloqueos. El resultado final ha sido un sistema eager-eager más eficiente desde el punto de vista del consumo de energía sin pérdida de prestaciones. Por otro lado, el principal problema en los sistemas lazy-lazy se encuentra en la etapa de confirmación de las transacciones, más concretamente en las operaciones que son necesarias para garantizar que una transacción ha finalizado sin conflictos. Para solucionarlo se ha implementado y evaluado una técnica hardware que permite acelerar, mejorar la eficiencia energética y simplificar la principal propuesta diseñada hasta ahora en sistemas HTM escalables. Concretamente se ha propuesto emplear una red específica de bajo coste y un protocolo implementado en hardware. A lo largo de la tesis se hace uso de un entorno de desarrollo y pruebas ampliamente aceptado, conformado por la herramienta de simulación SIMICS+GEMS y la suite de benchmarks STAMP. Los resultados de esta tesis ofrecen una visión amplia sobre el compromiso entre rendimiento-energía de sistemas HTM sofisticados.