2025-11-23T22:22:17.433145

CAPSim: A Fast CPU Performance Simulator Using Attention-based Predictor

Xu, Zhu, Zhang et al.
CPU simulators are vital for computer architecture research, primarily for estimating performance under different programs. This poses challenges for fast and accurate simulation of modern CPUs, especially in multi-core systems. Modern CPU peformance simulators such as GEM5 adopt the cycle-accurate and event-driven approach, which is timeconsuming to simulate the extensive microarchitectural behavior of a real benchmark running on out-of-order CPUs. Recently, machine leaning based approach has been proposed to improve simulation speed, but they are currently limited to estimating the cycles of basic blocks rather than the complete benchmark program. This paper introduces a novel ML-based CPU simulator named CAPSim, which uses an attention-based neural network performance predictor and instruction trace sampling method annotated with context. The attention mechanism effectively captures long-range influence within the instruction trace, emphasizing critical context information. This allows the model to improve performance prediction accuracy by focusing on important code instruction. CAPSim can predict the execution time of unseen benchmarks at a significantly fast speed compared with an accurate O3 simulator built with gem5. Our evaluation on a commercial Intel Xeon CPU demonstrates that CAPSim achieves a 2.2 - 8.3x speedup compared to using gem5 built simulator, which is superior to the cutting-edge deep learning approach
academic

CAPSim: Быстрый симулятор производительности CPU с использованием предиктора на основе механизма внимания

Основная информация

  • ID статьи: 2510.10484
  • Название: CAPSim: A Fast CPU Performance Simulator Using Attention-based Predictor
  • Авторы: Buqing Xu, Jianfeng Zhu, Yichi Zhang, Qinyi Cai, Guanhua Li, Shaojun Wei, Leibo Liu
  • Классификация: cs.PF (Производительность)
  • Дата публикации: 12 октября 2025 г.
  • Учреждение: Школа интегральных схем Университета Цинхуа
  • Ссылка на статью: https://arxiv.org/abs/2510.10484v1

Аннотация

Симуляторы CPU являются критически важными для исследований компьютерной архитектуры, используются в основном для оценки производительности различных программ. Современные симуляторы производительности CPU, такие как GEM5, применяют методы, точные до цикла и управляемые событиями, однако требуют чрезмерно много времени при моделировании сложного микроархитектурного поведения реальных тестов на внеочередных CPU. В данной статье предлагается CAPSim — новый симулятор CPU, управляемый машинным обучением, с предиктором производительности на основе нейронной сети с механизмом внимания, использующий метод выборки трассировки инструкций с контекстными аннотациями. Механизм внимания эффективно захватывает дальнодействующие влияния в трассировке инструкций, подчеркивая критическую контекстную информацию. Экспериментальные результаты показывают, что CAPSim достигает ускорения в 2,2–8,3 раза по сравнению с симулятором O3, построенным на основе gem5.

Исследовательский контекст и мотивация

Основные проблемы

  1. Узкие места в производительности традиционных симуляторов: Современные симуляторы, точные до цикла (такие как gem5), работают слишком медленно при моделировании полных эталонных программ, основные причины включают:
    • Моделирование, точное до цикла, по сути является последовательным процессом, сложно поддается параллелизации
    • Моделирование современных внеочередных CPU требует моделирования всех деталей микроархитектуры, что требует огромных вычислительных затрат
  2. Ограничения существующих методов машинного обучения: Существующие методы машинного обучения (такие как Ithemal, Granite и т.д.) ограничены предсказанием пропускной способности базовых блоков и не могут обрабатывать предсказание производительности полных программ
  3. Баланс между точностью и скоростью: Необходимо значительно повысить скорость моделирования при сохранении точности предсказания

Значимость исследования

  • Симуляторы CPU являются ключевым инструментом для исследований компьютерной архитектуры
  • С увеличением сложности микроархитектуры CPU и распространением многоядерных систем традиционные методы моделирования сталкиваются с серьезными проблемами эффективности
  • Быстрое и точное предсказание производительности имеет решающее значение для совместного проектирования и оптимизации программного и аппаратного обеспечения

