📄Работа №80257

Тема: Технология программирования CUDA,как одна из технологий GPGPU

📝
Тип работы Дипломные работы, ВКР
📚
Предмет Информатика и вычислительная техника
📄
Объем: 44 листов
📅
Год: 2016
👁️
Просмотров: 307
Не подходит эта работа?
Закажите новую по вашим требованиям
Узнать цену на написание
ℹ️ Настоящий учебно-методический информационный материал размещён в ознакомительных и исследовательских целях и представляет собой пример учебного исследования. Не является готовым научным трудом и требует самостоятельной переработки.

📋 Содержание

Оглавление 1
Введение 4
1 Техническое задание 5
2 Научно-исследовательская часть 12
2.1 Постановка задачи 12
2.1.1 Метод итераций в подпространстве 12
2.1.2 Математическое представление задачи 13
2.2 Методы решения 14
2.2.1 Решение на основе матриц жесткости элементов 14
2.2.2 Решение на основе глобальной матрицы жесткости 15
2.3 Выбор технологии 17
2.3.1 Вычисления общего назначения на графических устройствах
17
2.3.2 Технология Nvidia CUDA 17
2.3.3 Альтернативы технологии CUDA 17
2.4 Анализ результатов 18
2.4.1 Анализ работы программ 18
2.4.1.1 Анализ вычисления матрицы в подпространстве с
использованием матриц жесткости элементов 18
2.4.1.2 Анализ вычисления матрицы в подпространстве с
использованием глобальной матрицы жесткости 20
2.4.2 Сравнение скорости выполнения на GPU и CPU 20
3 Проектно-конструкторская часть 21
3.1 Структуры хранения данных 21
3.1.1 Расширенная матрица 21
3.2 Представление данных в программе 23
3.2.1 Блочная матрица 23
3.3 Программная реализация 24
3.3.1 Вычисление матрицы в подпространстве с использованием
матриц жесткости элементов 24
3.3.1.1 Выполнение на GP U 24
3.3.2 Вычисление матрицы в подпространстве с использованием
глобальной матрицы жесткости 26
3.3.2.1 Выполнение на GPU 26
3.3.2.2 Выполнение на CPU 27
4 Технологическая часть 27
4.1 Архитектура CUDA 27
4.2 Аппаратная модель CUDA 29
4.2.1 Планировщик блоков потоков 29
4.2.2 Мультипроцессор 30
4.3 Программная модель CUDA 32
4.3.1 Расширение языка 32
4.3.1.1 Спецификаторы функций 32
4.3.1.1 Спецификаторы переменных 33
4.3.1.2 Оператор запуска ядра 34
4.3.1.3 Встроенные переменные 35
4.3.1.4 Дополнительные типы данных 35
4.3.2 Представление потоков CUDAв программе 35
4.3.3 Модель памяти 37
4.3.3.1 Локальная 38
4.3.3.2 Регистровая 38
4.3.3.3 Глобальная 38
4.3.3.4 Разделяемая 39
4.3.3.5 Константная 39
4.3.3.6 Текстурная 39
5 Заключение 41
Библиографический список 42

📖 Введение

В настоящей работе за основу взята реализация метода итераций в подпространстве для определения собственных частот и форм колебаний конечно-элементных моделей с большим числом степеней свободы, реализованный на CPUв программном комплексе UZOR1.0, имеющего параллельную сетевую архитектуру клиент-сервер. Этап вычисления проекции матрицы жесткости в рассматриваемой реализации выполняется в серверной части программы и занимает около 40-60% от всего времени выполнения одной итерации алгоритма, в зависимости от характеристик конкретной конечно-элементной модели при осуществлении расчета на одном вычислительном узле. В связи с этим, повышение производительности данного этапа за счет применения графического процессора является актуальным, поскольку позволит существенно повысить общую производительность при решении задачи.
Целью работы является повышение производительности расчета за счет применения GPUпри решении задачи об определении собственных частот колебаний конструкции.
Для достижения цели была поставлена задача - адаптировать алгоритмы и реализовать программный компонент для нахождения матрицы жесткости в подпространстве собственных форм, с учетом особенностей вычислений на графическом процессоре.

