Другие журналы

научное издание МГТУ им. Н.Э. Баумана

НАУКА и ОБРАЗОВАНИЕ

Издатель ФГБОУ ВПО "МГТУ им. Н.Э. Баумана". Эл № ФС 77 - 48211.  ISSN 1994-0408

Применение технологии CUDA в задаче об определении матрицы жесткости

# 07, июль 2015
DOI: 10.7463/0715.0791286
Файл статьи: SE-BMSTU...o145.pdf (1098.29Кб)
авторы: Берчун Ю. В., Киселёв И. А., Хахалин А. С., Сычёва Е. А., Петрова Т. Д., Яблоков В. Е.

УДК 004.021

Россия,  МГТУ им. Н.Э. Баумана


Целью работы является повышение производительности решения задачи механики деформированного твердого тела за счет применения GPGPU. Описаны технологии, предназначенные для вычислений в системах, использующих как центральный, так и графический процессор. Обусловлена эффективность применения технологии CUDA.
Проанализирован метод решения задачи по определению собственных частот и форм колебаний конструкций – метод итераций в подпространстве. Метод включает несколько этапов. Рассмотрен наиболее ресурсоемкий этап – определение матрицы жесткости в подпространстве собственных форм. Приведена математическая интерпретация данного этапа.
Обоснован выбор GPU в качестве вычислительного устройства. Представлен алгоритм расчёта матрицы жёсткости в подпространстве собственных форм с учетом особенностей входных данных. Глобальная матрица жесткости сильно разрежена, а её размеры могут достигать десятков миллионов. Поэтому она представлена в виде набора матриц жесткости отдельных элементов модели. Проанализированы методы представления данных в программе, и выбраны рациональные методы для вычислений на графических процессорах.
Приведено описание программной реализации расчёта матрицы жёсткости в подпространстве собственных форм применением технологии CUDA. Из-за специфики входных данных применение универсальных библиотек для матричных вычислений (cuSPARSE и cuBLAS) не позволяет обеспечить загрузку графического процессора. Для эффективного использования ресурсов GPU в программной реализации произведена компоновка матриц жесткости элементов в блочные матрицы специального вида. Описаны преимущества применения разделяемой памяти в вычислениях, производимых на графических процессорах.
В результате переноса вычислений на графический процессор получено двадцатикратное повышение производительности (в сравнении с многопоточной реализацией на CPU) на модели средней размерности (количество степеней свободы около 2 миллионов). Такое ускорение одного этапа повышает скорость нахождения собственных частот и форм колебаний методом итераций в подпространстве до двух раз.

 Список литературы
  1. Параллельные вычисления CUDA // NVIDIA : сайт. Режим доступа:http://www.nvidia.ru/object/cuda-parallel-computing-ru.html (дата обращения 09.06.2015).
  2. APP SDK – A Complete Development Platform // AMD: website. Available: http://developer.amd.com/tools-and-sdks/opencl-zone/amd-accelerated-parallel-processing-app-sdk, accessed 15.06.2015.
  3. Khronos Group , 25 Май 2014: промышленный консорциум // Википедия: сайт. Режим доступа:https://ru.wikipedia.org/wiki/Khronos_Group (дата обращения 11.06.2015).
  4. OpenCL, 22 Июля 2013. Википедия: сайт. Режим доступа: https://ru.wikipedia.org/wiki/OpenCL (дата обращения 15.06.2015).
  5. C++ AMP (C++ Accelerated Massive Parallelism) // Microsoft: сайт компании . Режим доступа:https://msdn.microsoft.com/ru-ru/library/hh265137.aspx (дата обращения 15.06.2015).
  6. OpenACC: website. Available: http://www.openacc-standard.org/, accessed 15.06.2015.
  7. November 2014 // TOP500 list: website. Available at: http://www.top500.org/lists/2014/11, accessed 21.05.2015.
  8. Приложения для вычислений на GPU // NVIDIA : сайт. Режим доступа: http://www.nvidia.ru/object/gpu-computing-applications-ru.html (дата обращения 15.06.2015).
  9. Шейдер ( Shader ). 18 Ноября 2005 // GameDev . ru — Разработка игр: сайт. Режим доступа:http://www.gamedev.ru/terms/Shader (дата обращения. 15.06.2015).
  10. Using Shared Memory in CUDA C/C++, 28 January 2013 // NVIDIA CUDA Zone: website. Available at: http://devblogs.nvidia.com/parallelforall/using-shared-memory-cuda-cc/, accessed 11.06.2015.
  11. CUDA C Programming Guide, 5 March 2015 // NVIDIA Developer Zone: website. Available at: http://docs.nvidia.com/cuda/cuda-c-programming-guide, accessed 15.06.2015.
  12. Боресков А.В., Харланов А.А. Основы работы с технологией CUDA. М.: ДМК Пресс, 2010. 232 с.
  13. Сандерс Дж., Кендрот Э. Технология CUDA в примерах. Введение в программирование графических процессоров: пер. с англ. М .: ДМК Пресс , 2011. 232 с .
  14. Казённов А.М. Основы технологии CUDA // Компьютерные исследования и моделирование. 2010. Т. 2, № 3. С. 295-308.
  15. Bathe K.-J. The subspace iteration method – Revisited // Computers and Structures. 2013. Vol. 126, no. 15. P. 177-183. DOI: 10.1016/j.compstruc.2012.06.002
  16. Вилсон Е., Батэ К. Численные методы анализа и метод конечных элементов: пер. с англ. М.: Стройиздат, 1982. 448 с.
  17. Киселев А.С. Анализ эффективности методов расчета собственных частот трехмерных конструкций» // Труды 6-ой Российской НТК «Методы и программное обеспечение расчетов на прочность». 2010. С. 28-39.
  18. Киселев А.С. Применение параллельных вычислений для повышения эффективности решения задач большой размерности в конечно-элементном программном комплексе UZOR 1.0 // Труды 8-ой Российской НТК «Методы и программное обеспечение расчетов на прочность». 2014. С. 117-131.
  19. Карпенко А.П., Чернов С.К. Решение систем линейных алгебраических уравнений методом предобуславливания на графических процессорных устройствах // Наука и образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2013. № 1. С. 185-214. DOI:10.7463/0113.0525190
  20. Матвеева Н.О., Горбаченко В. И. Решение систем линейных алгебраических уравнений на графических процессорах с использованием технологии CUDA // Известия Пензенского государственного педагогического университета им. В.Г. Белинского. 2008. № 12. С. 115-120.
  21. Ханкин К.М. Сравнение эффективности технологий OpenMP, NVIDIA CUDA И STARPU на примере задачи умножения матриц // Вестник Южно-Уральского государственного университета. Сер. Компьютерные технологии, управление, радиоэлектроника. 2013. Т. 13, № 1. С. 34-41.
  22. cuSPARSE, 5 March 2015 // NVIDIA Developer: wwebsite. Available at: http://docs.nvidia.com/cuda/cusparse/#compressed-sparse-row-format-csr, accessed 28.06.2015.
  23. Еременко С.Ю. Методы конечных элементов в механике деформируемых тел. Харьков: Изд-во "Основа" при Харьк. ун-те, 1991. 272 с.
  24. Круглов В.Н., Папуловская Н.В., Чирышев А.В. Преимущества совместного использования CPU И CUDA-устройства // Фундаментальные исследования. 2014. № 8-2. С. 296-304.
  25. Классификация Флинна // Лаборатория Параллельных информационных технологий НИВЦ МГУ: сайт. Режим доступа: http://parallel.ru/computers/taxonomy/flynn.html (дата обращения 15.06.2015).


