Детальная информация

Название Исследование и разработка модели планирования инструкций в компиляторе на базе LLVM для RISC-V процессоров с векторным расширением: выпускная квалификационная работа бакалавра: направление 09.03.01 «Информатика и вычислительная техника» ; образовательная программа 09.03.01_02 «Технологии разработки программного обеспечения» = Research and development of an instruction scheduling model in an LLVM-based compiler for RISC-V processors with vector extension
Авторы Горьков Никита Ярославович
Научный руководитель Лавров Алексей Александрович
Организация Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Выходные сведения Санкт-Петербург, 2026
Коллекция Выпускные квалификационные работы ; Общая коллекция
Тематика компиляторы ; кодогенерация ; планирование инструкций ; архитектура RISC-V ; векторное расширение RVV ; автовекторизация ; compiler ; code generation ; instruction scheduling ; RISC-V architecture ; RVV extension ; autovectorization
Тип документа Выпускная квалификационная работа бакалавра
Язык Русский
Уровень высшего образования Бакалавриат
Код специальности ФГОС 09.03.01
Группа специальностей ФГОС 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2026/vr/vr26-2650
Права доступа Доступ по паролю из сети Интернет (чтение)
Дополнительно Новинка
Ключ записи ru\spstu\vkr\42539
Дата создания записи 21.08.2026

Разрешенные действия

Действие 'Прочитать' будет возможно после подготовки администраторами необходимых файлов

Группа Анонимные пользователи
Сеть Интернет

Целью данной работы является исследование и разработка модели планирования инструкций в компиляторе на базе LLVM. Предмет исследования - модель планирования инструкций в компиляторе сlang 23.0. Были проанализированы типовые решения в области планирования инструкций, особенности архитектуры RISC-V и векторного расширения RVV. Для практического исследования использовалась отладочная плата Orange Pi RV2 с процессором Ky X1, включающим 8 ядер Spacemit X60. Разработана методика замера производительности на используемой аппаратной платформе, проведено исследование её микроархитектуры. Исходная модель была доработана с помощью уточнения задержек инструкций, добавления зависимостей от LMUL и SEW, опций тонкой настройки компилятора. Для оценки результатов работы использовался набор бенчмарков rvv_bench. Сравнение производилось с базовой версией компилятора clang 23.0, а также с компиляторами clang, gcc из набора SpacemiT Toolchain. В результате работы был получен прирост производительности на 4,59% на наборе векторизуемых бенчмарков rvv_bench. Достигнуты значительные улучшения в задачах обработки строк (до +50%) и копирования памяти (+26%). Результаты работы могут быть применены при разработке программного обеспечения под исследуемую аппаратную платформу для получения наилучшей производительности, а также для доработки проекта LLVM.

The objective of this work is to investigate and develop an instruction scheduling model within a compiler based on LLVM. The subject of the study is the instruction scheduling model in the Clang 23.0 compiler. Typical solutions in instruction scheduling were analyzed, and the specific features of the RISC-V architecture and the RVV vector extension were researched. For practical investigation, a debugging board (Orange Pi RV2 with the Ky X1 processor, featuring 8 Spacemit X60 cores) was utilized. An analysis of the existing instruction scheduling model was conducted. A methodology for measuring performance on the utilized hardware platform was developed, and its microarchitecture was also investigated. Existing model was improved by accurately describing latencies and LMUL, SEW dependencies of the instructions, as well as compiler tuning options. The performance was evaluated using the rvv_bench benchmark suite. Comparisons were made against the baseline Clang 23.0, as well as against Clang and GCC compilers from the SpacemiT Toolchain. The work resulted in a performance improvement of 4.59% on the set of vectorizable rvv_bench benchmarks. Significant improvements were achieved in string processing tasks (up to +50%) and memory copying operations (+26%). The results of this work can be applied in software development for the investigated hardware platform to achieve optimal performance, as well as for the further refinement of the LLVM project.

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все
Интернет Авторизованные пользователи СПбПУ
Интернет Анонимные пользователи
...