Программирование на видеокартах (GPGPU). Спецкурс кафедры ММИ

Учебное пособие представляет собой краткий конспект вводного курса в программирование с помощью графических процессоров (GPGPU). Рассматривается использование графических карт как универсальных вычислительных устройств с параллельной архитектурой для решения трудоёмких задач, которые могут быть распараллелены.

В первой части курса подробно излагаются средства платформы CUDA от NVIDIA: компилятор nvcc, интеграция с Visual Studio, расширения языков C/C++, особенности параллельного исполнения кода, управление ресурсами и синхронизация потоков. Анализируются параллельные реализации базовых алгоритмов: векторных операций, умножения матриц и сортировки bitonic sort. Рассматривается использование библиотек NVIDIA: cuBLAS для линейной алгебры, cuSPARSE для работы с разреженными матрицами и Thrust с объектно-ориентированным интерфейсом.

Во второй части рассматриваются кроссплатформенные решения: библиотека Boost, платформа OpenCL для работы с устройствами различных производителей, библиотека OpenCV. Излагаются основы применения OpenGL для визуализации результатов, включая использование языка GLSL для задействования вычислительной мощи GPU в отрисовке сложных трёхмерных сцен. Также затрагивается технология WebGL, позволяющая создавать вычислительные и графические программы в браузере с ускорением на графических процессорах.

Пособие рассчитано на студентов старших курсов физического факультета и аспирантов, но может быть использовано всеми заинтересованными лицами для первоначального знакомства с современными вычислительными возможностями графических процессоров.

Похожие книги

Программирование на видеокартах (GPGPU). Спецкурс кафедры ММИ
A
Автор
В.А. Антонюк
Издательство
Физический факультет МГУ им. М.В. Ломоносова
Год
2015
Язык
Русский
1
Оцените книгу

Чтобы читать книгу, войдите или зарегистрируйтесь

Ознакомительный фрагмент