Поделиться:
 
ПОИСК
 
elibrary crossref ulrichsweb neicon rusycon
 
ЮБИЛЕИ
ФОТОРЕПОРТАЖИ
 
СОБЫТИЯ
 
НОВОСТНАЯ ЛЕНТА
18.12.2017
С 21 по 24 ноября 2017г. в МГТУ им. Н.Э. Баумана прошла XII Всероссийская инновационная молодежная научно-инженерная выставка «Политехника», посвященная 170-летию со дня рождения Н.Е. Жуковского в рамках Всероссийского инновационного молодежного научно-инженерного форума «Политехника».

11.10.2017
XII Всероссийская инновационная молодежная научно-инженерная выставка «ПОЛИТЕХНИКА», посвященная 170-летию со дня рождения Н.Е. Жуковского 21–24 ноября 2017 года г. Москва

25.05.2017
C 15 по 17 мая 2017г. в МГТУ им. Н.Э. Баумана прошел III этап (Всероссийский) Всероссийской студенческой олимпиады по физике (в технических вузах).

25.04.2017
С 12 по 14 апреля в МГТУ им. Н.Э. Баумана прошел Всероссийский этап Всероссийской олимпиады по безопасности жизнедеятельности.

4.04.2017
С 14 по 16 марта 2017г. в МГТУ им. Н.Э. Баумана прошел III (Всероссийский) тур Всероссийской студенческой олимпиады по иностранному языку (английский в технических вузах).




Авторы
Пресс-релизы
Библиотека
Конференции
Выставки
О проекте
Rambler's Top100
Телефон: +7 (915) 336-07-65 (строго: среда; пятница c 11-00 до 17-00)
  RSS
© 2003-2018 «Наука и образование»
Перепечатка материалов журнала без согласования с редакцией запрещена
 Тел.: +7 (915) 336-07-65 (строго: среда; пятница c 11-00 до 17-00)