ScholarGate
Asistente

Arquitectura Paralela y Multinúcleo

La arquitectura paralela y multinúcleo se refiere al hardware que ejecuta muchas operaciones simultáneamente —múltiples núcleos en un chip, unidades vectoriales y SIMD, y GPUs masivamente paralelas— junto con las estructuras de memoria y comunicación que permiten que el trabajo paralelo se desarrolle de manera correcta y eficiente.

Encontrar tema con PaperMindPróximamenteFind papers & topics
Tools & resources
Descargar diapositivas
Learn & explore
VídeoPróximamente

Definition

La arquitectura paralela y multinúcleo es el diseño de hardware informático que realiza múltiples cálculos simultáneamente a través de núcleos replicados, unidades de datos paralelas amplias o aceleradores especializados, junto con los mecanismos de interconexión y memoria que los coordinan.

Scope

Esta área abarca las organizaciones de hardware para el paralelismo: multiprocesadores en chip y diseños de muchos núcleos, sistemas de memoria compartida y la coherencia y consistencia que requieren, procesadores SIMD y vectoriales para el paralelismo a nivel de datos, y arquitecturas de GPU. Trata cómo se construye el hardware paralelo y cómo escala su rendimiento. Excluye el aspecto de software de la programación paralela y distribuida y los sistemas distribuidos a escala de clúster, que se cubren en computación distribuida y paralela, y el motor de ejecución de un solo núcleo cubierto en microarquitectura de procesadores.

Sub-topics

Core questions

  • ¿Cómo escala el rendimiento el hardware paralelo y qué limita esa escalada?
  • ¿Cómo se integran múltiples núcleos en un chip y se conectan a la memoria compartida?
  • ¿Qué garantías de consistencia y coherencia de memoria debe proporcionar el hardware de memoria compartida?
  • ¿Cómo explotan los diseños SIMD, vectoriales y de GPU el paralelismo a nivel de datos?
  • ¿Cómo se adaptan las arquitecturas paralelas a las cargas de trabajo para maximizar el rendimiento útil por vatio?

Key concepts

  • multiprocesador en chip
  • paralelismo a nivel de hilo
  • paralelismo a nivel de datos
  • procesamiento SIMD y vectorial
  • GPU y multinúcleo
  • memoria compartida y coherencia
  • consistencia de memoria
  • red de interconexión
  • ley de Amdahl y escalabilidad
  • hardware de sincronización

Key theories

Ley de Amdahl
La aceleración obtenida al paralelizar un cálculo está limitada por la fracción que debe ejecutarse secuencialmente: incluso con un número ilimitado de procesadores, la porción serial limita la aceleración general, lo que influye en cómo se diseñan y evalúan las arquitecturas paralelas.
Taxonomía de paralelismo estilo Flynn
El hardware paralelo se organiza según cómo se combinan los flujos de instrucciones y datos —por ejemplo, instrucción única, datos múltiples (SIMD) para el paralelismo de datos e instrucción múltiple, datos múltiples (MIMD) para sistemas multinúcleo y multiprocesador— una clasificación que enmarca las elecciones arquitectónicas.

Mechanisms

Los procesadores multinúcleo colocan varios núcleos en un mismo chip, compartiendo uno o más niveles de caché y una interfaz de memoria, conectados por una interconexión en el chip. Los protocolos de coherencia mantienen sus cachés consistentes, y un modelo de consistencia de memoria define el orden de las operaciones de memoria vistas a través de los núcleos. El hardware de datos paralelos —unidades vectoriales, carriles SIMD y GPUs con muchos núcleos ligeros— aplica una operación a muchos elementos de datos, mientras que las primitivas de sincronización coordinan los hilos paralelos.

Clinical relevance

Después de que la escalada de la frecuencia de reloj de un solo núcleo se estancara, la arquitectura paralela y multinúcleo se convirtió en el camino principal hacia un mayor rendimiento, por lo que prácticamente todos los procesadores modernos son multinúcleo. Las GPUs y las unidades SIMD ahora impulsan los gráficos, la computación científica y las operaciones matriciales en el corazón del aprendizaje profundo, haciendo que el hardware paralelo sea central para las cargas de trabajo de alto rendimiento y de inteligencia artificial.

History

Las máquinas paralelas datan de superordenadores vectoriales como el Cray-1 en la década de 1970 y de multiprocesadores de investigación de las décadas de 1980 y 1990. El fin de la escalada de frecuencia a mediados de la década de 2000 impulsó a la industria hacia los chips multinúcleo como estándar. Las GPUs evolucionaron de pipelines gráficos de función fija a aceleradores programables de muchos núcleos, y las arquitecturas de datos paralelos se convirtieron en fundamentales para el aprendizaje automático moderno.

Debates

Multinúcleo de propósito general versus aceleradores especializados
Con rendimientos decrecientes del multinúcleo homogéneo, existe un debate sobre hasta qué punto favorecer los aceleradores específicos de dominio (GPUs, unidades tensoriales) frente a los núcleos de propósito general, sopesando la programabilidad y la flexibilidad frente a la eficiencia para cargas de trabajo particulares.

Key figures

  • Gene Amdahl
  • Michael J. Flynn
  • John L. Hennessy
  • David A. Patterson
  • David E. Culler

Related topics

Seminal works

  • hennessy2019
  • amdahl1967
  • patterson2020

Frequently asked questions

¿Por qué los procesadores pasaron a tener múltiples núcleos?
El aumento de la frecuencia de reloj de un solo núcleo alcanzó límites de potencia y calor a mediados de la década de 2000. La adición de más núcleos aumentó el rendimiento total dentro del mismo presupuesto de energía, por lo que el multinúcleo se convirtió en la forma dominante de mantener el crecimiento del rendimiento, aunque traslada la carga de la aceleración al software paralelo.
¿En qué se diferencia una GPU de una CPU multinúcleo?
Una CPU tiene unos pocos núcleos potentes optimizados para una ejecución de propósito general de baja latencia. Una GPU tiene muchos núcleos más simples optimizados para un trabajo de datos paralelos de alto rendimiento, ejecutando la misma operación en muchos elementos de datos, lo que es adecuado para gráficos y computación numérica densa, pero no para todas las cargas de trabajo.

Methods for this concept

Related concepts