Ir al contenido

Documat


Resumen de Técnicas para mejorar la eficiencia energética de los CMPs con coherencia de caché= Improving the energy-efficiency of cache-coherent multi-cores.

Antonio García Guirado

  • Resumen en castellano Objetivos Con el fin de los beneficios energéticos del escalado clásico de los transistores, la eficiencia energética se convirtió en el principal objetivo de los diseños de microprocesador. Las mejoras de los transistores no pueden compensar al mismo ritmo que en el pasado los costes energéticos de mejorar el rendimiento con frecuencias mayores y microarquitecturas más complejas. Ahora más que nunca, los arquitectos de computadores deben proporcionar el crecimiento de rendimiento esperado a través de diseños más eficientes energéticamente. Hace algunos años los multiprocesadores en un chip (CMPs), formados por núcleos relativamente simples, se adoptaron como una arquitectura con mayor eficiencia energética, convirtiéndose en la principal corriente de diseño. Sin embargo, los CMPs plantean dificultades particulares en su diseño. En esta tesis abordamos dos cuestiones con creciente importancia al escalar los CMPs: el consumo de energía de la red del chip (NoC) y la escalabilidad de la coherencia de caché, y proponemos mecanismos para mitigar su impacto en la eficiencia energética. Al aumentar la cantidad de núcleos, la información de coherencia de caché llegaría a ocupar la mayor parte del área de almacenamiento del chip si no somos capaces de desarrollar esquemas de coherencia escalables y eficientes energéticamente. Además, las tendencias actuales indican que la NoC acabaría usando la mayor parte de la energía del chip si no se toman medidas para evitarlo. Metodología Cada propuesta de esta tesis fue evaluada contra otras soluciones recientes, demostrando su eficacia, y puesta en contexto con el estado del arte. Para ello se utilizó un extenso conjunto de herramientas, incluyendo simuladores detallados como Simics, GEMS y GEM5 para modelar el rendimiento de los CMPs, simuladores de red como GARNET y simuladores de consumo energético como McPAT, Orion o CACTI. Un diseño tiled-CMP, representativo de los multiprocesadores actuales en cualquier segmento de mercado, se usó como base sobre la que implementar nuestras propuestas. Resultados Para mejorar la escalabilidad de la coherencia de caché proponemos un nuevo esquema de coherencia basado en un chip dividido en áreas enlazadas que reduce notablemente el tamaño del almacenamiento usado por la información de compartición. También proponemos una organización de caché unificada que elimina la sobrecarga y complejidad de las estructuras de almacenamiento de directorio aprovechando los recursos compartidos de caché para almacenar alternativamente datos o información de directorio con granularidad de entrada de caché. Esta organización usa eficientemente los recursos de almacenamiento, asignando a información de directorio sólo el (pequeño) número de entradas necesarias de la memoria caché unificada. Demostramos que esta organización es escalable a grandes números de núcleos (e.g., 512 trivialmente y 1 millón con códigos compartidos elaborados). Para reducir el impacto del escalado de la NoC desarrollamos técnicas para aumentar la proximidad entre datos y núcleos a nivel de la arquitectura y políticas para utilizar de manera eficiente la novedosa tecnología de transmisión fotónica en silicio de bajo consumo. Para aumentar la cercanía de datos, proponemos un mecanismo que obtiene datos de un proveedor cercano en la zona en que se encuentra el núcleo que solicita los datos, a nivel de protocolo de coherencia de caché. A nivel de organización de caché proponemos una nueva organización cuyo objetivo es minimizar la distancia media para acceder al último nivel de cache, reduciendo la energía necesaria para alimentar los núcleos con datos. Para permitir la explotación de la fotónica en silicio abrimos el campo de las políticas dinámicas de gestión de NoCs híbridas fotónicas-electrónicas, haciendo uso eficiente de las propiedades particulares de cada tecnología con fina granularidad de mensaje, resultando en importantes beneficios en rendimiento, energía y latencia. Resumen en inglés Objectives With the end of the energy benefits of classical transistor scaling, energy-efficiency became the driving factor of microprocessor design. The energy costs of increasing operating frequencies and using more aggressive microarchitectures to improve performance can no longer be compensated by transistor technology advances at the same rate as in the past. Now more than ever, computer architects are left in charge of providing the expected growth of microprocessor performance by means of more energy-efficient designs, in order to make cost-effective use of the ever-increasing transistor density in chips within a limited power budget. Otherwise, microprocessor evolution would be doomed to hit the power wall. Some years back, chip multiprocessors (CMPs) containing relatively simple cores were deemed a suitable architecture in the search for energy-efficiency and went mainstream. However, CMPs pose particular challenges in their design. In this thesis we tackle two paramount issues with growing importance as we scale out CMPs, namely network-on-chip power consumption and cache coherence scalability, and we propose mechanisms to alleviate their impact on the energy-efficiency of CMPs. As the core count increases, cache coherence information may eventually account for most storage area on chip if we fail to provide scalable and energy-efficient coherence schemes. In addition, current trends indicate that networks-on-chip (NoCs) would end up taking up most of the chip energy budget unless measures are taken to prevent it. Methodology To carry out this research, a comprehensive set of tools was used, including detailed simulators such as Simics, GEMS and GEM5 to model the timing of CMPs, network simulators such as GARNET, as well as power simulators such as McPAT, Orion or CACTI. A tiled-CMP design, representative of current multiprocessors in every market segment, was used as a baseline with realistic features on which to implement our proposals. Every proposal was evaluated against state of the art counterparts to prove their effectiveness. Results To improve the scalability of cache coherence, we propose a new coherence scheme based on a chip divided in linked areas that noticeably reduces the size of the storage used to maintain sharing information. Then, we propose a unified cache organization that eliminates the overhead and complexity of directory storage structures by leveraging shared cache resources to alternately store data or directory information at a cache entry granularity. This organization makes efficient use of storage resources as just the required (small) number of entries are allocated for directory information in the unified cache. We show that this organization is scalable to very large core counts (e.g. 512 trivially and one million with elaborate sharing codes). To reduce the impact of network scaling, we develop techniques to increase the proximity of data to cores at the architecture level, and policies to efficiently use disruptive low-power transmission technologies such as silicon photonics. For increasing data proximity, in this thesis we propose a mechanism that retrieves data from a close provider in the area in which the core requesting the data is located, working at the cache coherence protocol level. At the cache organization level, we propose a new organization that aims at minimizing the average distance to access the last level cache, reducing the energy required to feed the cores with data. To enable the exploitation of photonics, we open the field of dynamic policies for arbitrating hybrid photonic-electronic NoCs, making energy-efficient use of the particular properties of both technologies at a fine message granularity, resulting in important benefits in throughput, energy and latency.


Fundación Dialnet

Mi Documat