Открытый  стенд
Открытый стенд

Я собрал домашний сервер с нейросетками, чтобы не зависеть от облака. Далее честный рассказ с цифрами, бенчмарком на 14 реальных задачах и выводами, которые я проверял на себе.

Если совсем коротко: киловатт питания, две серверные Tesla P100 (суммарно 32 ГБ видеопамяти), турбины, которые слегка шумят, но сервер пришлось выселить на кухню, и Xeon на 28 потоков. Всё это выдаёт от 10 до 50 токенов в секунду, в зависимости от модели. DeepSeek в облаке в три раза быстрее, зато это моё и всегда доступное круглые сутки.

Железо, или почему всё выглядит как археологический артефакт

Стенд открытый, специально. Не потому что модно, а потому что в закрытом корпусе пыль собирается комками, а горячий воздух некуда девать. Тут поток идёт напрямую на турбины и пыль не задерживается.

Начинка:

  • CPU: Intel Xeon E5-2680 v4, 14 ядер / 28 потоков @ 2.40 ГГц

  • RAM: 64 ГБ DDR4 (4×16 ГБ Micron, 2133 МГц)

  • GPU: 2× NVIDIA Tesla P100 PCIe 16 ГБ + GeForce GT 710 (чтобы вообще было хоть какое-то видео)

  • Накопитель: NVMe CUSU CV3500Q 512 ГБ (QLC)

  • Блок питания: 1050 Вт

  • Стек: llama.cpp, CUDA 12.4.

Почему P100? Потому что они стоили смешно дёшево можно найти в интервале от 4 до 9 т. р. Это серверные карты 2016 года, их списывали из дата-центров тысячам, и сейчас они продаются почти за бесценок. У них 16 ГБ HBM2 на карту, нет тензорных ядер, работают они только через llama.cpp с GGUF-квантами. Зато две штуки дают 32 ГБ — ровно столько, чтобы влезали Qwen и Gemma до 32B.

Типичное предложение магазина
Типичное предложение магазина

Сначала была одна карта. Вторая ехала ко мне еще неделю, и когда пришло уведомление из пункта выдачи, я чуть не побежал туда. Воздуховоды напечатал на 3D-принтере: без них карты уходят в троттлинг. Теперь дует вдоль ребер охлаждения как надо.

Первоначальная сборка с одной картой
Первоначальная сборка с одной картой
Печать воздуховода на 3D-принтере
Печать воздуховода на 3D-принтере

Зачем мне это понадобилось

В этом году локальные модели догнали Gemini полугодичной давности. До лидеров им далеко, но как рабочий инструмент они уже годятся. И тут я понял: если нужен агент, который живёт у меня и не зависит от внешних API, без своего железа не обойтись. Свое — это значит доступное всегда и в любое время суток и появляется возможность заниматься любыми самыми дикими экспериментами без опасения случайно сжечь все оплаченные для работы токены.

Энергетика, или бесплатное отопление

В спящем режиме машина ест около 135 Вт. Под нагрузкой — до 600. Две турбины и 28 ядер Xeon ощутимо греют комнату, так что отопление у меня почти бесплатное.

Реальные замеры:

Ваттметр: режим простоя 135 Вт потребления всей машиной
Ваттметр: режим простоя 135 Вт потребления всей машиной
Ваттметр: нагрузка — 480 Вт всей машиной
Ваттметр: нагрузка — 480 Вт всей машиной

Что оно умеет: цифры

Рабочая модель у меня теперь почти всегда одна, Ornit-1.5-35B (Q4_K_M) в режиме без размышлений. Облачный DeepSeek по скорости обгоняет её втрое: локально выходит около 40 токенов в секунду. Зато по делу она не подводит — все 14 задач закрыла на полный балл, 140 из 140, и обошла эталон. Она MoE- суммарно 35 миллиардов, а активно около 13, поэтому на две P100 умещается. Скорость остальных моделей гуляет от 10 до 50 токенов в секунду, смотря какую модель запустишь.

14 тестов синьора, или почему я не верю обзорам

Есть сайты, где модели сравнивают. Таблица: одна набрала 86, другая 88. Мне это мало что говорит. Мои задачи выглядят иначе: «напиши FreeRTOS-задачу для ESP32, которая опрашивает DHT22 не чаще раза в 2 секунды, управляет реле через гистерезис, не использует delay() и сбрасывает watchdog». Вставь delay(1000) в loop(), и контроллер уйдёт в перезагрузку. Баллы такое не покажут.

За годы работы я сам наступал на эти грабли, из них и собрал четырнадцать задач. Тут и гонка ресурсов в алготрейдинге на Python, и температурный дрейф MEMS-датчика BMA423. ESP32 с FreeRTOS вымотал меня watchdog-ом, переполнением стека и износом NVS. В алгоритмах отдельная боль — фильтр Калмана и NaN в double. Доработка Андроид — это smali-патчи и torn read в JMM. Ещё 3D-печать, безопасность веб-приложений и разбор бинарных протоколов, куда без них.

