RUS  ENG
Полная версия
ЖУРНАЛЫ // Препринты Института прикладной математики им. М. В. Келдыша РАН // Архив

Препринты ИПМ им. М. В. Келдыша, 2022, 051, 36 стр. (Mi ipmp3077)

Эта публикация цитируется в 3 статьях

Применение библиотеки функционального программирования для распараллеливания вычислений на графических ускорителях с технологией CUDA

М. М. Краснов, О. Б. Феодоритова


Аннотация: Современные графические ускорители (GPU) позволяют существенно ускорить выполнение численных задач. Однако перенос программ на графические ускорители является непростой задачей, иногда требующий практически полного их переписывания. Графические ускорители CUDA, благодаря разработанной компанией NVIDIA технологии, позволяют иметь единый исходный код как для обычных процессоров (CPU), так и для CUDA. Однако, распараллеливание на общей памяти всё равно делается по-разному и его нужно указывать явно. Применение разработанной авторами библиотеки функционального программирования позволяет скрыть использование того или иного механизма распараллеливания на общей памяти внутри библиотеки и сделать пользовательский исходный код полностью независимым от используемого вычислительного устройства (CPU или CUDA). В настоящей статье показывается, как это можно сделать.

Ключевые слова: C++, библиотека функционального программирования, CUDA, OpenMP, OpenCL, OpenACC.

DOI: 10.20948/prepr-2022-51



© МИАН, 2024