Параллельные технологии программирования на вычислительных комплексах
Аннотация
В статье описываются различные возможности ускорения расчетов на вычислительных комплексах. Эти возможности тесно связаны с архитектурой таких комплексов. Целью работы является предоставление информации, необходимой при выборе возможности ускорения процесса решения вычислительной задачи. Приводится описание основных возможностей, реализуемых с помощью следующих моделей: программирование в системах с общей памятью, программирование в системах с распределенной памятью и программирование на графических ускорителях (видеокартах). Излагается основная концепция, принципы, достоинства и недостатки каждой из рассматриваемых моделей программирования. Все стандарты написания программ, описанные в статье, возможно использовать в операционных системах как семейства Linux, так и Windows. Необходимые библиотеки доступны и совместимы с языком программирования C/C++. В заключении статьи даются рекомендации по использованию той или иной технологии в зависимости от типа задачи, которую необходимо решить.
Об авторах
С. А. ПрядкоРоссия
Прядко Сергей Александрович, к.т.н., доцент
119991, Москва, Ленинский пр-т, д.65, к. 1
тел.: +7 (903) 590-27-71
А. Ю. Трошин
Россия
Трошин Алексей Юрьевич, студент
119454, Москва, пр-т Вернадского, д.78
тел.: +7 (925) 332-11-93
В. Д. Козлов
Россия
Козлов Вадим Дмитриевич, студент
119454, Москва, пр-т Вернадского, д.78
тел.: 8 (977) 267-16-36
А. Е. Иванов
Россия
Иванов Александр Евгеньевич, инженер-программист
117437, Москва, ул. Профсоюзная, д.108
тел.: +7 (916) 098-15-66
Список литературы
1. Reinsel D., Gantz J., Rydning J. The Digitization of the World [Электронный ресурс]. URL: https://www.seagate.com/files/www-content/our-story/trends/files/idc-seagate-dataage-whitepaper.pdf (дата обращения: 06.07.2020).
2. Ежова Н. А., Соколинский Л. Б. Обзор моделей параллельных вычислений // Вестник ЮУрГУ. 2019. № 3. С. 58–91.
3. Антонов А. С. Параллельное программирование с использованием технологии OpenMP. М.: МГУ, 2009. 77 c.
4. Антонов А. С. Параллельное программирование с использованием технологии MPI. М.: Национальный Открытый Университет «ИНТУИТ», 2016. 84 с.
5. Копысов С. П., Новиков А. К. Промежуточное программное обеспечение параллельных вычислений. Ижевск: Удмуртский университет. 2012. 140 с.
6. Малявко А. А. Параллельное программирование на основе технологий OpenMP, MPI, CUDA. М.: Юрайт, 2018. 115 с.
7. Боресков А. В., Харламов А. А., Марковский Н. Д. Параллельные вычисления на GPU. Архитектура и программная модель CUDА. М.: МГУ, 2012. 336 с.
8. Сандерс Дж., Кэндрот Э. Технология CUDA в примерах: введение в программирование графических процессоров. М.: ДМК Пресс, 2013. 232 с.
9. Антонюк В. А. OpenCL. Открытый язык для параллельных программ. М.: МГУ, 2017. 88 с.
10. Бастраков С. И. Программирование на OpenCL. [Электронный ресурс]. URL: https://docplayer.ru/37490743-Programmirovanie-na-opencl.html (дата обращения: 06.07.2020).
Для цитирования:
Прядко С.А., Трошин А.Ю., Козлов В.Д., Иванов А.Е. Параллельные технологии программирования на вычислительных комплексах. Радиопромышленность. 2020;30(3):28-33. https://doi.org/10.21778/2413-9599-2020-30-3-28-33
For citation:
Pryadko S.A., Troshin A.Yu., Kozlov V.D., Ivanov A.E. Parallel programming technologies on computer complexes. Radio industry (Russia). 2020;30(3):28-33. (In Russ.) https://doi.org/10.21778/2413-9599-2020-30-3-28-33