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

Труды ИСП РАН, 2025, том 37, выпуск 4(1), страницы 51–64 (Mi tisp1009)

Определение неточностей в работе некоторых специализированных цикловых оптимизаций в компиляторе LCC для архитектуры «Эльбрус»

А. В. Ермолицкийa, Д. Н. Левченкоba, М. И. Нейман-задеba

a АО "МЦСТ"
b Московский физико-технический институт (национальный исследовательский университет)

Аннотация: Работа посвящена развитию смешанных методов анализа неточностей, возникающих при проведении компиляторных оптимизаций. Развитие этих методов важно для процессоров с широким командным словом (VLIW), построенных на архитектуре «Эльбрус» со статическим планированием. Проанализированы существующие подходы к выявлению неточностей в работе оптимизаций, выделены их недостатки. Авторами разработан метод обнаружения неточностей в работе двух важных для VLIW оптимизаций: конвейеризации циклов с аппаратной поддержкой (overlap) и оптимизации выноса участков цикла с малой вероятностью исполнения в создаваемый охватывающий цикл (nesting). Метод реализуется посредством инструментирования циклов в пользовательской программе и получения статической информации о работе циклов от компилятора. Предложенный метод был проверен на задачах из пакетов SPEC CPU 2006 и 2017 rate в режиме base (без использования профильной информации) на ЭВМ с процессором «Эльбрус-8С», где доказал свою эффективность. Метод позволил достичь ускорения до 70.7% на отдельных задачах при расстановке подсказок к оптимизации overlap и 4.71% на задаче 520.omnetpp при расстановке подсказок к оптимизации nesting.

Ключевые слова: компиляторные оптимизации; программная конвейеризация; инструментирование кода; широкое командное слово VLIW.

DOI: 10.15514/ISPRAS-2025-37(4)-3



© МИАН, 2026