Гайды

LLM на Intel Arc и встроенной графике Intel

Что делать владельцу Arc или свежего встроенного графического ядра, когда все гайды написаны под NVIDIA: порядок установки бэкенда и расчёт ожидаемой скорости.

Ситуация нишевая, но живая: у вас Arc A770 с 16 гигабайтами памяти, или ноутбук на свежем процессоре Intel со встроенной графикой Arc, а каждая инструкция по локальному запуску начинается со слов «установите CUDA Toolkit». Дальше обычно следует совет «купите NVIDIA», который никак не помогает.

Помогает другое: у Intel есть три рабочих пути, и один из них заводится за пять минут.

#Что понадобится

  • Свежий графический драйвер Intel. Это не формальность: поддержка вычислений на Arc заметно менялась от версии к версии, и старый драйвер — самая частая причина, по которой ничего не работает.
  • Понимание, какая у вас графика. Дискретная Arc серии A или B, встроенная Arc в процессорах Core Ultra, старая встроенная Iris Xe или UHD — это четыре разных уровня возможностей.
  • Полчаса времени, если пойдёте по пути с oneAPI.

Инструменты Intel для локального запуска моделей развиваются быстро и переименовываются. Названия пакетов ниже верны на момент написания; перед установкой сверьтесь с текущей документацией проекта, ссылки на конкретные версии устаревают за месяцы.

#Три пути, в порядке возрастания усилий

Путь 1: Vulkan. Универсальный вычислительный бэкенд llama.cpp. Работает на дискретной Arc, на встроенной Arc и на Iris Xe. Не требует ничего, кроме драйвера. Самый быстрый способ проверить, стоит ли вообще возиться.

Путь 2: SYCL через oneAPI. Родной для Intel вычислительный путь в llama.cpp. Требует установки инструментария oneAPI и сборки. Обычно быстрее Vulkan на дискретных картах.

Путь 3: сборки Intel с IPEX-LLM. Intel публикует собственные сборки инструментов локального запуска, оптимизированные под свои ускорители, включая портативные варианты Ollama. Наименее гибкий путь, но требующий наименьшего понимания внутренностей.

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

#Шаг 1. Проверить, что устройство видно

sycl-ls

Команда доступна после установки oneAPI и перечисляет вычислительные устройства с уровнем поддержки. Ваша карта должна быть в списке как устройство level_zero или opencl.

Без oneAPI проверить проще:

vulkaninfo --summary

На Windows наличие устройства видно в диспетчере задач, но факт вычислительной доступности он не подтверждает — только Vulkan или SYCL дают однозначный ответ.

#Шаг 2. Собрать llama.cpp с Vulkan

cmake -B build -DGGML_VULKAN=ON
cmake --build build --config Release -j
./build/bin/llama-cli -m models/qwen2.5-7b-instruct-q4_k_m.gguf -ngl 99 -c 8192

Если карт несколько (например, дискретная Arc плюс встроенная графика), нужное устройство выбирается переменной:

GGML_VK_VISIBLE_DEVICES=0 ./build/bin/llama-cli -m models/model-q4_k_m.gguf -ngl 99

#Шаг 3. Собрать с SYCL, если Vulkan не устроил

Сначала подключается окружение oneAPI, потом конфигурируется сборка:

source /opt/intel/oneapi/setvars.sh
cmake -B build -DGGML_SYCL=ON -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx
cmake --build build --config Release -j

На Windows роль setvars.sh играет setvars.bat из каталога установки oneAPI, и запускать конфигурацию нужно из той же сессии терминала. Забытый вызов setvars — причина примерно половины неудачных сборок: компилятор icx просто не находится.

#Шаг 4. Посчитать, чего ожидать

Публиковать чужие замеры здесь было бы нечестно, поэтому таблица посчитана арифметически: теоретический потолок скорости генерации равен пропускной способности памяти, делённой на вес модели, а реалистичный диапазон — 40–60% от него. Пропускная способность взята из официальных спецификаций устройств. Свои числа получите замером из следующего шага.

