Тестова llama.cpp b10734 готує Metal 4 Tensor API для M5 і A19
У тестовій збірці Metal backend почав окремо збирати й завантажувати tensor kernels для нових Apple-чипів; бенчмарків і стабільного релізу поки немає.

У тестовій збірці llama.cpp b10734 розробники ввімкнули Metal 4.0 Tensor API для майбутніх і нових Apple-платформ класу M5+ та A19+. Зміна стосується backend для локального виконання моделей: tensor kernels тепер збираються в окрему Metal library, завантажуються спеціальним шляхом і перевіряються окремим regression test. Це важливий інфраструктурний крок, але не оголошення готового прискорення — у release notes немає публічних результатів продуктивності.

Що саме з’явилося у збірці
Metal backend тепер може запросити мовну версію Metal 4.0 там, де потрібний Tensor API. Код для tensor operations компілюється не разом з усіма звичайними kernels, а в окремий metallib. Під час запуску backend завантажує цю бібліотеку окремо, що розділяє новий апаратно залежний шлях і звичний Metal-код.
Таке розділення корисне не лише організаційно. Нові можливості compiler/runtime можуть вимагати іншої версії мови й не повинні випадково зробити основну бібліотеку несумісною зі старішими пристроями. Окремий артефакт також простіше перевіряти в CI та діагностувати, якщо збірка або завантаження kernels зламається.
Для яких пристроїв це призначено
У release notes явно названі чипи M5+ і A19+. Знак «плюс» тут слід читати як покоління не нижче зазначеного, а не як гарантію для кожної конкретної конфігурації. Наявність відповідного Apple Silicon ще не означає, що будь-яка модель автоматично піде швидше: результат залежатиме від підтриманих операцій, розміру моделі, типу квантизації, memory bandwidth і того, яка частина графа реально використовує tensor path.
Для M1–M4 або ранніх мобільних чипів новина не обіцяє появи Tensor API. llama.cpp має зберігати звичайний Metal-шлях, але користувачам тестових пакетів однаково потрібно перевірити старт, завантаження моделі та кілька типових prompt у своїй конфігурації.
Що зроблено для надійності
До зміни додано regression test, який використовує зовнішній tensor API metallib. Його мета — ловити ситуації, коли основна програма збирається, але окрема бібліотека відсутня, несумісна або завантажується неправильним шляхом. Також виправлено порядок build dependencies, щоб metallib був готовий до моменту, коли його потребує наступний етап.
Це типовий, але важливий етап інтеграції нового GPU API: доставка kernel-файлу та правильний порядок build часто спричиняють більше практичних збоїв, ніж сам математичний код. Окремий тест зменшує ризик, що пакет пройде загальну компіляцію, але впаде вже на машині користувача.
Чого реліз поки не доводить
- Немає опублікованого порівняння tokens per second до і після Tensor API.
- Не вказано повний перелік моделей, tensor operations і quantization formats, які отримують виграш.
- b10734 позначена як тестова збірка, а не довгостроково підтримуваний стабільний реліз.
- Наявність коду для M5+/A19+ не є обіцянкою однакової поведінки на macOS, iOS і різних версіях SDK.
Практичний висновок: розробникам застосунків варто сприймати b10734 як сигнал підготувати тестову матрицю для нового Apple hardware, але не міняти production defaults без власних вимірювань і перевірки fallback.
Як коректно протестувати
Порівнювати потрібно ту саму модель, квантизацію, context size, batch settings і prompt на однаковому пристрої. Окремо виміряйте cold start, час завантаження metallib, prefill, generation speed, peak memory і енергоспоживання. Один короткий prompt легко приховує витрати на підготовку kernels або, навпаки, перебільшує їх.
Для застосунку, який розповсюджує власні binaries, важливо перевірити packaging: чи потрапив окремий metallib у bundle, чи працює code signing, чи не змінюється шлях до ресурсу після notarization і чи коректно відпрацьовує fallback на пристрої без Tensor API. Саме ці сценарії й роблять новий зовнішній regression test корисним для downstream maintainers.
Джерело та ліцензія
Огляд підготовлено за release notes тестової збірки llama.cpp b10734. Репозиторій поширюється за ліцензією MIT. Український матеріал самостійно перекладено й адаптовано редакцією; тверджень про непідтверджений приріст швидкості не додавалося.
Матеріал перекладено, переказано та доповнено редакцією українською мовою.
Читайте далі — ми вже розбираємо наступну важливу тему.


