Перейти к содержанию
modelium.
Начать с задачи
←

llama.cpp b11195: тайловое умножение для CPU и квантованных моделей

В предварительной сборке llama.cpp b11195 от 26 сентября 2026 года появился тайловый CPU-путь матричного умножения для ряда K- и IQ-квантов GGUF. Он включён по умолчанию на поддерживаемых x86-сборках и особенно ориентирован на обработку больших пакетов токенов; при неподходящей операции код возвращается к обычному пути. Автор PR приводит ускорение отдельных больших матричных операций в 3–7 раз на AMD 9950X3D, но это не замер скорости целой модели. Новых весов нет; сам runtime распространяется под MIT.

llama.cpp b11195: тайловое умножение для CPU и квантованных моделей

26 сентября 2026 года команда ggml-org/llama.cpp выпустила предварительную сборку b11195. Её главное изменение — новый тайловый путь умножения матриц в CPU-бэкенде для ряда квантованных GGUF-весов. PR #27851 был слит в основную ветку в тот же день. Это изменение движка, не выпуск новой модели или новых весов. s1 s2

Что получает локальный запуск

При умножении больших матриц новый код распаковывает квантованные блоки в тайлы до 256 × 256 элементов, повторно использует результат распаковки и выполняет вычисления небольшими ядрами. В коде заявлена поддержка K-квантов Q2_K–Q6_K и отдельных IQ-форматов, в том числе IQ4_XS; он также подключён к операции MUL_MAT_ID для MoE-экспертов. Активация зависит от CPU-сборки, формата весов и формы операции, поэтому наличие формата в перечне ещё не гарантирует выигрыш конкретной модели. s2 s3

Потенциальная польза — prefill, то есть обработка длинного входного контекста или пакетных запросов на CPU. Это не обещание ускорения генерации каждого следующего токена. При маленьком числе строк код оставляет обычный путь; GGML_CPU_TILED_MM=0 отключает новый алгоритм для сравнения или диагностики. Переменная GGML_CPU_TILED_MM_FORCE=1 предназначена для тестов и может заставить использовать невыгодный путь — её не стоит включать как универсальный способ ускорения. s3

Что измерено, а что нет

Автор PR измерял отдельную операцию mul_mat на AMD Ryzen 9 9950X3D с восемью потоками. Для больших матриц в его таблицах разные K-кванты дают примерно 3–7-кратный результат относительно прежнего пути; примечание к релизу осторожнее формулирует его как 3–6×. При сокращении размеров эффект исчезает: в описании сборки отдельно указана потеря производительности в некоторых тестах матрица–вектор. Это авторские микробенчмарки, а не независимый тест llama.cpp на реальной модели и не обещание 3–7× по токенам в секунду. Отдельная проверка качества ответов модели также не опубликована. s1 s2

Как проверить на своём CPU

Возьмите сборку b11195 для своей платформы и одну и ту же локальную GGUF-модель. Сравните llama-bench с одинаковым числом потоков, моделью и параметрами входа в двух отдельных запусках: обычный режим и запуск с GGML_CPU_TILED_MM=0. Смотрите отдельно показатель обработки промпта и генерации; повторите измерение несколько раз, поскольку результат зависит от CPU, квантования, длины промпта и других путей вычисления. Поскольку сборка отмечена как prerelease, для рабочего окружения разумно сначала проверить корректность ответов и стабильность на своих сценариях. s1 s3

llama.cpp распространяется под MIT, которая допускает коммерческое использование движка при соблюдении условий лицензии. Лицензию конкретных весов GGUF нужно проверять отдельно: лицензия runtime не меняет условий модели. s4

Источники