ОБЕСПЕЧЕНИЕ АВТОМАТИЧЕСКОГО КОНСТРУИРОВАНИЯ ПРОГРАММ С ИСПОЛЬЗОВАНИЕМ СПЕЦВЫЧИСЛИТЕЛЕЙ НА ОСНОВЕ КОНЦЕПЦИИ АКТИВНЫХ ЗНАНИЙ В СИСТЕМЕ LUNA
Спецвычислители, такие как GPU или NPU, ориентированы на определенный характер вычислительной нагрузки, что позволяет в значительной степени повысить их производительность. Разработка эффективных программ, использующих спецвычислители, является трудоемкой задачей, так как требует знаний и навыков в области системного программирования. В частности, разработка таких программ затруднительна для специалистов других профилей. В работе рассматривается автоматическое конструирование параллельных программ с использованием спецвычислителей. Автоматизация направлена на снижение трудоемкости разработки и исполнения программ с получением приемлемой эффективности. Предлагаемое в работе решение основывается на концепции активных знаний и реализуется в системе активных знаний LuNA. Рассматривается расширение архитектуры исполнительной системы для поддержки спецвычислителей на примере представителя нейронных процессоров Huawei Ascend. Поддержка спецвычислителя обеспечивается отдельным слабосвязанным модулем. Приводятся результаты экспериментального исследования решения задач блочного умножения плотных матриц и корреляционной свертки сейсмотрасс с использованием спецвычислителя.
Работа выполнена в рамках государственного задания ИВМиМГ СО РАН FWNM-2025-0005.
Список литературы
- Malyshkin V. E. Active Knowledge, LuNA and Literacy for Oncoming Centuries // LNCS, Т. 9465. 2015. P. 292–303. DOI: 10.1007/978-3-319-25527-9_19.
- Malyshkin V. E., Perepelkin V. A. LuNA Fragmented Programming System, Main Functions and Peculiarities of Run-Time Subsystem // Proceedings of the 11th International Conference on Parallel Computing Technologies (PaCT-2011), LNCS, 2011. Т. 6873, P. 53–61. DOI: 10.1007/978-3-642-23178-0_5.
- Малышкин В. Э., Перепелкин В. А. Построение баз активных знаний для автоматического конструирования решений прикладных задач на основе системы LuNA // Параллельные вычис-лительные технологии — XVIII всероссийская научная конференция с международным участием, ПаВТ’2024, г. Челябинск, 2–4 апреля 2024 г. Короткие статьи и описания плакатов. Челябинск: Издательский центр ЮУрГУ, 2024. С. 57–68. DOI: 10.14529/pct2024.
- Liang X. Ascend AI Processor Architecture and Programming: Principles and Applications of CANN. Elsevier, 2020. DOI: 10.1016/C2020-0-00270-7.
- Malyshkin V., Perepelkin V., Schukin G. Scalable Distributed Data Allocation in LuNA Fragmented Programming System // The Journal of Supercomputing, 2017. Т. 73, Iss. 2, Springer. P. 726–732. DOI: 10.1007/s11227-016-1781-0.
- Малышкин В. Э., Перепелкин В. А., Щукин Г. А. Распределенный алгоритм управления данными в системе фрагментированного программирования LuNA // Проблемы информатики, 2017. № 1(34). С. 74–88.
- Using Operator Samples [Electron. Res.]: https://www.hiascend.com/document/detail/zh/ CANNCommunityEdition/82RC1alpha001/opdevg/tbeaicpudevg/atlasopdev_10_0025.html.
- AscendCL architecture and basic concepts [Electron. Res.]: https://www.hiascend.com/ document/detail/zh/CANNCommunityEdition/82RC1alpha001/appdevg/aclcppdevg/aclcppdevg_ 000004.html.
- Спирин В. А. Разработка алгоритмов автоматизации применения NPU в системе LuNA // Параллельные вычислительные технологии — XVIII всероссийская научная конференция с меж-дународным участием, ПаВТ’2024, г. Челябинск, 2–4 апреля 2024 г. Короткие статьи и описания плакатов. Челябинск: Издательский центр ЮУрГУ, 2024. С. 165-176. DOI: 10.14529/pct2024.
- Хайретдинов М. С. Алгоритмы поточной свертки в задачах активного вибросейсмоакусти-ческого мониторинга / М. С. Хайретдинов, Г. М. Воскобойникова, Г. С. Седухина // Геосибирь, 2017.
- Лаборатория искусственного интеллекта и информационных технологий [Электрон. Рес.]: https://icmmg.nsc.ru/ru/content/pages/laboratoriya-iskusstvennogo-intell....
- Chen L. Deep learning and practice with mindspore. Springer Nature, 2021. DOI: 10.1007/978-981-16-2233-5.
- Feng W., Maghareh R., Wang K. T. A. Extending DPC++ with Support for Huawei Ascend AI Chipset // International Workshop on OpenCL. 2021. P. 1–4. DOI: 10.1145/3456669.3456684.
- Gu R., Becchi M. A comparative study of parallel programming frameworks for distributed GPU applications // Proceedings of the 16th ACM International Conference on Computing Frontiers. 2019. P. 268–273. DOI: 10.1145/3310273.3323071.
- Robson M. P., Buch R., Kale L. V. Runtime coordinated heterogeneous tasks in Charm++ // 2016 Second International Workshop on Extreme Scale Programming Models and Middlewar (ESPM2). IEEE, 2016. P. 40–43. DOI: 10.1109/ESPM2.2016.011.
- Bauer M. et al. Legion: Expressing locality and independence with logical regions // SC’12: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis. IEEE, 2012. P. 1–11. DOI: 10.1109/SC.2012.71.
- Augonnet C. et al. StarPU: a unified platform for task scheduling on heterogeneous multicore architectures // Euro-Par 2009 Parallel Processing: 15th International Euro-Par Conference, Delft, The Netherlands, August 25–28, 2009. Proceedings 15. Springer Berlin Heidelberg, 2009. P. 863–874. DOI: 10.1007/978-3-642-03869-3_80.
- Ayguad´e E. et al. An extension of the StarSs programming model for platforms with multiple GPUs // Euro-Par 2009 Parallel Processing: 15th International Euro-Par Conference, Delft, The Netherlands, August 25–28, 2009. Proceedings 15. Springer Berlin Heidelberg, 2009. P. 851–862. DOI: 10.1007/978-3-642-03869-3_79.