llama.cpp b11464 исправляет выбор Intel GPU в SYCL Flash Attention
На странице · 2 разделов
В предварительную сборку llama.cpp b11464 вошло исправление для SYCL Flash Attention на системе с несколькими разными Intel GPU: код теперь берёт архитектуру фактически выбранного устройства, а не устройства из контекста. Автор проверил конфигурации Arc A770 с интегрированной графикой и с другой A770; численных замеров скорости и независимого теста Modelium нет.
Что изменилось
7 октября 2026 года в предварительный выпуск llama.cpp b11464 вошёл PR #29071 об обработке Flash Attention в SYCL при работе с несколькими Intel GPU. Тег указывает на коммит слияния этого PR. Это исправление движка локального инференса, не новые веса и не стабильный номерной релиз. В выпуск приложены SYCL-сборки для Ubuntu x64 (FP16 и FP32) и Windows x64. s1 s2 s3
В векторном пути Flash Attention код выбирал свойства архитектуры GPU по ctx.device; патч использует ggml_sycl_get_device() — фактически выбранное устройство при выполнении этого участка. Так он устраняет описанную автором проблему, когда в смешанной конфигурации решение для одного GPU принималось по свойствам другого. В том же PR вынесена вспомогательная функция для копирования через память хоста; она не является заявленным ускорением. s2 s3
Кому это полезно
Изменение адресовано прежде всего пользователям SYCL-бэкенда с несколькими устройствами разных типов, например дискретной Intel Arc и интегрированной графикой. Автор PR сообщил о локальных проверках на Arc A770 + iGPU процессора Core i5-13500, Arc A770 + Arc A770 и на одной Iris Xe. Это перечень его проверенных конфигураций, не минимальные требования и не независимый тест Modelium. В PR нет сопоставимого численного замера скорости до и после патча, поэтому обещать прирост токенов в секунду нельзя. s2
Если на таком компьютере возникает ошибка или некорректное поведение именно при SYCL Flash Attention, сравнивайте прежнюю версию с b11464 или более поздней сборкой, содержащей тот же коммит, на одной модели и одинаковых параметрах. Сначала проверьте обнаружение устройств и распределение слоёв; документация SYCL различает --split-mode none|layer и выбор основного GPU через --main-gpu. Параметр GGML_SYCL_ENABLE_FLASH_ATTN позволяет включать или отключать Flash Attention для диагностики. Документация также предупреждает об отдельных сбоях копирования между устройствами и описывает host-forward вариант GGML_SYCL_DEV2DEV_MEMCPY=2; не следует смешивать эту проблему с исправленным выбором архитектуры в PR. s4
Готовые Ubuntu-архивы содержат только бинарные файлы SYCL-бэкенда: на машине должны быть совместимые драйверы Intel GPU и oneAPI. Предварительный билд не означает, что любая комбинация устройств или любой режим Flash Attention теперь проверены; собственных испытаний и чисел производительности редакция не проводила. Код llama.cpp в этой ревизии распространяется по MIT — это лицензия движка, а не автоматическое разрешение на использование произвольной загруженной модели. s1 s4 s5
Источники
- ggml-org/llama.cpp — предварительный релиз b11464 — GitHub API: release created_at 2026-10-07 07:24:43 UTC; prerelease=true; SYCL assets для Ubuntu и Windows.. Получено 07.10.2026.
- ggml-org/llama.cpp — PR #29071: mixed GPUs and Flash Attention — Merged_at 2026-10-07 07:24:44 UTC; авторские проверки A770+iGPU, A770+A770, Iris Xe; численных замеров нет.. Получено 07.10.2026.
- ggml-org/llama.cpp — коммит b11464 — Tag ref равен merge commit PR; итоговый diff меняет выбор устройства в SYCL fattn-vec.hpp и выносит host-forward copy.. Получено 07.10.2026.
- ggml-org/llama.cpp — SYCL backend guide at b11464 — Режимы нескольких GPU, --main-gpu, Flash Attention, host-forward diagnostic и требования драйверов/oneAPI.. Получено 07.10.2026.
- ggml-org/llama.cpp — MIT LICENSE at b11464. Получено 07.10.2026.