Основные вклады

  1. Предложен метод предсказания производительности CPU на основе механизма внимания: Впервые применен механизм внимания к предсказанию производительности на уровне инструкций, способен захватывать дальнодействующие зависимости между инструкциями, расширяя возможности предсказания с уровня базовых блоков на уровень полных программ
  2. Разработана полная структура симулятора CAPSim: Интегрирует быстрый функциональный симулятор и предиктор производительности мелкозернистых блоков кода, достигая баланса между скоростью и точностью
  3. Разработаны методы ускоренного обучения: Посредством кластеризации и выборки обучающий набор данных разделяется на категории, такие как вычислительно интенсивные, интенсивные по памяти и управляемые, что значительно сокращает время обучения и предотвращает переобучение
  4. Достигнуто значительное повышение производительности: На эталонных тестах SPEC2017 достигнуто максимальное ускорение в 8,3 раза, среднее ускорение в 4,9 раза при сохранении приемлемой точности предсказания

Подробное описание метода

Определение задачи

Входные данные: Последовательность трассировки инструкций и информация о контексте CPU (состояние регистров) Выходные данные: Предсказание времени выполнения фрагмента кода Цель: Значительно повысить скорость оценки производительности полных эталонных программ при сохранении точности предсказания

Архитектура модели

1. Проектирование общей архитектуры

CAPSim использует сквозную архитектуру, содержащую следующие компоненты:

  • Симулятор AtomicSimple CPU: Быстрое создание трассировки инструкций
  • Разделитель последовательности инструкций: Разбивает длинные последовательности инструкций на обрабатываемые фрагменты кода
  • Сэмплер: Уменьшает объем обучающих данных, ускоряет процесс обучения
  • Предиктор производительности на основе внимания: Основной модуль предсказания

2. Теоретическая основа

Статья моделирует общее время выполнения как:

Ttotal=n=1NtiαiT_{total} = \sum_{n=1}^{N} t_i \cdot \alpha_i

где tit_i — идеальное время выполнения i-й инструкции, αi\alpha_i — коэффициент влияния. Путем введения векторного представления и механизма внимания, окончательная формализация имеет вид:

Ttotal=i=1MMLP(Attention(contextM×E,TET,TET))T_{total} = \sum_{i=1}^{M} MLP(Attention(context_{M \times E}, T_E^T, T_E^T))

3. Подробное проектирование предиктора производительности

Слой нормализованного преобразования: Преобразует исходные инструкции ассемблера в нормализованную последовательность токенов, содержащую четыре сегмента:

  • <OPCODE>: Код операции
  • <DSTS>: Целевые операнды
  • <SRCS>: Исходные операнды
  • <MEM>: Информация о доступе к памяти

Построение контекстной информации: Построение матрицы контекста, содержащей информацию о состоянии CPU, как показано в таблице I различных регистров:

Тип регистраКоличествоРазрядностьОписание
Регистры общего назначения (GPR)3264Основные регистры хранения
Векторные скалярные регистры (VSR)64128Регистры для операций с плавающей точкой
Регистр условия (CR)132Отражает результаты операций
Счетчик программы (CIA/NIA)264Адреса инструкций

Многоуровневая сеть внимания:

  • Кодировщик инструкций: Применяет механизм самовнимания к каждой инструкции
  • Кодировщик блоков: Обрабатывает зависимости между последовательностями инструкций
  • Слой MLP: Окончательный вывод предсказания времени выполнения

Технические инновации

  1. Моделирование дальнодействующих зависимостей: По сравнению с последовательными моделями, такими как LSTM, механизм внимания лучше захватывает дальнодействующие зависимости между инструкциями
  2. Предсказание с учетом контекста: Введение состояния регистров CPU в качестве контекстной информации повышает точность предсказания
  3. Иерархическое проектирование внимания: Двойной механизм внимания на уровне инструкций и блоков, учитывающий как отношения токенов внутри инструкций, так и зависимости между инструкциями
  4. Параллельная обработка: Разбиение длинных последовательностей инструкций на небольшие фрагменты, поддерживающее параллельную обработку на GPU, значительно повышает скорость вывода

Экспериментальная установка

Набор данных

  • Набор эталонных тестов: SPEC2017, включающий 24 эталонные программы
  • Архитектура набора инструкций: Power ISA
  • Размер интервала: 5 000 000 инструкций, размер прогрева 1 000 000 инструкций
  • Длина фрагмента кода: 100–200 инструкций
  • Общее количество контрольных точек: 623

Метрики оценки

  • Метрика скорости: Коэффициент ускорения относительно симулятора gem5
  • Метрика точности: Средняя абсолютная процентная ошибка (MAPE)

Методы сравнения

  • Традиционный метод: Симулятор суперскалярного процессора gem5 O3
  • Базовая линия ML: Модель Ithemal на основе LSTM
  • Абляционные эксперименты: Вариант CAPSim без контекстной информации

