Procesador Manycore - Manycore processor

Los procesadores Manycore son tipos especiales de procesadores multinúcleo diseñados para un alto grado de procesamiento paralelo , que contienen numerosos núcleos de procesador independientes más simples (desde unas pocas decenas de núcleos hasta miles o más). Los procesadores Manycore se utilizan ampliamente en computadoras integradas y en computación de alto rendimiento .

Contraste con la arquitectura multinúcleo

Los procesadores de muchos núcleos se distinguen de los procesadores de múltiples núcleos en que están optimizados desde el principio para un mayor grado de paralelismo explícito y para un mayor rendimiento (o menor consumo de energía) a expensas de la latencia y un menor rendimiento de un solo hilo .

La categoría más amplia de procesadores de múltiples núcleos , por el contrario, generalmente está diseñada para ejecutar de manera eficiente tanto código paralelo como serial y , por lo tanto, poner más énfasis en un alto rendimiento de un solo hilo (por ejemplo, dedicar más silicio a la ejecución fuera de orden , tuberías más profundas , más superescalar unidades de ejecución y cachés más grandes y generales) y memoria compartida . Estas técnicas dedican recursos en tiempo de ejecución a descubrir el paralelismo implícito en un solo hilo. Se utilizan en sistemas en los que han evolucionado continuamente (con compatibilidad con versiones anteriores) a partir de procesadores de un solo núcleo. Por lo general, tienen unos 'pocos' núcleos (por ejemplo, 2, 4, 8) y pueden complementarse con un acelerador de muchos núcleos (como una GPU ) en un sistema heterogéneo .

Motivación

La coherencia de la caché es un problema que limita el escalado de los procesadores multinúcleo. Los procesadores de Manycore pueden evitar esto con métodos como el paso de mensajes , la memoria del bloc de notas , DMA , el espacio de direcciones global particionado o cachés de solo lectura / no coherentes. Un procesador de muchos núcleos que utiliza una red en un chip y memorias locales brinda al software la oportunidad de optimizar explícitamente el diseño espacial de las tareas (por ejemplo, como se ve en las herramientas desarrolladas para TrueNorth ).

Muchos procesadores de núcleo pueden tener más en común (conceptualmente) con tecnologías que se originan en la computación de alto rendimiento , como clústeres y procesadores vectoriales .

Las GPU pueden considerarse una forma de procesador de muchos núcleos que tiene varias unidades de procesamiento de sombreado y solo es adecuado para código altamente paralelo (alto rendimiento, pero rendimiento de subproceso único extremadamente deficiente).

Modelos de programación adecuados

Clases de sistemas manycore

Arquitecturas de muchos núcleos específicas

Computadoras de muchos núcleos específicos con más de 1 millón de núcleos de CPU

Varias computadoras construidas a partir de procesadores multinúcleo tienen un millón o más de núcleos de CPU individuales. Ejemplos incluyen:

  • Sunway TaihuLight , una supercomputadora china masivamente paralela (núcleos de CPU de 10 millones) , que alguna vez fue una de las supercomputadoras más rápidas del mundo, utiliza una arquitectura de muchos núcleos personalizada. En noviembre de 2018, la tercera supercomputadora más rápida del mundo (clasificada en la lista TOP500 ), la china Sunway TaihuLight , obtiene su rendimiento de 40,960 procesadores de muchos núcleos SW26010, cada uno con 256 núcleos.
  • Gyoukou ( japonés : 暁 光Hepburn : gyōkō , luz del amanecer), una supercomputadora desarrollada por ExaScaler y PEZY Computing .
  • SpiNNaker , un procesador de muchos núcleos masivamente paralelo (1 millón de núcleos de CPU) construido como parte del Proyecto Cerebro Humano

Ver también

Referencias

enlaces externos