Ситуация нишевая, но живая: у вас 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.