stringtranslate.com

NEC SX-Aurora TSUBASA

Servidor NEC SX-Aurora TSUBASA A300-8 con ocho motores vectoriales en exhibición en el stand de NEC en SC'17 en Denver

El NEC SX-Aurora TSUBASA es un procesador vectorial de la familia de arquitectura NEC SX . [1] [2] A diferencia de las supercomputadoras SX anteriores , el SX-Aurora TSUBASA se proporciona como una tarjeta PCIe, denominada por NEC como "Vector Engine" (VE). [2] Se pueden insertar ocho tarjetas VE en un host vectorial (VH), que normalmente es un servidor x86-64 que ejecuta el sistema operativo Linux . [2] El producto se anunció en un comunicado de prensa el 25 de octubre de 2017 y NEC comenzó a venderlo en febrero de 2018. [3] El producto sucede al SX-ACE .

Hardware

SX-Aurora TSUBASA es el sucesor de la serie SX de NEC y SUPER-UX , que son sistemas informáticos vectoriales en los que se basa la supercomputadora Earth Simulator . Su hardware consta de hosts Linux x86 con motores vectoriales (VE) conectados a través de una interconexión PCI Express (PCIe). [4]

El ancho de banda de memoria alto (0,75–1,2 TB/s) proviene de ocho núcleos y seis módulos de memoria HBM2 en un intercalador de silicio implementado en el formato de una tarjeta PCIe. [5] La funcionalidad del sistema operativo para el VE se descarga al VH y se maneja principalmente por daemons de espacio de usuario que ejecutan el VEOS. [6]

Dependiendo de la frecuencia de reloj (1,4 o 1,6 GHz), cada CPU VE tiene ocho núcleos y un rendimiento máximo de 2,15 o 2,45  TFLOPS en doble precisión. El procesador tiene la primera implementación del mundo de seis módulos HBM2 en un intercalador de silicio con un total de 24 o 48 GB de memoria de alto ancho de banda. Está integrado en el formato de una tarjeta PCIe estándar de longitud completa, altura completa y doble ancho que está alojada en un servidor x86_64, el Vector Host (VH). El servidor puede alojar hasta ocho VE, los clústeres VH pueden escalar a un número arbitrario de nodos. [1] [7] [2]

Lanzamientos de productos

Versión 2 del motor vectorial [8]

Versión 1 del motor vectorial

La versión 1.0 del Vector Engine se produjo en un proceso FinFET de 16 nm (de TSMC ) y se lanzó en tres SKU (las versiones posteriores agregan una E al final): [9]

Unidades funcionales

Cada uno de los ocho núcleos SX-Aurora tiene 64 registros vectoriales lógicos. [10] Estos tienen una longitud de 256 x 64 bits implementados como una mezcla de tuberías y unidades SIMD paralelas de 32 pliegues. Los registros están conectados a tres unidades de multiplicación y suma de punto flotante FMA que pueden ejecutarse en paralelo, así como dos unidades lógicas aritméticas ALU que manejan operaciones de punto fijo y una tubería de división y raíz cuadrada. [10] Considerando solo las unidades FMA y su paralelismo SIMD de 32 pliegues, un núcleo vectorial es capaz de realizar 192 operaciones de doble precisión por ciclo. [10] En operaciones vectoriales "empaquetadas", donde se cargan dos valores de precisión simple en el espacio de una ranura de doble precisión en los registros vectoriales, la unidad vectorial ofrece el doble de operaciones por ciclo de reloj en comparación con la doble precisión.

Una unidad de procesamiento escalar (SPU) maneja instrucciones no vectoriales en cada uno de los núcleos.

Memoria y cachés

La memoria del procesador SX-Aurora TSUBASA consta de seis módulos de memoria HBM2 de segunda generación de alto ancho de banda implementados en el mismo encapsulado que la CPU con la ayuda de la tecnología Chip-on-Wafer-on-Substrate. Dependiendo del modelo de procesador, los módulos HBM2 son módulos 3D de 4 u 8 matrices con una capacidad de 4 u 8 GB cada uno. Por lo tanto, las CPU SX-Aurora tienen una memoria HBM2 de 24 GB o 48 GB. Los modelos implementados con módulos HBM2 grandes tienen un ancho de banda de memoria de 1,2 TB/s. [11]

Los núcleos de un motor vectorial comparten 16 MB de "Last-Level-Cache" (LLC), una caché de escritura diferida conectada directamente a los registros vectoriales y a la caché L2 de la SPU. El tamaño de línea de la caché LLC es de 128 Bytes. La prioridad de retención de datos en la LLC puede controlarse hasta cierto punto en el software, lo que permite al programador especificar cuáles de las variables o matrices deben conservarse en la caché, una característica comparable a la del Advanced Data Buffer (ADB) del NEC SX-ACE .

Plataformas

NEC vende actualmente el motor vectorial SX-Aurora TSUBASA integrado en cuatro plataformas: [12] [9]

Dentro de un nodo VH, los VE pueden comunicarse entre sí a través de PCIe. Los sistemas paralelos grandes creados con SX-Aurora utilizan Infiniband en una configuración PeerDirect como interconexión.

