Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: XC Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 08 июня 2020 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Гибадуллин Р.Р. ВЫБОР БИБЛИОТЕКИ CUDA ДЛЯ .NET FRAMEWORK // Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ: сб. ст. по мат. XC междунар. студ. науч.-практ. конф. № 6(89). URL: https://sibac.info/archive/technic/6(89).pdf (дата обращения: 25.04.2024)
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

ВЫБОР БИБЛИОТЕКИ CUDA ДЛЯ .NET FRAMEWORK

Гибадуллин Расим Рустамович

студент, кафедра компьютерных систем, Казанский Национальный Исследовательский Технический Университет им. А.Н. Туполева - КАИ,

РФ, г. Казань

Гибадуллин Руслан Фаршатович

научный руководитель,

канд. техн. наук, доц. кафедры компьютерных систем, Казанский Национальный Исследовательский Технический Университет им. А.Н. Туполева - КАИ,

РФ, г. Казань

SELECTING A CUDA LIBRARY FOR .NET FRAMEWORK

 

Rasim Gibadullin

student, Department of Computer Systems, Kazan National Research Technical University named after A.N. Tupolev - KAI,

Russia, Kazan

Ruslan Gibadullin

scientific director, candidate of technical sciences, associate professor at the Department of Computer Systems, Kazan National Research Technical University named after A.N. Tupolev - KAI,

Russia, Kazan

 

АННОТАЦИЯ

Использование вычислительной мощности сотен ядер GPU даёт потрясающие возможности для ускорения вычисления, однако программно-аппаратная платформа CUDA позволяет писать только на языках C, C++ и Fortran. Поэтому выбор библиотеки для GPU на платформе .NET Framework даст еще больше возможностей к использованию GPU для вычислений общего назначения.

ABSTRACT

Using the processing power of hundreds of GPU cores provides tremendous opportunities to speed up the calculation, however, the CUDA software and hardware platform allows you to write only in C, C ++ and Fortran. Therefore, choosing a library for the GPU on the .NET Framework will provide even more opportunities for using the GPU for general-purpose computing.

 

Ключевые слова: CUDA, GPU, .NET Framework.

Keywords: CUDA, GPU, .NET Framework.

 

На сегодняшний день повышаются сложность вычислительных задач и алгоритмов, как и объемы данных, что требуют увеличения производительности и скорости обработки данных. Для решения этой задачи используют многоядерные процессоры, но их количество ограничено самой архитектурой центрального процессора. Однако благодаря программно-аппаратной архитектуре CUDA нам доступны вычислительные мощности графического процессора (GPU), обладающий сотнями и тысячами вычислительными ядрами для вычисления общего назначения [1].

GPU наиболее эффективен при решении задач, обладающих параллелизмом по данным, число арифметических операций в которых превышает число операций над памятью. Например, в 3D-рендеринге параллелизм по данным выражается в распределении по потокам обработки отдельных вершин. Аналогично, обработка изображений, кодирование и декодирование видео и распознавание образов легко делятся на подзадачи над блоками изображений и пикселей. Также множество задач, не связанных с графикой, обладают параллелизмом по данным: обработка сигналов, физика, финансовый анализ, вычислительная биология [1].

Для платформы .NET Framework в настоящее время отсутствует поддержка GPGPU, но есть сторонние решения. Однако вариантов, из которых можно выбрать не так много.

Первая библиотека, которую мы рассмотрим будет Alea GPU. Данная библиотека основана на CUDA, обладает бесплатными и коммерческими версиями. Важной особенностью этой библиотеки является её кроссплатформенность (Windows, Linux, MacOS), наличие хорошей документации и сопровождающих графических схем. Простая установка с помощью NuGet-пакетов. Позволяет писать программный код на языках C#, F#.

Вторая библиотека, Hybridizer, она так же основана на CUDA. Однако в сравнении с первой библиотекой бесплатная версия сильно урезана и подходит только для образовательных целей и требует лицензию. Также неприятной особенностью данной библиотеки является создание проекта на C++, содержащий генерируемый библиотекой код, который возможно скомпилировать только на Visual Studio 2015.

Следующая ILGPU – это библиотека с открытым исходным кодом на основе CUDA. Имеет хорошую документацию с примерами. Совместима с .NET Framework и с .NET Core.

Последняя библиотека, которую рассмотрим будет Campy, также имеет открытый исходный код. Создана на .NET Core и пока бета-версия, поэтому может иметь некоторые неполадки в работе.

В настоящее время из всех рассмотренных библиотек можно отметить две Alea GPU и ILGPU, с ними удобнее всего работать и конфигурировать.

Таким образом использовать GPU для вычислений общего назначения на платформе .NET Framework имеет место быть и является актуальным направление в параллельных вычислениях, позволяет ускорить процесс обработки данных.

 

Список литературы:

  1. Параллельные вычисления на GPU. Архитектура и программная модель CUDA / А. В. Боресков, А. А. Харламов, Н. Д. Марковский и др. — Издательство МГУ Москва, 2015. — 336 с.
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.