Изменения

331 байт добавлено ,  1 год назад
Строка 223: Строка 223:  
VEOS поддерживает многозадачность в VE, и почти все системные вызовы Linux поддерживаются в библиотеке VE libc.
 
VEOS поддерживает многозадачность в VE, и почти все системные вызовы Linux поддерживаются в библиотеке VE libc.
   −
Выгрузка служб операционной системы на хост устраняет джиттер процессов на Vector Engine за счет относительно небольшого увеличения задержек при обмене данными. Это является критичным для многочисленных задач численного моделирования, использующих, в частности, интерфейс MPI и аналогичные.
+
Выгрузка служб операционной системы на хост устраняет джиттер процессов на Vector Engine за счет относительно небольшого увеличения задержек при обмене данными. Это является критичным для многочисленных задач численного моделирования, использующих, в частности, интерфейс [[Message Passing Interface|MPI]], [[OpenMP]] и аналогичные.
    
Все пакеты, связанные с операционной системой VE, лицензируются по лицензии [[GNU General Public License]] и опубликованы в репозитории [https://github.com/veos-sxarr-nec GitHub].
 
Все пакеты, связанные с операционной системой VE, лицензируются по лицензии [[GNU General Public License]] и опубликованы в репозитории [https://github.com/veos-sxarr-nec GitHub].
Строка 237: Строка 237:  
* Библиотеки численных расчётов, оптимизированные для VE: [[BLAS]], [[SBLAS]], [[LAPACK]], [[SCALAPACK]], [[ASL]], [[Heterosolver]].  
 
* Библиотеки численных расчётов, оптимизированные для VE: [[BLAS]], [[SBLAS]], [[LAPACK]], [[SCALAPACK]], [[ASL]], [[Heterosolver]].  
 
   
 
   
NEC MPI также является собственной реализацией и соответствует спецификации стандарта MPI-3.1.[19] Могут быть созданы гибридные программы, которые используют VE в качестве ускорителя для определенных функций ядра хоста, используя разгрузку VE C-API. В некоторой степени разгрузка VE сравнима с OpenCL и CUDA, но обеспечивает более простой API и позволяет разрабатывать ядра на обычном C, C++ или Fortran и использовать практически любой системный вызов в VE. Доступны привязки Python к VEO. на github.com/SX-Aurora/py-veo.
+
NEC MPI также является собственной реализацией Message Passing Interface от NEC и соответствует спецификации стандарта [[Message Passing Interface|MPI-3.1]].
 +
 
 +
Могут быть созданы гибридные программы, которые используют VE в качестве ускорителя для определенных функций ядра хоста, используя специализированную библиотеку вызовов, совместимую с языком С для выгрузки задач на Vector Engine.  
 +
 
 +
В некоторой степени интерфейс выгрузки задач (Vector Engine Offloading) на VE сравним с [[OpenCL]] и [[CUDA]], но обеспечивает более простой API и позволяет вести разработку ПО на обычном C, C++ или Fortran, используя при этом  практически любой системный вызов в VE.  
 +
 
 +
[https://github.com/SX-Aurora/py-veo Доступны биндинги Python к VEO].  
    
== Перспективы развития ==
 
== Перспективы развития ==