NEC también solía vender el motor vectorial SX-Aurora TSUBASA integrado en cinco plataformas:

Todos los tipos están refrigerados exclusivamente por aire, con excepción de la serie A500, que también utiliza refrigeración por agua.

Software

Sistema operativo

El sistema operativo del motor vectorial (VE) se denomina "VEOS" y ha sido descargado por completo al sistema anfitrión, el host vectorial (VH). [14] VEOS consta de módulos de núcleo y demonios de espacio de usuario que:

VEOS admite la multitarea en el VE y casi todas las llamadas al sistema Linux son compatibles con la libc del VE. [15] La descarga de servicios del sistema operativo al VH desplaza la inestabilidad del sistema operativo fuera del VE a expensas de mayores latencias. [15] Todos los paquetes relacionados con el sistema operativo VE tienen licencia de la Licencia Pública General de GNU y se han publicado en github.com/veos-sxarr-nec .

Desarrollo de software

NEC ofrece un kit de desarrollo de software para desarrolladores y clientes. Contiene productos patentados y debe adquirirse a través de NEC. El SDK contiene:

NEC MPI también es una implementación propietaria y se ajusta a la especificación estándar MPI-3.1. [19]

Se pueden crear programas híbridos que utilicen el VE como acelerador para ciertas funciones del núcleo del host mediante la descarga de VE C-API. [20] Hasta cierto punto, la descarga de VE es comparable a OpenCL y CUDA, pero proporciona una API más simple y permite que los núcleos se desarrollen en C, C++ o Fortran normales y utilicen casi cualquier llamada al sistema en el VE. [ cita requerida ] Los enlaces de Python a VEO están disponibles en github.com/SX-Aurora/py-veo .

Comparación de funciones matemáticas

1 NEC Numerical Library Collection es una colección de bibliotecas matemáticas que respaldan el desarrollo de programas de simulación numérica.

Referencias

  1. ^ ab "NEC SX-Aurora TSUBASA - Vector Engine". www.nec.com . Consultado el 20 de marzo de 2018 .
  2. ^ abcd Morgan, Timothy Prickett (27 de octubre de 2017). "¿Se puede revivir la supercomputación vectorial?". The Next Platform .
  3. ^ "NEC lanza una nueva línea de productos HPC de alta gama, SX-Aurora TSUBASA". NEC . Consultado el 21 de marzo de 2018 .
  4. ^ Imai, Teruyuki (2019), Gerofi, Balazs; Ishikawa, Yutaka; Riesen, Rolf; Wisniewski, Robert W. (eds.), "NEC Earth Simulator y SX-Aurora TSUBASA", Sistemas operativos para supercomputadoras y computación de alto rendimiento , High-Performance Computing Series, vol. 1, Singapur: Springer, págs. 139-160, doi :10.1007/978-981-13-6624-6_9, ISBN 978-981-13-6624-6, Número de identificación del sujeto  204811906
  5. ^ Morgan, Timothy Prickett (22 de noviembre de 2017). "Una mirada profunda al motor vectorial Aurora de NEC". The Next Platform . Consultado el 2 de julio de 2020 .
  6. ^ Focht, Erich. "Primeros pasos con el motor vectorial SX-Aurora TSUBASA". sx-aurora.github.io . Consultado el 2 de julio de 2020 .
  7. ^ Folleto de TSUBASA SX-Aurora
  8. ^ "Modelos de NEC Vector Engine". www.nec.com . Consultado el 15 de septiembre de 2020 .
  9. ^ ab "SX-Aurora TSUBASA" (PDF) . NEC Corporation . Febrero de 2020.
  10. ^ abc "Arquitectura NEC SX-Aurora TSUBASA". www.nec.com . Consultado el 20 de marzo de 2018 .
  11. ^ "SX-Aurora - Microarquitecturas - NEC - WikiChip". en.wikichip.org . Consultado el 2 de julio de 2020 .
  12. ^ "NEC SX-Aurora TSUBASA".
  13. ^ "NEC SX-Aurora TSUBASA A500-64". www.nec.com .
  14. ^ "NEC SX Aurora TSUBASA — Documentación de VSC 1.0". vlaams-supercomputing-centrum-vscdocumentation.readthedocs-hosted.com . Consultado el 2 de julio de 2020 .
  15. ^ abc "Un vistazo al último procesador vectorial de NEC, el SX-Aurora". WikiChip Fuse . 2018-12-09 . Consultado el 2020-08-27 .
  16. ^ "NEC SX Aurora TSUBASA — Documentación de VSC 1.0". vlaams-supercomputing-centrum-vscdocumentation.readthedocs-hosted.com . Consultado el 27 de agosto de 2020 .
  17. ^ "Documentación TSUBASA de NEC SX-Aurora".
  18. ^ "Sistema vectorial NEC SX-Aurora TSUBASA". Rechenzentrum der CAU . Consultado el 27 de agosto de 2020 .
  19. ^ "Guía del usuario de NEC MPI".
  20. ^ "SX-Aurora/veoffload". GitHub . Consultado el 21 de marzo de 2018 .

Enlaces externos