Возникли сложности?

Нужна качественная помощь преподавателя?

👨‍🎓 Помощь в написании

✅ Заключение

Технология Nvidia CUDAявляется удобным и эффективным средством для вычислений общего назначения на графических устройствах. Скорость решения задачи по определению матрицы жесткости в подпространстве собственных форм с применением данной технологии увеличилась в несколько раз (в сравнении с CPUверсией). Современные графические процессоры имеют большие возможности в решении массивно-параллельных задач. CUDAрасполагает простым механизмом выполнения параллельных программ на различных аппаратных платформах. Так один алгоритм, написанный с применением CUDA,может быть запущен на различных картах компании, и скорость выполнения будет зависеть только от аппаратных средств GPU.Таким образом данная технология позволяет системам быть легко масштабируемыми, а программное обеспечение переносимым и актуальным.
Нужна своя уникальная работа?
Срочная разработка под ваши требования
Рассчитать стоимость
ИЛИ

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

Карпенко А.П., Чернов С.К., «Решение систем линейных
1] алгебраических уравнений методом предобуславливания на графических
процессорных устройствах», 1 январь 2013. URL:
http://technomag.bmstu.ru/doc/525190.html. (Дата обращения: 9.06.2015).
Матвеева Н. О., Горбаченко В. И., «Решение систем линейных
2] алгебраических уравнений на графических процессорахс использованием технологии CUDA», Известия Пензенского государственного педагогического университета им. В.Г. Белинского, № 12, pp. 115-120, 2008.
Корпорация AMD [Электронный ресурс] //
3] APP SDK - A Complete Development Platform.
URL: http://developer.amd.com/tools-and-sdks/opencl-zone/amd-accelerated- parallel-processing-app-sdk/. (Дата обращения: 15.06. 2015).
Википедия [Электронный ресурс] // Khronos Group
4] URL: https://ru.wikipedia.org/wiki/Khronos_Group. (Дата обращения:
11.06.2015).
Википедия [Электронный ресурс] // OpenCL.
5] URL: https://ru.wikipedia.org/wiki/OpenCL. (Дата обращения: 15.06.2015).
Microsoft [Электронный ресурс] // C++ AMP (C++ Accelerated
6] Massive Parallelism). URL: https://msdn.microsoft.com/ru-
ru/library/hh265137.aspx. (Дата обращения: 15.06.2015).
OpenACC [Электронный ресурс] // OpenACC-standard
7] URL: http://www.openacc-standard.org/. [Дата обращения: 15 Июнь 2015].
Сандерс Дж. [Sanders J.], Кэндрот Э. [Kandrot E.] Технология
8] CUDA в примерах: введение в программирование графических процессоров: пер. с англ. А.А. Слинкиной. М: ДМК Пресс, 2011.
Ерменко С.Ю., Методы конечных элементов в механике
9] деформируемых тел, Харьков: Издатлеьство "Основа" при Харьк. Ун-те, 1991, р. 272.
Круглов В.Н. и др, «Приемущества совместнго использования CPU
10] И CUDA-устройства» Фундаментальные исследования, № 8-2, рр. 296 - 304, 2014.
Боресков А.В. и др. Параллельные вычисления на GPU.
11] Архитектура и программная модель CUDA: Учебное пособие. М: Издательство Московского университета, 2012.
Bathe K-J. Finite element procedures. New Jersey: Prentice Hall, 1996.
12]
Nvidia [Электронный ресурс] // «Приложения для вычислений на I2| GPU». URL: http://www.nvidia.ru/object/gpu-computing-applications-
ru.html. (Дата обращения: 15.06.2015).
Боресков А.В. и др. Параллельные вычисления на GPU.
14] Архитектура и программная модель CUDA: Учебное пособие. М: Издательство Московского университета, 2012.
Programming Guide [Электронный ресурс] // CUDA Toolkit
15] Documentation. URL: http://docs.nvidia.com/cuda/cuda-c-programming-
guide/index.html (дата обращения: 15.04.2015).

🛒 Оформить заказ

Работу высылаем в течении 5 минут после оплаты.

©2026 Cервис помощи студентам в выполнении работ