Устройство Пропускная способность 3B Q4_K_M (2 ГБ) 7B Q4_K_M (4,7 ГБ) 14B Q4_K_M (9 ГБ)
Arc A770 16 ГБ ~560 ГБ/с 110–170 ток/с 45–70 ток/с 24–37 ток/с
Arc A750 8 ГБ ~510 ГБ/с 100–150 ток/с 40–65 ток/с не влезает
Arc B580 12 ГБ ~450 ГБ/с 90–135 ток/с 38–57 ток/с не влезает с контекстом
Встроенная Arc (Core Ultra, LPDDR5) ~100–120 ГБ/с 20–36 ток/с 8–15 ток/с 4–8 ток/с
Iris Xe (DDR4/LPDDR4x) ~50–70 ГБ/с 10–21 ток/с 4–9 ток/с не рекомендуется

Что здесь смотреть: разрыв между дискретными и встроенными вариантами — примерно пятикратный, и он не закрывается никакой настройкой, потому что встроенная графика использует ту же оперативную память, что и процессор. Второе наблюдение: 8 гигабайт памяти на A750 закрывают класс 7B, но не оставляют запаса под длинный контекст.

Реальные цифры на дискретной Arc часто оказываются ниже расчётного диапазона: зрелость программного стека здесь пока уступает конкурентам, и разрыв между теоретическим потолком и практикой больше. Это ожидаемо и не означает поломки.

#Проверка результата

Убедитесь, что считает именно графика. Строка в логе запуска должна называть Vulkan или SYCL, а не CPU. Загрузку устройства во время генерации видно в диспетчере задач Windows на вкладке производительности графического процессора.

Замерьте:

./build/bin/llama-bench -m models/qwen2.5-7b-instruct-q4_k_m.gguf -ngl 99 -p 512 -n 128

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

#Что может пойти не так

Всё собралось, но работает на процессоре. Проверьте, что флаг бэкенда действительно применился: конфигурация в уже существующий каталог build может не подхватить изменение. Удалите каталог и сконфигурируйте заново.

icx: command not found. Не выполнен setvars в текущей сессии терминала. Переменные окружения oneAPI не сохраняются между сессиями.

Встроенной графике не хватает памяти. Объём, который она может занять, ограничен настройкой в BIOS или динамическим распределением системы. Для моделей это ограничение реально: увеличить долю иногда можно, но не на всех платформах.

Модель работает, но текст бессвязный. Признак проблемы с вычислениями в конкретной версии бэкенда. Попробуйте другой путь — если бессвязность была на SYCL, проверьте на Vulkan, и наоборот.

Драйвер падает на длинном запросе. Уменьшите размер батча обработки промпта. На Arc это встречается чаще, чем на зрелых платформах.

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

#Стоит ли покупать Arc A770 под локальные модели?

16 гигабайт памяти за свои деньги — сильное предложение, и по пропускной способности карта не уступает конкурентам своего уровня. Слабое место — зрелость программного стека: часть инструментов её не поддерживает, часть поддерживает хуже, чем могла бы. Это покупка для человека, готового разбираться.

#Работает ли Ollama на Intel Arc?

Стандартная сборка задействует ускоритель Intel не всегда. Intel публикует собственные сборки под свои устройства — их наличие и способ установки проверяйте в документации проекта, состав меняется. Альтернатива — llama.cpp, собранная с нужным бэкендом вручную.

#Поможет ли встроенная графика Intel на ноутбуке?

В обработке запроса — заметно, в генерации — почти нет: узкое место общее, это пропускная способность оперативной памяти. Что реально работает на машине без дискретной карты, разбирает материал о том, что запускается на ноутбуке без видеокарты.

#Что быстрее — SYCL или Vulkan?

На дискретных картах Arc обычно SYCL, потому что это родной путь. На встроенной графике разница часто в пределах погрешности. Универсального ответа нет: соберите оба и замерьте на своей модели.

#Какую модель взять под 8 или 12 гигабайт памяти Arc?

Класс 7–8B в квантизации Q4_K_M с контекстом до 8–16 тысяч токенов. Подборка рабочих вариантов для ограниченной памяти — в таблице моделей для слабого железа.

#С чего начать, если ничего из этого пока не установлено?

С Vulkan: он требует только драйвера и даёт понять, стоит ли тратить время на остальное. Общая последовательность действий при локальном запуске описана в руководстве по запуску LLM локально.

#У меня AMD, а не Intel — логика та же?

Структурно да: там тоже есть родной стек, универсальный Vulkan и молчаливый откат на процессор. Детали другие и разобраны в материале о запуске LLM на видеокартах AMD.

Хотите ИИ, который помнит вас?

Persona держит контекст между чатами и работает на вашем железе — если развернуть её у себя и подключить локальную модель.

Создать аккаунт