Intel Performance Skills

Три скилла Intel для Linux perf: профилирование, поиск узких мест в коде и выводе perf, оптимизация бенчмарков Phoronix

  • 353 ★ репозитория
  • Последний коммит
СкиллОфициальный

Расширенный доступ

Почему такой уровень

  • Скилл запускает perf, а для аппаратных счетчиков может потребоваться sudo или снижение `perf_event_paranoid` (перед этим он спрашивает вас)
  • Скилл phoronix-test-suite скачивает, ставит и пересобирает бенчмарки на вашей машине
Все причины и проверки

intel/intel-performance-skills

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/intel-performance-skills

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Скилл запускает perf, а для аппаратных счетчиков может потребоваться sudo или снижение `perf_event_paranoid` (перед этим он спрашивает вас)
  • Скилл phoronix-test-suite скачивает, ставит и пересобирает бенчмарки на вашей машине

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Intel Performance Skills собирает три скилла для анализа и ускорения кода на `x86` под Linux. Скилл linux-perf ведет профилирование через perf по пяти сценариям: perf `stat` показывает IPC и долю промахов кэша и ветвлений, perf `record` с perf `report` находит функции и строки, которые тратят процессор, perf `c2c` ищет конкуренцию за кэш-линии и ложное разделение. Четвертый сценарий сравнивает два профиля при разном числе ядер, пятый выдает итоговый отчет: таблица главных функций, аннотированный исходник и найденные шаблоны. Скилл performance-patterns хранит каталог типовых проблем с признаками и способами правки: последовательный аккумулятор, узкий SIMD, пропущенный `vzeroupper`, пропущенный `restrict`, спинлок Test-and-Set, ложное разделение, общий счетчик статистики. Он работает и без профиля, по одному исходнику, и подсказывает, как писать новый векторизованный код с диспетчеризацией по процессору. Скилл phoronix-test-suite ставит, запускает и пересобирает бенчмарки `pts` с отладочными символами, когда целью профилирования выбран такой тест.

Для кого. Разработчикам на C и C++ и инженерам по производительности на `x86` под Linux, которые профилируют код через perf и хотят, чтобы агент вел процесс по шагам.

Подходит, если

  • Программа работает медленно, и агент должен найти, где уходит процессорное время
  • Цикл идет с IPC около 0,3 при малом числе промахов кэша, и причину надо выяснить
  • Сервер замедляется при добавлении потоков, и ложное разделение проверяют командой perf `c2c`
  • Нагрузка перестает масштабироваться после 8 ядер, и сравнение двух профилей покажет узкое место
  • Для бенчмарка pts/compress-zstd нужен профиль и оптимизация с замером до и после

Не подходит, если

  • Машина не на `x86` с Linux: скиллы описаны под `x86` и инструмент perf
  • Прав на счетчики нет: при `perf_event_paranoid` от 2 и выше аппаратным событиям нужен `root`
  • Код написан не на C и C++, например на Java или Python: шаблоны в README посвящены C, C++ и SIMD

Пример запроса к агенту

Профилируй ./myapp --bench и скажи, где уходит время

Ограничения

Скиллы рассчитаны на `x86` под Linux и инструмент perf. Для аппаратных счетчиков при `perf_event_paranoid` 2 и выше нужен `root`: скилл перечисляет запуск через sudo, снижение параметра командой с sudo `tee` или отказ от сбора и ждет вашего ответа. Для аннотаций нужны отладочные символы, поэтому бинарник нередко пересобирают с флагом -g. Скилл phoronix-test-suite скачивает и пересобирает бенчмарки из Phoronix Test Suite. Каталог шаблонов покрывает перечисленные проблемы и не обещает найти любое узкое место.

Как отключить. Удалите папки linux-perf, performance-patterns и phoronix-test-suite из каталога скиллов агента (~/.claude/skills/, .agents/skills/ и аналогов). Команды удаления для gh skill в README нет.

Частые вопросы

Как поставить скиллы Intel в Claude Code?

Командой gh skill install intel/intel-performance-skills linux-perf и такой же для двух остальных скиллов, нужен GitHub CLI 2.90.0 или новее. Вручную папки из skills/ копируют в ~/.claude/skills/ или .claude/skills/ проекта.

Какие проблемы находит performance-patterns?

Последовательный аккумулятор, узкий SIMD в горячем цикле, пропущенный `vzeroupper` и `restrict`, спинлок Test-and-Set, ложное разделение и общий счетчик статистики. В каталоге есть и замена мьютекса на `rwlock`, быстрый CRC32C и сортировка на SIMD.

Нужен ли `root` для сбора профиля?

Для аппаратных событий при `perf_event_paranoid` от 2 и выше нужен. Скилл перечисляет три выхода: запуск через sudo, снижение параметра или отказ от сбора, и ждет вашего выбора.