Детали реализации

  • Аппаратная платформа: NVIDIA GeForce RTX 4090 (24 ГБ), Intel Xeon CPU E5-2623 v4
  • Параметры модели: Размерность вектора встраивания 128, количество голов внимания 4, количество слоев кодировщика 4
  • Параметры обучения: Оптимизатор SGD, скорость обучения 0,001, импульс 0,9
  • Параметры выборки: Пороговое значение 200, коэффициент выборки 0,02

Результаты экспериментов

Основные результаты

Повышение скорости:

  • Максимальный коэффициент ускорения: 8,3 раза (эталон 510.parest)
  • Среднее ускорение: 4,9 раза
  • Эффект ускорения положительно коррелирует с количеством контрольных точек, демонстрируя преимущества параллелизации GPU

Показатели точности:

  • Улучшение на 9,5%–21,2% по сравнению с базовой линией LSTM, среднее улучшение 15,8%
  • После введения контекстной информации улучшение на 1,3%–9,6%, среднее улучшение 6,2%
  • Средняя MAPE на смешанном обучающем наборе составляет 12,0%

Абляционные эксперименты

  1. Механизм внимания vs LSTM: Механизм внимания значительно превосходит LSTM при обработке длинных фрагментов кода
  2. Влияние контекстной информации: Контекстная информация играет ключевую роль в повышении точности предсказания
  3. Эффект классифицированного обучения: Классифицированное обучение улучшает точность на 0,5% по сравнению со смешанным обучением

Тестирование способности к обобщению

Кросс-эталонное тестирование:

  • Перекрестная проверка 6×6, 36 комбинаций обучения-тестирования
  • Точность на обучающем наборе 91,3%, общая средняя точность 88,3%
  • Доказывает хорошую способность модели к обобщению на невидимые эталоны

Кросс-архитектурное тестирование параметров: Показатели точности при различных конфигурациях микроархитектуры:

Конфигурация параметровFetchWidthIssueWidthCommitWidthROBEntryОшибка
Базовая конфигурация88819212,0%
Вариант 148819212,2%
Вариант 284819212,9%

Экспериментальные выводы

  1. Значительный эффект параллелизации: Параллельная обработка на GPU имеет явное преимущество перед последовательным моделированием на CPU
  2. Важность дальнодействующих зависимостей: Механизм внимания эффективно захватывает сложные зависимости между инструкциями
  3. Критическое значение контекстной информации: Информация о состоянии CPU имеет решающее значение для точного предсказания времени выполнения
  4. Эффективность классифицированного обучения: Классифицированное обучение в соответствии с характеристиками программы повышает способность модели к обобщению

Связанные работы

Традиционные симуляторы

  • Симуляторы, точные до цикла: gem5, SimpleScalar, Sniper и т.д., высокая точность, но низкая скорость
  • Инструменты уровня базовых блоков: llvm-mca, uiCA, IACA и т.д., высокая скорость, но ограниченная функциональность

Методы машинного обучения

  • Модели регрессии: Использование линейной/нелинейной регрессии для предсказания CPI и энергопотребления
  • Методы глубокого обучения:
    • Ithemal: Предсказание пропускной способности базовых блоков с помощью LSTM
    • Difftune: Оптимизация параметров llvm-mca
    • Granite: Предсказание производительности базовых блоков с помощью графовой нейронной сети

Методы выборки

  • Статистическая выборка: Периодическая выборка SMARTS
  • Целевая выборка: Выборка SimPoint на основе поведения программы

Основные преимущества данной работы по сравнению с существующими:

  1. Впервые реализовано предсказание производительности на уровне полных программ (а не только на уровне базовых блоков)
  2. Использование симулятора, точного до цикла, в качестве эталона (а не простых инструментов компилятора)
  3. Механизм внимания лучше моделирует дальнодействующие зависимости

Заключение и обсуждение

Основные выводы

  1. Техническая осуществимость: Метод на основе механизма внимания может эффективно предсказывать производительность CPU полных программ
  2. Преимущества производительности: Достигнуто значительное ускорение по сравнению с традиционным симулятором gem5 (2,2–8,3 раза)
  3. Гарантия точности: При значительном повышении скорости сохраняется приемлемая точность предсказания
  4. Способность к обобщению: Модель демонстрирует хорошую адаптивность к невидимым эталонам и различным параметрам архитектуры

Ограничения

  1. Компромисс в точности: Хотя скорость значительно повышена, точность предсказания все еще отстает от специализированного симулятора, точного до цикла (средняя ошибка 12%)
  2. Зависимость от архитектуры: Текущая реализация основана на Power ISA, расширение на другие наборы инструкций требует переадаптации
  3. Требования к обучающим данным: Требуется большое количество аннотированных данных для обучения, начальные затраты высоки
  4. Обработка сложных сценариев: Для экстремально сложного поведения программ и характеристик микроархитектуры способность предсказания может быть ограничена

