NEC SX-Aurora TSUBASA

Процессор компьютера
Сервер NEC SX-Aurora TSUBASA A300-8 с восемью векторными двигателями на стенде NEC на выставке SC'17 в Денвере

NEC SX-Aurora TSUBASAвекторный процессор семейства архитектуры NEC SX . [1] [2] В отличие от предыдущих суперкомпьютеров SX , SX-Aurora TSUBASA поставляется в виде карты PCIe, называемой NEC «Vector Engine» (VE). [2] Восемь карт VE могут быть вставлены в векторный хост (VH), который обычно представляет собой сервер x86-64 , работающий под управлением операционной системы Linux . [2] Продукт был анонсирован в пресс-релизе 25 октября 2017 года, и NEC начала продавать его в феврале 2018 года. [3] Продукт приходит на смену SX-ACE .

Аппаратное обеспечение

SX-Aurora TSUBASA является преемником серии NEC SX и SUPER-UX , которые являются векторными вычислительными системами, на которых основан суперкомпьютер Earth Simulator . Его аппаратное обеспечение состоит из хостов x86 Linux с векторными движками (VE), подключенными через PCI Express (PCIe)-соединение. [4]

Высокая пропускная способность памяти (0,75–1,2 ТБ/с) достигается за счет восьми ядер и шести модулей памяти HBM2 на кремниевом интерпозере, реализованном в форм-факторе карты PCIe. [5] Функциональность операционной системы для VE выгружается в VH и обрабатывается в основном демонами пользовательского пространства, запускающими VEOS. [6]

В зависимости от тактовой частоты (1,4 или 1,6 ГГц) каждый ЦП VE имеет восемь ядер и пиковую производительность 2,15 или 2,45  TFLOPS в двойной точности. Процессор имеет первую в мире реализацию шести модулей HBM2 на интерпозере Silicon с общим объемом памяти с высокой пропускной способностью 24 или 48 ГБ. Он интегрирован в форм-фактор стандартной полноразмерной, полноразмерной и двухширинной карты PCIe, размещенной на сервере x86_64, Vector Host (VH). Сервер может размещать до восьми VE, кластеры VH могут масштабироваться до произвольного количества узлов. [1] [7] [2]

Выпуски продукции

Версия 2 Векторный двигатель [8]

Артикул20А20Б
Тактовая частота (в ГГц)1.61.6
Количество ядер108
Основная пиковая производительность

(двойная точность GFLOPS)

307307
Основная пиковая производительность

(одинарная точность GFLOPS)

614614
Пиковая производительность ЦП

(двойная точность, терафлопс)

3.072.45
Пиковая производительность ЦП

(одинарная точность, терафлопс)

6.144.91
Пропускная способность памяти (ТБ/с)1.531.53
Объем памяти (ГБ)4848

Версия 1 Векторный двигатель

Версия 1.0 Vector Engine была произведена по 16 нм техпроцессу FinFET (от TSMC ) и выпущена в трех SKU (последующие версии добавляют E в конце): [9]

Артикул10А10Б10С10АЕ10BE10 н.э.
Тактовая частота (в ГГц)1.61.41.41.5841.4081.400
Количество ядер888888
Основная пиковая производительность

(двойная точность GFLOPS)

307.2268.8268.8304270268
Основная пиковая производительность

(одинарная точность GFLOPS)

537608540537
Пиковая производительность ЦП

(двойная точность, терафлопс)

2.452.152.152.432.162.15
Пиковая производительность ЦП

(одинарная точность, терафлопс)

4.94.34.34.864.324.30
Пропускная способность памяти (ТБ/с)1.21.20,751.351.351.00
Объем памяти (ГБ)484824484824

Функциональные единицы

Каждое из восьми ядер SX-Aurora имеет 64 логических векторных регистра. [10] Они имеют длину 256 x 64 бита, реализованную как смесь конвейера и 32-кратных параллельных блоков SIMD. Регистры подключены к трем блокам умножения и сложения с плавающей точкой FMA, которые могут работать параллельно, а также к двум арифметическим логическим блокам ALU, обрабатывающим операции с фиксированной точкой, и конвейеру деления и квадратного корня. [10] Принимая во внимание только блоки FMA и их 32-кратный параллелизм SIMD, векторное ядро ​​способно выполнять 192 операции двойной точности за цикл. [10] В «упакованных» векторных операциях, где два значения одинарной точности загружаются в пространство одного слота двойной точности в векторных регистрах, векторный блок обеспечивает вдвое больше операций за такт по сравнению с двойной точностью.

Скалярный процессор (SPU) обрабатывает невекторные инструкции на каждом из ядер.

