Исследование параллельных приложений для гетерогенных архитектур с использованием стандартов SYCL и OpenMP

Main Article Content

Ольга Юрьевна Шамаева
Андрей Михайлович Чернецов
Людмила Анатольевна Зинченко

Аннотация

Представлены результаты исследований параллельных приложений для гетерогенных архитектур с использованием стандарта SYCL и его реализации DPC++, а также технологии OpenMP, разработанные студентами кафедры прикладной математики и искусственного интеллекта (ПМИИ) ФГБОУ ВО «НИУ «МЭИ» в ходе выполнения научно-исследовательских работ. В качестве прикладной задачи рассмотрен поиск кратчайших путей в графах различной размерности с использованием алгоритмов Беллмана-Форда и дельта-шага.


Алгоритм Беллмана – Форда легко поддается распараллеливанию и продемонстрировал отличную масштабируемость. Для алгоритма дельта-шага, напротив, использование GPU не дало заметного ускорения из-за сложности согласования памяти и необходимости многократного копирования данных между устройствами.


Тестирование проводилось с использованием следующих аппаратных средств: центральный процессор Intel Core i5-12400F (6 ядер, 12 потоков), графический процессор NVIDIA GeForce GTX1660 (1408 CUDA-ядер). Результаты тестирования показывают, что даже в рамках одной вычислительной задачи различные реализации могут демонстрировать разное поведение при изменении параметров задачи. Это подтверждает важность предварительного анализа и тестирования при выборе аппаратно-программной архитектуры для задач, требующих высокой производительности.


Разработанный комплекс программ визуализирует зависимость ускорения параллельных реализаций алгоритма от числа вершин в графе при различных параметрах метода и успешно используется в учебно-научном процессе кафедры ПМИИ ФГБОУ ВО «НИУ «МЭИ».

Article Details

Как цитировать
Шамаева, О. Ю., А. М. Чернецов, и Л. А. Зинченко. «Исследование параллельных приложений для гетерогенных архитектур с использованием стандартов SYCL и OpenMP». Электронные библиотеки, т. 29, вып. 5, сентябрь 2026 г., сс. 1815-42, https://rdl-journal.ru/article/view/1092.

Библиографические ссылки

1. SYCL 2020 Specification (revision 11). URL: https://registry.khronos.org/SYCL/specs/sycl-2020/html/sycl-2020.html (date accessed: 12.05.2026)
2. SYCL Reference. URL: https://github.khronos.org/SYCL_Reference/index.html (date accessed: 12.05.2026)
3. Reinders James, Ashbaugh Ben, Brodman James, Kinsner Michael, Pennycook John, Tian Xinmin. Data Parallel C++: Programming Accelerated Systems Using C++ and SYCL. Springer Nature, 2023. 630 p. https://doi.org/10.1007/978-1-4842-9691-2
4. OpenMP standard. URL: https://www.openmp.org (date accessed: 12.05.2026)
5. Robert Sedgewick. Algorithms in C++: Graph algorithms Addison-Wesley, 2002, 496 p.
6. Algorithms: construction and analysis, 2nd edition. Translated from English. Moscow: Williams Publishing House, 2011. 676 p.: ill. Parallel title English.
7. Meyer U., Sanders P. Δ-stepping: a parallelizable shortest path algorithm // J. of Algorithms. 2003. Vol. 49, No. 1. P. 114–152.
8. Crauser, A., Mehlhorn, K., Meyer, U., Sanders, P. (1998). A parallelization of Dijkstra's shortest path algorithm. In: Brim, L., Gruska, J., Zlatuška, J. (eds) Mathematical Foundations of Computer Science 1998. MFCS 1998. Lecture Notes in Computer Science, vol 1450. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0055823


Наиболее читаемые статьи этого автора (авторов)