Пара примеров. По ESP32 я писал прошивку для проекта VibroVario, и ядро падало. Оказалось, flash-шина SPI общая для обоих ядер Xtensa, а прерывание с одной стороны глушит Wi-Fi на другой. С Калманом вышло забавно: фильтр высоты работал на ESP32 в float32, а на Python в float64 выдавал NaN. Xtensa включает FTZ и молча превращает субнормальные числа в ноль, на этом фильтр и держался. Проверял DEX-файл: поставил 0x3F800000 вместо 0x42480000, то есть 1.0f вместо 50.0f, и интерфейс показал «1.06 миллиарда» вместо 50 метров.

Каждую модель я гонял по всем 14 задачам и ставил от 0 до 10. Плюс три «красных флага» за принципиальные ошибки. Например, если модель говорит, что перенос задачи на другое ядро решает проблему с шиной — не решает, parking глобален. За эталон взял облачную DeepSeek V4 Flash. Вот результат:

Таблица «5 лучших»:

Модель

Где

Балл

Скорость

Контекст

Ornit-1.5-35B

локально

100%

40.8 t/s (без думания; think ~22)

192K

Qwen3.8-27B-self-MTP Q5 (224K)

локально

99%

~21

224K

Muse-Glimmer-30B

локально

99%

17.6

256K

Fusion-711

локально

94–97%

23.8

192K

DeepSeek V4 Flash (эталон)

облако

97%

~120

Главное, что я вынес из этой таблицы, — облако по-прежнему впереди, но уже не там, где ждал. По «узким» инженерным задачам — ESP32, Калман, smali, износ флешпамяти — локальная Ornit-1.5 теперь обгоняет эталон: 100 против 97. Те самые грабли, на которые я наступал, локальная модель берёт лучше облака.

А вот на длинных контекстах облако быстрее и умнее. DeepSeek отдаёт 120 токенов в секунду против моих 40, а когда в контекст уезжает 300 тысяч токенов — большой проект целиком, к примеру, облако отвечает за секунды и нить не теряет. Локальная карта на таком объёме сперва думает минуту, а потом может и запутаться. Короткую, но каверзную задачу оставляю Ornit, длинные тексты закидываю в облако.

Экономика: облако против гаража

За все тесты я сжёг в облаке 300 тысяч токенов, по старым ценам это около 4 рублей. Сервер за те же два часа потратил электричества на 6 рублей. Получается, облако даже дешевле, и это без учёта того, что сервер греет комнату. Потом я открыл статистику за 30 дней, и там всё интереснее.

Считал и пересчитывал, пока не пришёл к выводу: локальные LLM облако не отменяют. За прошедший месяц набежало 25858 запросов в DeepSeek и 5 млрд токенов. Звучит странно, но заплатил я 389 юаней — около 5000 рублей по старым и новым ценам. А после подорожания с 16 августа будет под 7 000. Всё потому, что 99% этих токенов — вход с кешем: текст модели уже знаком, и облако отдаёт его по $0.007 за миллион. Реальной генерации токенов у меня миллионов 37 в месяц.

Мои затраты на облачный Дипсик за последние 30 дней
Мои затраты на облачный Дипсик за последние 30 дней

Дальше начинается самое интересное. Есть облачные видеокарты в аренду, по моим расчетам за 7000р я смогу получить даже больше токенов чем у Дипсика - .если гонять её по 8 часов в день. Скорость у неё тоже ~70 ток/с, то есть за месяц она сгенерит даже больше, чем мне нужно: 60 млн против 37. А вход с кешем локально тоже работает — llama.cpp держит контекст сессии в памяти и не пересчитывает повторные куски, как это делает DeepSeek.

По деньгам выходит паритет, но облако всё равно выигрывает в другом: оно держит 25 моих запросов одновременно, кеш у него общий на все сессии, работает 24/7, и запрос с контекстом на 200 тысяч токенов отвечает за секунды. У арендованной карты один поток, и холодный запрос может думать минуту.

Выводы: один поток и 8 часов в день — бери арендованную карту: то же самое за те же деньги, зато модель своя и лимитов нет. Когда задач много и они идут пачкой — тогда облако. А своё железо я покупал не ради экономии, просто приятно, когда оно твоё и работает всегда .

Как я теперь работаю

Быстрые задачи и прототипы едут в облако — оно быстрее и параллелит запросы.

Embedd, мелкие задачи, остаются на своём сервере. Четырнадцать тестов показали: локальная модель уровня Senior тянет практически все.

Всё это я проверял на своих задачах. Соберите бенчмарк из типовых задач, прогоните через скрипт и выбирайте по цифрам, а не по обзорам.

Я не пытаюсь доказать, что локальное лучше облака, а облако — зло. Просто инструменты разные. Своё железо — это приватность, независимость и право гонять любую модель хоть ночью.