Память и кэши

Память процессора SX-Aurora TSUBASA состоит из шести модулей памяти HBM2 второго поколения с высокой пропускной способностью, реализованных в том же корпусе, что и ЦП, с помощью технологии Chip-on-Wafer-on-Substrate. В зависимости от модели процессора модули HBM2 представляют собой 4- или 8-кристальные 3D-модули емкостью 4 или 8 ГБ каждый. Таким образом, процессоры SX-Aurora имеют либо 24 ГБ, либо 48 ГБ памяти HBM2. Модели, реализованные с большими модулями HBM2, имеют пропускную способность памяти 1,2 ТБ/с. [11]

Ядра векторного двигателя совместно используют 16 МБ "Last-Level-Cache" (LLC), кэш обратной записи, напрямую подключенный к векторным регистрам и кэшу L2 SPU. Размер строки кэша LLC составляет 128 байт. Приоритет сохранения данных в LLC может в некоторой степени контролироваться программно, что позволяет программисту указывать, какие из переменных или массивов должны сохраняться в кэше, функция, сопоставимая с функцией Advanced Data Buffer (ADB) NEC SX-ACE .

Платформы

В настоящее время NEC продает векторный двигатель SX-Aurora TSUBASA, интегрированный в четыре платформы: [12] [9]

  • A111-1: ПК в корпусе Tower с одной картой VE типа 10B
  • A101-1: ПК в корпусе Tower с одной картой VE типа 10CE
  • A311-4: масштабируемый сервер Xeon с двумя сокетами, высотой 1U и высотой 19 дюймов, монтируемый в стойку, оснащенный четырьмя картами VE типа BE
  • A311-8: масштабируемый сервер Xeon с двумя сокетами, высотой 4U и высотой 19 дюймов, с возможностью установки в стойку и возможностью установки до восьми карт VE типа BE
  • A511-64: 19-дюймовая стойка, оборудованная 64 VE типа AE. Это единственная конфигурация, которая явно продается как суперкомпьютер.

В узле VH VE могут взаимодействовать друг с другом через PCIe. Большие параллельные системы, созданные с помощью SX-Aurora, используют Infiniband в настройке PeerDirect в качестве межсоединения.

NEC также продавала векторный двигатель SX-Aurora TSUBASA, интегрированный в пять платформ:

  • A100-1: ПК в корпусе Tower с одной картой VE типа 10C.
  • A300-2: сервер Skylake высотой 1U с одним сокетом, монтируемый в стойку, оснащенный двумя картами VE типа 10B или 10C.
  • A300-4: двухпроцессорный сервер Skylake высотой 1U, монтируемый в стойку, оснащенный четырьмя картами VE типа 10B или 10C.
  • A300-8: двухпроцессорный сервер Skylake высотой 4U, монтируемый в стойку, с возможностью установки до восьми карт VE типа 10B или 10C.
  • A500-64: стойка, оборудованная процессорами семейства Intel Xeon Silver 4100 или Intel Xeon Gold 6100 и 32, 48 или 64 виртуальными средами типа 10A или 10B. [13]

Все типы имеют исключительно воздушное охлаждение, за исключением серии A500, в которой также используется водяное охлаждение.

Программное обеспечение

Операционная система

Операционная система векторного движка (VE) называется «VEOS» и полностью выгружена в хост-систему, векторный хост (VH). [14] VEOS состоит из модулей ядра и демонов пользовательского пространства, которые:

  • управлять процессами VE и их планированием на VE
  • управлять адресными пространствами виртуальной памяти процессов VE
  • обрабатывать передачи между памятью VH и VE с помощью механизмов VE DMA
  • обрабатывать прерывания и исключения процессов VE, а также их системные вызовы. [15]

VEOS поддерживает многозадачность на VE, и почти все системные вызовы Linux поддерживаются в VE libc. [15] Выгрузка служб операционной системы в VH смещает дрожание ОС от VE за счет увеличения задержек. [15] Все пакеты, связанные с операционной системой VE, лицензируются в соответствии с GNU General Public License и опубликованы на github.com/veos-sxarr-nec .

Разработка программного обеспечения

Для разработчиков и клиентов NEC доступен комплект разработки программного обеспечения. Он содержит фирменные продукты и должен быть приобретен у NEC. SDK содержит:

  • Компиляторы C, C++ и Fortran, которые поддерживают автоматическую векторизацию и автоматическое распараллеливание, а также OpenMP. [16]
  • Инструменты оптимизации производительности: ftraceviewer и veperf. [17]
  • Оптимизированные численные библиотеки для VE: BLAS, SBLAS, LAPACK, SCALAPACK, ASL, Heterosolver. [18]