Работает ли скилл без профиля?

Да, performance-patterns разбирает и один исходник. В README пример: цикл скалярного произведения проверяется на проблемы производительности без запуска. Он же подсказывает, как писать векторизованный код сразу правильно.

Что ищет perf `c2c` в скилле?

Сценарий C ищет конкуренцию за кэш-линии: ложное разделение и события HITM в многопоточном коде. Найденный шаблон скилл передает в performance-patterns для правки.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы

Больше 140 скиллов по системному программированию: компиляторы, отладчики, профилировщики, прошивки, ядро Linux.

СкиллМинимальный доступ279Звезды репозитория

Embedded Skills

embeddedskills

Скиллы для встраиваемой разработки: ИИ управляет компиляторами, отладчиками (J-Link и др.) и шинами (CAN), от кода до проверки на железе. README на китайском

ВоркфлоуШирокий доступ787Звезды репозитория
Официальный

Официальные скиллы Qt: ревью C++ и QML, лучшие практики QML и CMake, тесты Qt Quick, документация, профайлер и Figma в QML, плюс MCP с документацией Qt

СкиллРасширенный доступ523Звезды репозитория

Скилл для ускорения обучения моделей на GPU Moore Threads MUSA: базовый замер, профиль, MFU и проверка численной точности

СкиллРасширенный доступ139Звезды репозитория

Больше 180 скиллов для разработки ПО: баги, тесты, требования, DevOps, безопасность и формальная верификация, плюс наборы под задачу

СкиллШирокий доступ260Звезды репозитория

Скилл ускоряет сборку Xcode: замеряет чистые и инкрементальные сборки, находит узкие места и подбирает настройки проекта

СкиллРасширенный доступ1,3 тыс.Звезды репозитория

Коротко о README

Страница открывается примерами запросов к агенту, затем описывает каждый из трех скиллов с триггерами и таблицей шаблонов. Дальше идут установка через gh skill и копированием для GitHub Copilot, Claude Code, Codex, Gemini CLI и OpenCode, и лицензия MIT.

Бейдж для README

Исходный SKILL.md

---
name: linux-perf
description: >-
  Profile and fix Linux performance problems using `perf`. Workflows: (A) hardware counters -- IPC, cache-miss, branch mispredictions; (B) hotspot profiling -- which functions and source lines consume CPU, with SIMD and accumulator detection; (C) cache-line contention -- false sharing, HITM, `perf c2c`; (D) core-count scaling -- dual-profile comparison, bottleneck categorization; (E) structured hotspot report with annotated source and pattern observations. Resolution strategies: TTAS spinlock, SIMD upconversion, parallel accumulator, structured false-sharing fix, per-CPU stats. Trigger on: perf, profiling, profile, hotspot, hotspots, cache miss, IPC, false sharing, HITM, scaling, core count, thread scaling, bottleneck, slow code, CPU bound, why is this slow, where does time go, does not scale. When in doubt, invoke this skill -- better to use it unnecessarily than to miss a performance opportunity.
---

<!-- (C) 2026 Intel Corporation, MIT license -->


# Linux perf profiling skill

Guide the user through profiling with Linux `perf` — from setup and data collection through reporting and interpretation.

The skill is organized into five parts:
- **Part 1: Setup** — permissions and build flags (always check these first)
- **Part 2: Flows** — end-to-end workflows (A: quick stats, B: hotspot profiling, C: cache contention)
- **Part 3: Cross-skill integrations** and **Reference** — when to delegate, and quick lookup tables
- **Part 4: Building blocks** — focused data collection primitives that flows and other skills can call directly
- **Part 5: Resolution strategies** — common fix patterns that flows can reference by name

---

# Part 1: setup

## Check permissions (always do this first)

```bash
cat /proc/sys/kernel/perf_event_paranoid
```

- **≤ 1**: no `sudo` needed for most data collection
- **2 or higher**: hardware events (cycles, cache-misses, etc.) require root

To lower the limit (ask the user first):
```bash
echo 0 | sudo tee /proc/sys/kernel/perf_event_paranoid
```

**Sudo protocol**: if `sudo` is needed, present these options and wait for the user's answer before proceeding:
1. Run with `sudo`
2. Lower paranoia level with the command above
3. Skip perf collection

## Ensure debug symbols

**Always compile with `-g`** alongside existing optimization flags (e.g. `-O2 -g`). This adds DWARF debug info so `perf report` and `perf annotate` show function names and source lines — it does not weaken optimization.

If given a pre-built binary without `-g`, offer to recompile. If you cannot, use **Building block: resolve address to source** (Part 4) for address correlation.

```bash

Сообщить о проблеме

Foxx AIIntel Performance Skills
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.