Облако — это скорость, масштаб и то, что за ним не надо следить. Держу и то, и другое. Еще нейросети до сих пор не умеют паять. И пока не научатся, у инженера есть работа. А если научатся — у меня есть 28 потоков Xeon и две P100, чтобы это спокойно обсудить.

P.S. Уже после написания статьи попробовал запустить на данном стенде модель AtomicChat / Qwen3.8-Flash-Next-GGUF, и она завелась на 10-12 токенах в секунду.

Комментарии (9)


  1. VBDUnit
    11.09.2026 11:08

    Есть сайты, где модели сравнивают. Таблица: одна набрала 86, другая 88. Мне это мало что говорит. Мои задачи выглядят иначе: «напиши FreeRTOS‑задачу для ESP32, которая опрашивает DHT22 не чаще раза в 2 секунды, управляет реле через гистерезис, не использует delay() и сбрасывает watchdog». Вставь delay(1000) в loop(), и контроллер уйдёт в перезагрузку. Баллы такое не покажут.

    А можно подробнее?

    Потому что разница между моделями и классами моделей видна именно на когнитивно сложных задачах, требующих более‑менее абстрактного мышления, где нужно одновременно «держать в голове» несколько слоёв системы и кучу сущностей, и их взаимодействие между собой. Вот на таких штуках слабые модели рожают горы костылей над костылями над костылями, сыпятся и застревают в болоте велосипедов, а сильные вывозят потому что способны на некотором уровне «системно мыслить», даже если ты их по этому вопрос не пинаешь вручную. И чем сложнее задача, тем сильнее разрыв.

    По моему опыту из около 30b моделей вменяемо стала решать задачи только Qwen 3.6 27b Q4K_XL (не M), и то на длинных контекстах (больше 100к токенов) сыпалась. И только на Qwen 3.8 27b NVFP4 стало возможно более‑менее спокойно давать ей не самые тривиальные задачи и не бояться что она завалится и не закопается, и не начнет сыпаться с вызовом тулов и не зациклится. Плюс рантаймы за год стали существенно пошустрее работать + MTP завезли.


    1. gliderman Автор
      11.09.2026 11:08

      Думаю, подробнее новую статью напишу, где укажу как дробить задачи, но вот задачи класса 1000 строк скетча для есп32 - локальные модели вполне переваривают и правильно их решают, но облачный дипсик впереди, если нужно разобраться с целым репозиторием с гитхаба, к примеру, по ссылке на свой репо https://github.com/isemaster/VibroVario - здесь если целиком кормить репо в модель, локалки не вывозят, но с отдельным модулем хорошо работают.


  1. Moog_Prodigy
    11.09.2026 11:08

    Ну с LLMками вроде бы все понятно, а как эти карты ведут себя на других нейронках типа stable diffusion или ace step?


    1. gliderman Автор
      11.09.2026 11:08

      Пока только в планах стоит - проверить эти карточки на генерации картинок и видео. Надо бы попробовать. Правда не знаю, буду ли эти мзаниматься:

      Вот что говорят на форумах: картинки — да (1024² за 15 с на distilled и 1–2 мин на обычных моделях, топ-модели только квантованными); видео — только 2–5 с низкого разрешения на distilled-моделях, 14B формально запускаются и молотят часами; лучшее применение 2×P100 остаётся LLM + аудио + батч-обработка изображений. Если задача именно видео — нужна карта класса 3090 даёт сразу 10–20×


  1. kuza2000
    11.09.2026 11:08

    Ну зачем такой заголовок. Этим моделям до опуса 4.6 как до луны...

    А DeepSeek V4 Flash настолько слабая модель, что ее раздают по API на каждом углу бесплатно. А у вас она "эталон")


    1. gliderman Автор
      11.09.2026 11:08

      По карточке Qwen3.8-27B (Qwen/Qwen3.8-27B · Hugging Face, колонка «Opus4.6 Max» — максимальный reasoning effort) и по квантованным GGUF-сборкам той же модели картина такая: Qwen выигрывает 11 из 15. Дипсик бесплатно раздается с одним нюансом, когда ты разово с ним чат проведешь - да это бесплатно, когда начнешь агентскую работу над тяжелим проектом - лимиты не заставят долго ждать.


  1. MAXH0
    11.09.2026 11:08

    Очень интересуюсь вопросом... Вы тестировали покрытые цензурой области? или это вне зоны Ваших профессиональных интересов. Стоит ли уповать на локальные модели, как бастион свободной разработки?


    1. gliderman Автор
      11.09.2026 11:08

      В работе на ограничения не натыкался. Полагаю, цензурирована политика, если наткнусь - то попробую что-то вроде https://huggingface.co/orcarouter/Qwen3.8-27B-Uncensored-GGUF


  1. lemix85
    11.09.2026 11:08

    Причём тут опус вообще?