- BrainTools - https://www.braintools.ru -
Дисклеймер: я держу сервис аренды маков, поэтому у меня под рукой флот одинаковых машин и повод их гонять. Цифры ниже с этих машин, методика описана полностью, данные открыты под CC BY. Ссылок на сервис в статье нет.
Запросов «сколько тянет мак» в чатах много, ответов тоже, но почти все без методики: неизвестно квантование, неизвестна версия Ollama, один прогон вместо серии, непонятно, что происходило на машине в этот момент. Такие числа нельзя ни перепроверить, ни сравнить между собой.
Я замерил шесть моделей на одной конфигурации и описываю всё, что может повлиять на результат.
Железо: Mac mini M4, 16 ГБ unified memory, пропускная способность 120 ГБ/с. Машина в остальном простаивала только системные демоны.
Софт: Ollama 0.31.2, macOS 15.3.1 (Sequoia).
Квантование: Q4_K_M у всех моделей.
Промпт: одинаковый для всех просьба объяснить механизм внимания [1] в трансформерах на 300 слов для джуна, с одной конкретной аналогией. num_predict = 512, temperature = 0.7.
Прогоны: 3 на модель, плюс один прогревочный (отбрасывается). Разброс между прогонами до 0.5%.
Прогрев важнее, чем кажется: первый запуск включает загрузку весов в память [2], и если его не отбросить, картина смещается на десятки процентов.
|
Модель |
Параметров |
Генерация, ток/с |
Обработка промпта, ток/с |
|---|---|---|---|
|
Llama 3.2 3B |
3B |
46.7 |
1720 |
|
Mistral 7B |
7B |
22.8 |
645 |
|
Qwen 2.5 7B |
7B |
22.3 |
1130 |
|
Llama 3.1 8B |
8B |
21.2 |
587 |
|
DeepSeek R1 8B |
8B |
20.0 |
531 |
|
Qwen 2.5 14B |
14B |
11.7 |
606 |
Разброс между тремя прогонами каждой модели 0.5%, то есть цифры устойчивые.
Отдельно любопытна разница в обработке промпта у Mistral 7B (645) и Qwen 2.5 7B (1130) при почти одинаковой скорости генерации: модели одного размера, но по разному устроен токенизатор и внимание, и на префилле это видно, а на генерации нет.
Генерация упирается в память, а не в вычисления. Скорость почти линейно следует за пропускной способностью памяти и обратно за размером модели. Отсюда практическое правило: прикинуть скорость можно, поделив полосу на размер весов. Для 8B в Q4 (~4.7 ГБ) при 120 ГБ/с получается около 25 ток/с измеренные 21 попадают в ожидание с поправкой на накладные расходы.
Поэтому на M4 Pro (273 ГБ/с) и M4 Max (546 ГБ/с) прирост будет примерно кратен полосе, а не числу ядер. Своих замеров на них у меня пока нет, поэтому конкретных чисел не даю как появятся, добавлю в таблицу.
Комфортный потолок 16 ГБ – 8B. До 8B модели выдают 20+ ток/с, это быстрее, чем читает человек: ассистент по коду, разбор документов, локальный RAG работают нормально. 14B формально запускается, но 11.7 ток/с это уже ожидание, и на длинных ответах оно раздражает. Для 14B и выше нужны 24-32 ГБ и другая полоса.
Длинный контекст не проблема. Обработка промпта идёт от 530 до 1720 ток/с в зависимости от модели, то есть на порядок два быстрее генерации. Закинуть в контекст большой документ дёшево; дорого потом это генерировать.
Честно про ограничения: одна конфигурация, одно квантование, один тип задачи (генерация связного текста). На кодовых задачах с длинными выводами картина может отличаться, батчинг я не мерил вовсе это отдельная история, и на 16 ГБ он упирается в KV-кэш быстрее, чем в скорость.
Данные и методика: https://macyou.co/benchmarks [3] лицензия CC BY, можно брать и перепроверять.
Если у вас есть машины на M1/M2/M3 или на 24-64 ГБ присылайте свои замеры по этой же методике, соберу сводную таблицу. Разрозненных цифр по интернету много, воспроизводимых почти нет.
Автор: Macyou
Источник [4]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/33885
URLs in this post:
[1] внимания: http://www.braintools.ru/article/7595
[2] память: http://www.braintools.ru/article/4140
[3] https://macyou.co/benchmarks: https://macyou.co/benchmarks
[4] Источник: https://habr.com/ru/articles/1065948/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1065948
Нажмите здесь для печати.