NEC MPI также является собственной реализацией и соответствует спецификации стандарта MPI-3.1. [19]

Можно создавать гибридные программы, которые используют VE в качестве ускорителя для определенных функций ядра хоста, используя C-API разгрузки VE. [20] В некоторой степени разгрузка VE сравнима с OpenCL и CUDA, но обеспечивает более простой API и позволяет разрабатывать ядра на обычных языках C, C++ или Fortran и использовать практически любые системные вызовы в VE. [ требуется ссылка ] Привязки Python к VEO доступны на github.com/SX-Aurora/py-veo .

Сравнение математических функций

НЛК 1МКЛCUDA
Линейная алгебраПлотная матрица
Разреженная матрица
Функция ТрансформацииФурье
Реальное-реальное (DCT, …)
Лаплас , Вейвлет, …
СтатистикаГенератор случайных чисел✓ без MPI✓ без MPI
Многомерный, Регрессия, …
ДругойСортировка
Специальные функции
Интегралы, производные, …
Код трафарета
Глубокое обучение✗ (планируется)

1 Коллекция числовых библиотек NEC — это коллекция математических библиотек, поддерживающая разработку программ численного моделирования.

Ссылки

  1. ^ ab "NEC SX-Aurora TSUBASA - Векторный двигатель". www.nec.com . Получено 20.03.2018 .
  2. ^ abcd Морган, Тимоти Прикетт (27 октября 2017 г.). «Можно ли возродить векторные суперкомпьютеры?». Следующая платформа .
  3. ^ "NEC выпускает новую линейку высокопроизводительных вычислительных систем SX-Aurora TSUBASA". NEC . Получено 21.03.2018 .
  4. ^ Имаи, Теруюки (2019), Герофи, Балаж; Исикава, Ютака; Райзен, Рольф; Вишневски, Роберт В. (ред.), «NEC Earth Simulator и SX-Aurora TSUBASA», Операционные системы для суперкомпьютеров и высокопроизводительных вычислений , Серия высокопроизводительных вычислений, т. 1, Сингапур: Springer, стр. 139–160, doi :10.1007/978-981-13-6624-6_9, ISBN 978-981-13-6624-6, S2CID  204811906
  5. ^ Морган, Тимоти Прикетт (2017-11-22). "Глубокое погружение в векторный двигатель Aurora от NEC". Следующая платформа . Получено 2020-07-02 .
  6. ^ Фохт, Эрих. «Первые шаги с векторным двигателем SX-Aurora TSUBASA». sx-aurora.github.io . Получено 2020-07-02 .
  7. ^ Брошюра SX-Aurora TSUBASA
  8. ^ "NEC Vector Engine Models". www.nec.com . Получено 15 сентября 2020 г. .
  9. ^ ab "SX-Aurora TSUBASA" (PDF) . NEC Corporation . Февраль 2020 г.
  10. ^ abc "NEC SX-Aurora TSUBASA Architecture". www.nec.com . Получено 20.03.2018 .
  11. ^ "SX-Aurora - Микроархитектуры - NEC - WikiChip". en.wikichip.org . Получено 2020-07-02 .
  12. ^ "NEC SX-Aurora TSUBASA".
  13. ^ "NEC SX-Aurora TSUBASA A500-64". www.nec.com .
  14. ^ "NEC SX Aurora TSUBASA — Документация VSC 1.0". vlaams-supercomputing-centrum-vscdocumentation.readthedocs-hosted.com . Получено 2020-07-02 .
  15. ^ abc "Взгляд на новейший векторный процессор NEC, SX-Aurora". WikiChip Fuse . 2018-12-09 . Получено 2020-08-27 .
  16. ^ "NEC SX Aurora TSUBASA — Документация VSC 1.0". vlaams-supercomputing-centrum-vscdocumentation.readthedocs-hosted.com . Получено 27.08.2020 .
  17. ^ "Документация NEC SX-Aurora TSUBASA".
  18. ^ "Векторная система NEC SX-Aurora TSUBASA" . Rechenzentrum der CAU . Проверено 27 августа 2020 г.
  19. ^ «Руководство пользователя NEC MPI».
  20. ^ "SX-Aurora/veoffload". GitHub . Получено 21.03.2018 .
  • NEC SX-Aurora TSUBASA
  • Новости и статьи для SX-Aurora Vector Engine.
  • Форум NEC Aurora
  • VEOS для SX-Aurora TSUBASA
  • SX-Aurora: Коллекция инструментов и проектов
Взято с "https://en.wikipedia.org/w/index.php?title=NEC_SX-Aurora_TSUBASA&oldid=1229446261"