RUS  ENG
Полная версия
ЖУРНАЛЫ // Труды института системного программирования РАН // Архив

Труды ИСП РАН, 2023, том 35, выпуск 5, страницы 91–106 (Mi tisp817)

О проблемах использования библиотеки OpenBLAS в продуктовом коде на RISC-V

К. А. Зайцева, В. В. Пузикова, А. Д. Соколов

ООО YADRO

Аннотация: Использование для численного решения задач механики сплошной среды метода граничных элементов приводит к необходимости решения системы линейных алгебраических уравнений с заполненной матрицей. Cтандартами де-факто интерфейса программных реализаций функций над заполненными матрицами являются BLAS/LAPACK. Среди оптимизированных открытых реализаций BLAS/LAPACK, только библиотека OpenBLAS включает в себя оптимизации под самый широкий спектр аппаратных платформ – Intel, AMD, ARM и RISC-V. Экосистема открытой архитектуры RISC-V в настоящее время активно развивается: европейские суперкомпьютерные центры открыли центры компетенции RISC-V в рамках правительственной грантовой поддержки EuroHPC, поскольку решения, основанные на архитектуре ARM, не были признаны частью европейской инициативы по развитию собственной технологической независимости. В настоящее время в мире разрабатываются не только высокопроизводительные RISC-V процессоры, но и AI-ускорители, а также видеокарты на RISC-V архитектуре. OpenBLAS активно поддерживается и оптимизируется под появляющееся RISC-V оборудование и расширения. Однако, к библиотекам, использующимся в продуктовом коде, традиционно предъявляются серьезные требования по стабильности и надежности, чтобы минимизировать возможные ошибки и сбои в продукте. Как оказалось, с этой точки зрения, OpenBLAS имеет ряд проблем, которые нам пришлось решить с целью продуктизации этой библиотеки. В данной статье описывается тестовая система OpenBLAS, рассматриваются проблемы тестирования LAPACK-функционала библиотеки и пути их решения. Кроме того, анализируется тестовое покрытие BLAS-функционала и обсуждаются достигнутые результаты по его увеличению. В дальнейшем планируется внести описанные изменения в проект OpenBLAS.

Ключевые слова: метод граничных элементов, система линейных алгебраических уравнений с заполненной матрицей, OpenBLAS, LAPACK, RISC-V, тестирование, продуктизация

DOI: 10.15514/ISPRAS-2023-35(5)-7



© МИАН, 2024