Направления будущих исследований

  1. Поддержка нескольких архитектур: Расширение на основные наборы инструкций, такие как x86, ARM и т.д.
  2. Повышение точности: Исследование более продвинутых механизмов внимания и методов моделирования контекста
  3. Поддержка многоядерности: Расширение на предсказание производительности многоядерных и гетерогенных систем
  4. Онлайн-обучение: Поддержка адаптивного обучения во время выполнения и обновления модели

Глубокая оценка

Преимущества

Техническая инновативность:

  1. Впервые применен механизм внимания Transformer к области предсказания производительности CPU
  2. Инновационное сочетание контекстной информации и моделирования последовательности инструкций
  3. Разработана полная сквозная структура предсказания

Полнота экспериментов:

  1. Комплексная оценка на стандартных эталонах SPEC2017
  2. Включены подробные абляционные эксперименты и тестирование способности к обобщению
  3. Сравнение с несколькими методами-базовыми линиями

Убедительность результатов:

  1. Значительное повышение скорости (максимальное ускорение в 8,3 раза)
  2. Улучшение точности по сравнению с существующими методами ML
  3. Хорошая способность к кросс-эталонному обобщению

Ясность изложения:

  1. Четкое описание мотивации проблемы
  2. Подробное описание метода, включая математические формулы
  3. Полное представление экспериментальной установки и результатов

Недостатки

Ограничения метода:

  1. Точность предсказания все еще имеет место для улучшения (средняя ошибка 12%)
  2. Проверка только на Power ISA, отсутствует проверка на нескольких архитектурах
  3. Недостаточная проверка способности обработки экстремально сложных сценариев

Недостатки экспериментальной установки:

  1. Сравнение аппаратных платформ может быть несправедливым (GPU vs CPU)
  2. Отсутствие сравнения с большим количеством новых методов ML
  3. Недостаточный анализ различий в эффективности предсказания для различных типов программ

Недостаточный анализ:

  1. Анализ интерпретируемости механизма внимания недостаточно глубокий
  2. Анализ ошибочных случаев ограничен
  3. Анализ потребления вычислительных ресурсов недостаточно подробный

Влияние

Вклад в область:

  1. Предоставляет новый технический путь для предсказания производительности CPU
  2. Способствует применению ML в области компьютерной архитектуры
  3. Предоставляет инструменты для быстрого исследования пространства проектирования архитектуры

Практическая ценность:

  1. Значительно повышает эффективность оценки крупномасштабных эталонных тестов
  2. Обеспечивает быструю обратную связь для оптимизации компилятора и проектирования аппаратного обеспечения
  3. Снижает временные затраты на исследования компьютерной архитектуры

Воспроизводимость:

  1. Описание метода относительно подробное
  2. Использование стандартных наборов эталонных тестов
  3. Однако некоторые детали реализации и код не опубликованы

Применимые сценарии

  1. Исследование пространства проектирования архитектуры: Быстрая оценка влияния различных параметров проектирования на производительность
  2. Оптимизация компилятора: Обеспечение быстрой обратной связи о производительности для оптимизации кода
  3. Ускорение эталонных тестов: Значительное сокращение времени выполнения стандартных эталонных тестов
  4. Обучение и исследования: Предоставление эффективного инструмента моделирования для курсов архитектуры и исследований

Библиография

Статья цитирует 61 связанную работу, включая в основном:

Классические симуляторы:

  • gem5: The gem5 simulator (Binkert et al.)
  • SimpleScalar, Sniper, Zesto и другие традиционные симуляторы

Методы машинного обучения:

  • Ithemal: Accurate, portable and fast basic block throughput estimation (Mendis et al.)
  • Granite: A graph neural network model for basic block throughput estimation (Sýkora et al.)

Механизм внимания:

  • Attention is all you need (Vaswani et al.)
  • Связанные исследования Transformer

Эталонные тесты:

  • Набор эталонных тестов SPEC CPU2017

Общая оценка: Это инновационная и практически ценная статья в области предсказания производительности CPU. Авторы успешно применили механизм внимания к предсказанию производительности CPU, достигли прорыва в предсказании от уровня базовых блоков к уровню полных программ и добились значительного повышения скорости. Хотя в точности предсказания и обобщаемости метода еще есть место для улучшения, данная работа предоставляет ценные инструменты и идеи для исследований компьютерной архитектуры и имеет хорошие перспективы применения.