Строка 205: |
Строка 205: |
| | | |
| === Память и кэш === | | === Память и кэш === |
− | Память процессора SX-Aurora TSUBASA состоит из шести высокоскоростных модулей памяти [[HBM2]], реализованных в том же корпусе, что и центральный процессор, с помощью технологии Chip-on-Wafer-on-Substrate. В зависимости от модели процессора модули HBM2 представляют собой 4 или 8<ref>Относительно третьего поколения VE не известно, увеличилось ли вдвое число модулей, или емкость каждого из них. В любом случае, общая ёмкость памяти HBM2 в них удвоена.</ref> 3D-модулей с емкостью 4 или 8 ГБ каждый. Таким образом, процессоры SX-Aurora имеют память HBM2 объемом 24, 48 или 96 ГБ. Модели, оснащенные большими модулями HBM2, имеют пропускную способность памяти 1,2 ТБ/с<ref>{{Cite web|title=SX-Aurora - Microarchitectures - NEC - WikiChip|url=https://en.wikichip.org/wiki/nec/microarchitectures/sx-aurora|access-date=2020-07-02|website=en.wikichip.org|language=en}}</ref>. Ядра векторного движка первого и второго поколения совместно используют 16 МБ кэша последнего уровня (LLC) - кэша обратной записи, напрямую подключенного к векторным регистрам, и кэша L2 SPU. Размер строки кэша LLC составляет 128 байт. Приоритет хранения данных в LLC можно в некоторой степени контролировать программно, что позволяет программисту указать, какие переменные или массивы должны сохраняться в кеше, что сравнимо с функцией Advanced Data Buffer (ADB) NEC [[SX-ACE]]. В третьем поколении системы ёмкость этого кэша увеличена до 64Мб. | + | Память процессора SX-Aurora TSUBASA состоит из шести высокоскоростных модулей памяти [[HBM2]], реализованных в том же корпусе, что и центральный процессор, с помощью технологии Chip-on-Wafer-on-Substrate. В зависимости от модели процессора модули HBM2 представляют собой 4 или 8<ref>Относительно третьего поколения VE не известно, увеличилось ли вдвое число модулей, или емкость каждого из них. В любом случае, общая ёмкость памяти HBM2 в них удвоена.</ref> 3D-модулей с емкостью 4 или 8 ГБ каждый. Таким образом, процессоры SX-Aurora имеют память HBM2 объемом 24, 48 или 96 ГБ. Модели, оснащенные большими модулями HBM2, имеют пропускную способность памяти 1,2 ТБ/с<ref>{{Cite web|title=SX-Aurora - Microarchitectures - NEC - WikiChip|url=https://en.wikichip.org/wiki/nec/microarchitectures/sx-aurora|access-date=2020-07-02|website=en.wikichip.org}}</ref>. Ядра векторного движка первого и второго поколения совместно используют 16 МБ кэша последнего уровня (LLC) - кэша обратной записи, напрямую подключенного к векторным регистрам, и кэша L2 SPU. Размер строки кэша LLC составляет 128 байт. Приоритет хранения данных в LLC можно в некоторой степени контролировать программно, что позволяет программисту указать, какие переменные или массивы должны сохраняться в кеше, что сравнимо с функцией Advanced Data Buffer (ADB) NEC [[SX-ACE]]. В третьем поколении системы ёмкость этого кэша увеличена до 64Мб. |
| | | |
| === Поставляемые платформы === | | === Поставляемые платформы === |
Строка 219: |
Строка 219: |
| * управляют адресными пространствами виртуальной памяти процессов VE | | * управляют адресными пространствами виртуальной памяти процессов VE |
| * обрабатывают обмен между памятью VH и VE с помощью механизмов [[DMA|VE DMA]] | | * обрабатывают обмен между памятью VH и VE с помощью механизмов [[DMA|VE DMA]] |
− | * обрабатывают прерывания и исключения процессов VE, а также их системные вызовы<ref name="fuse.wikichip.org">{{Cite web|date=2018-12-09|title=A Look at NEC's Latest Vector Processor, the SX-Aurora|url=https://fuse.wikichip.org/news/1833/a-look-at-necs-latest-vector-processor-the-sx-aurora/|access-date=2020-08-27|website=WikiChip Fuse|language=en-US}}</ref>. | + | * обрабатывают прерывания и исключения процессов VE, а также их системные вызовы<ref name="fuse.wikichip.org">{{Cite web|date=2018-12-09|title=A Look at NEC's Latest Vector Processor, the SX-Aurora|url=https://fuse.wikichip.org/news/1833/a-look-at-necs-latest-vector-processor-the-sx-aurora/|access-date=2020-08-27|website=WikiChip Fuse}}</ref>. |
| | | |
| VEOS поддерживает многозадачность в VE, и почти все системные вызовы Linux поддерживаются в библиотеке VE libc<ref name="fuse.wikichip.org" />. | | VEOS поддерживает многозадачность в VE, и почти все системные вызовы Linux поддерживаются в библиотеке VE libc<ref name="fuse.wikichip.org" />. |
Строка 235: |
Строка 235: |
| | | |
| * Инструменты оптимизации производительности: ftraceviewer и veperf<ref>{{Cite web|last=|first=|date=|title=NEC SX-Aurora TSUBASA Documentation|url=https://www.hpc.nec/documentation|archive-url=|archive-date=|access-date=|website=}}</ref>. | | * Инструменты оптимизации производительности: ftraceviewer и veperf<ref>{{Cite web|last=|first=|date=|title=NEC SX-Aurora TSUBASA Documentation|url=https://www.hpc.nec/documentation|archive-url=|archive-date=|access-date=|website=}}</ref>. |
− | * Библиотеки численных расчётов, оптимизированные для VE: [[BLAS]], [[SBLAS]], [[LAPACK]], [[SCALAPACK]], [[ASL]], [[Heterosolver]]<ref>{{Cite web|title=NEC SX-Aurora TSUBASA Vector System|url=https://www.rz.uni-kiel.de/en/our-portfolio/hiperf/nec-sx-aurora-tsubasa-vector-system|access-date=2020-08-27|website=Rechenzentrum der CAU|language=en}}</ref>. | + | * Библиотеки численных расчётов, оптимизированные для VE: [[BLAS]], [[SBLAS]], [[LAPACK]], [[SCALAPACK]], [[ASL]], [[Heterosolver]]<ref>{{Cite web|title=NEC SX-Aurora TSUBASA Vector System|url=https://www.rz.uni-kiel.de/en/our-portfolio/hiperf/nec-sx-aurora-tsubasa-vector-system|access-date=2020-08-27|website=Rechenzentrum der CAU}}</ref>. |
| | | |
| NEC MPI также является собственной реализацией Message Passing Interface от NEC и соответствует спецификации стандарта [[Message Passing Interface|MPI-3.1]]<ref>{{Cite web|last=|first=|date=|title=NEC MPI User's Guide|url=https://www.hpc.nec/documents/mpi/NEC_MPI_User_Guide_en/chap1.html|archive-url=|archive-date=|access-date=|website=}}</ref>. | | NEC MPI также является собственной реализацией Message Passing Interface от NEC и соответствует спецификации стандарта [[Message Passing Interface|MPI-3.1]]<ref>{{Cite web|last=|first=|date=|title=NEC MPI User's Guide|url=https://www.hpc.nec/documents/mpi/NEC_MPI_User_Guide_en/chap1.html|archive-url=|archive-date=|access-date=|website=}}</ref>. |
| | | |
− | Могут быть созданы гибридные программы, которые используют VE в качестве ускорителя для определенных функций ядра хоста, используя специализированную библиотеку вызовов, совместимую с языком С для выгрузки задач на Vector Engine<ref>{{Cite web|url=https://github.com/SX-Aurora/veoffload|title=SX-Aurora/veoffload|website=GitHub|language=en|access-date=2018-03-21}}</ref>. | + | Могут быть созданы гибридные программы, которые используют VE в качестве ускорителя для определенных функций ядра хоста, используя специализированную библиотеку вызовов, совместимую с языком С для выгрузки задач на Vector Engine<ref>{{Cite web|url=https://github.com/SX-Aurora/veoffload|title=SX-Aurora/veoffload|website=GitHub}}</ref>. |
| | | |
| В некоторой степени интерфейс выгрузки задач (Vector Engine Offloading) на VE сравним с [[OpenCL]] и [[CUDA]], но обеспечивает более простой API и позволяет вести разработку ПО на обычном C, C++ или Fortran, используя при этом практически любой системный вызов в VE. | | В некоторой степени интерфейс выгрузки задач (Vector Engine Offloading) на VE сравним с [[OpenCL]] и [[CUDA]], но обеспечивает более простой API и позволяет вести разработку ПО на обычном C, C++ или Fortran, используя при этом практически любой системный вызов в VE. |