- BrainTools - https://www.braintools.ru -
В прошлый раз мы рассматривали локальный инференс на бюджетных ноутбуках [1], а потом я попытался запустить gpt-oss-120b на трех видеокартах [2]. Протестировав модель в рабочих задачах, я понял что она может стать заменой облачным провайдерам. Однако, уже тогда стало понятно что десктопные материнские платы и корпуса не могут вместить в себя 3 RTX 3090. Поэтому я присмотрелся к майнерским решениям, где на материнских платах имеется большое количество PCI-слотов с достаточным расстоянием между ними, и все это можно спрятать в просторный корпус. И вот что получилось в итоге:

Видео-вариант статьи можно посмотреть на youtube [3].
Я преследую цель подобрать потребительское железо для локального инференса, а так как все это делается на энтузиазме и финансирование из собственных средств, то речь идет о бюджетных вариантах, как минимум я стараюсь экономить.
По сути, эта статья отражает весь мой путь в сборке железа и запуска LLM в домашних условиях за год изысканий. А текущая конфигурация некая логически завершенная веха исследований. Мы пойдем коротким путем: рассмотрим несколько материнских плат для майнинга, протестиурем их, а одну прокачаем до максимума и в конце подсчитаем финансовые затраты. Излагать текст буду стараться в хронологическом порядке, чтобы соблюдать логику [4] выводов.
Навигация по тексту:
Видеокарты [6]
Какова цена? [12]
Итог [13]
Как я писал выше, меня интересовал локальный инференс модели gpt-oss-120b. Все тесты ниже проводились на модели от Unsloth с квантизацией Q8_K_XL [14], если не указано иное. Понятно, что это MoE-модель, а у таких моделей скорость деградирует при заполнении контекста, поэтому мерить будем начальную скорость.
Запуск моделей через llamacpp подробно описал в этой инструкции [15], дальше тесты будут без тюнингов дополнительных параметров.
Установку NVIDIA-драйвера можно посмотреть здесь [15], все тесты будут запускаться на версии 580.82.07.
Тестовый запрос на скорость инференса:
Напиши полный код приложения рендера треугольника при помощи vulkan на go.
Пожалуй, это основа для LLM, поэтому сразу затронем этот вопрос.
Моя первая карта Tesla P40 с кастомной системой охлаждения [16] (даташит [17]) (пост в тг [18]), на которой я проводил первые длительные тесты ИИ в работе [19]. Потребляет всего 250 Вт, имеет разъем питания CPU. В ширину занимает 2 PCI-слота.

После этого приобрел RTX 3090 TI от KFA2 (пост в тг [20]), разъем питания 12+4 pin. Стоковое потребление 450Вт, но на практике не более 360Вт, а максимальное 480Вт. В ширину занимает чуть больше чем 3 PCI-слота.

Затем купил Asus Rog String RTX 3090 [21] с тремя PCI-разъемами. Стоковое потребление 390Вт, а максимальное 480Вт, и она действительно может столько потреблять. В ширину занимает 3 PCI-слота.

Большая часть материала ниже будет использовать 3 вышеперечисленные карты. Но дабы понять сколько можно выжать максимально я приобрел третью RTX 3090 Gigebyte RTX 3090 Gaming OC [22] с двумя PCI-разъемами (пост в тг [23]). Стоковое потребление 350Вт, а максимальное 400Вт. Стандартная RTX 3090.

Из всего многообразия вариантов на Авито, мой выбор пал на комплект за 3300 рублей, в который входил достаточно качественный горизонтальный корпус, материнская плата ETH B75 v1.12 и шумный блок питания True Miner на 1800Вт. Писал об этом в телеграм-канале [24].

Корпус сделан весьма качественно, метал толстый и покрыт пленкой, но в некоторых местах края метала острые, можно порезаться. Есть крышка. В корпусе имеется секция для блока питания, а под ним можно спрятать часть материнской платы, если влезет кулер процессора.

На передней части корпуса 4 турбинных вентилятора, управляемых через реобас, для которого не нашлось нормального размещения внутри корпуса, вентиляторы обдувают мощным потоком видеокарты. На задней части решетка для выхода воздуха и разъемов видеокарт.

В корпусе крепление самой платы и видеокарт заточены под материнскую плату ETH B75, что может стать проблемой при выборе другой платы для майнинга, потому что расстояние между PCI-слотами может быть больше или меньше, а значит отверстия и крепления не подойдут. Не то чтобы бы это была нерешаемая проблема, но вносит некоторое неудобство.
Плата ETH B75 от неизвестного производителя. На ней 8 PCI-слотов и на каждом по одной PCI-линии. Сокет LGA 1155 поддерживает процессоры Intel Core второго и третьего поколений. В моем случае на плате уже стоял двухядерный Intel Celeron G1610 с частотой 2.6ГГц.
На борту только 1 разъем для плашки памяти [25] DDR3 SO-DIMM. Сетевой порт на 100Mb/s, это мало для скачивания моделей ИИ, приходится долго ждать. Питание на плату подается от PCI-коннектора.

Блок питания оказался очень шумным, вентилятор всегда крутит на 100%, что не подходит для домашнего использования. Однако, количество питающих кабелей в избытке: 8 раздвоенных PCI-кабелей и 1 CPU.

Обладая полной уверенностью в успехе затеи, я перекинул все оборудование с хуанана на плату ETH B75.

К моему сожалению Tesla P40 отказалась работать на 1 PCI-линии, карта определяется системой, но драйвер ее не видит. Поиски в интернетах натолкнули на мысль, что эта карта не может работать на одной PCI-линии.

Тогда я прогнал тесты gpt-oss-20b [26] на двух других картах. Загрузка 12гб модели длится около 80 секунд, что очень медленно. Инференс около 100т/с, при этом нагрузка на карту не превышала 80%, а значит конфигурация не позволяет раскрыть всей доступной мощи. Ранее я писал в телеграм-канале что скорость инференса gpt-oss-20b в среднем ~160т/с [27].
Собрав все проблемы я сделал выводы и отправился на поиски другой платы для майнинга, на которой есть хотя бы 1 полноценный PCI-слот с 16-тью линиями, и с более новым сокетом. Такой оказалась H510 Pro BTC+ [28] за 4500р на Авито, во многом превосходящая ETH B75:
сокет LGA 1200, есть поддержка Intel Core 10 и 11 поколений
1 слот DDR4 с частотой до 3200МГц
гигабитная сеть
полноценный PCI-слот на 16 линий
синхронизаторы питания для подключения двух БП

В комплекте были двухядерный Celeron G5905 с частотой 3.5ГГц и плашка от AMD на 8гб с частотой 2400МГц. Под конец вы поймете что апгрейдить эти комплектующие не обязательно, потому что профит слишком мал для такой цены.
Полный надежд на лучший опыт [29] и более быстрый инференс я перекинул все оборудование на новую плату. Кулер снял со своей экспериментальной платы Lenovo RD450x, как оказалось у него был переходник на сокет LGA 1200.

Модель gpt-oss-120b грузится 3,5 минуты, очень долго, но это мы разберем позже. Инференс около 65т/с, из-за слабой Tesla P40.

Теперь мне нужно попытаться еще выжать скорость и “одомашить” сборку, чтобы она не была такой шумной при использовании.
На замену Tesla P40 я купил Gigebyte RTX 3090 Gaming OC, о которой писал выше. А шумный БП заменил на мощный и тихий блок питания Azerty Red Power 1050w (на Ozon [30]) за 5000р.

Но так как на блоке питания не хватало PCI-кабелей для полноценного питания всех видеокарт, пришлось использовать вторые коннекторы на тех же самых кабелях и понизить энергопотребление (до 170Вт), без этого карты периодически отваливаются.


Тем не менее даже при таком раскладе мне удалось добиться 100т/с на этой сборке.

Загрузка модели на видеокарты длится 3 минуты 30 секунд, при размере модели 64.4гб скорость составляет ~314MB/s, это долго.
Изначально я подключил SSD диск через SATA, а это уже ~550 MB/s. Вся периферия включая 5 PCI-слотов, SATA и диск через m2 идут через DMI чипсета, который ограничен скоростью PCIe 3.0 на 4 линии, а это ~4 GB/s. Схематично это выглядит так (здесь и далее скорости указаны упрощенно):
SATA SSD (~550 MB/s)
→ DMI (~4 GB/s)
→ CPU
→ DMI (~4 GB/s)
→ PCIe x1 (~1 GB/s)
→ GPU
При таком подключении происходит двойная нагрузка на пропускную способность DMI чипсета платы. Профита от m2 тоже ждать не стоит, потому что даже в описании платы написано что он поддерживает режим SATA3 6 Гбит/с, тем более что m2 будет гонять данные через DMI. К тому же m2 у меня не завелся, ни с переходником на PCI-слот, ни напрямую.

Ускорение мы сможем получить если снизим нагрузку на DMI, для этого нам нужно вынести чтение данных, например на первый PCI-слот который 16-ю линиями идет напрямую на CPU по такой схеме:
NVMe (~3 GB/s)
→ PCIe x4 (~4 GB/s)
→ CPU
→ DMI (~4 GB/s)
→ PCIe x1 (~1 GB/s)
→ GPU
Я перенес все данные моделей ИИ на NVMe-диск и подключил его через PCI-переходник в первый слот. Получилось сократить загрузку моделей на видеокарты с 3 минут 30 секунд до 2-х минут, скорость загрузки выросла на ~240MB/s до ~549MB/s.
А почему не ~1GB/s? Наверное потому что для PCI x1 3.0 теоретический максимум ~985 MB/s, а загрузка модели это не просто memcpy, это: расспаковка, аллокация памяти, копирование и возможно конвертация. К тому же на DMI держится вся периферия, и отсутствие видимых данных внутри шины не говорит о ее бездействии.
Для себя я сделал вывод, что дальше оптимизировать некуда, кроме как переходить на другую плату. Однако, первоначальная загрузка, это не такой уж частый процесс. Поэтому идем дальше.
Следующим этапом апгрейда будет блок питания, чтобы не ограничивать энергопотребление, более мощный процессор и более быстрая оперативная память.
У меня было подозрение, что двухядерный Celeron и 2400МГц на ОЗУ не дают раскрыться всей вычислительной мощи RTX 3090, поэтому я присмотрел 6-ти ядерный Intel Core i5 10600kf за 7000р с базовой частотой 4.1ГГц и поставил ОЗУ на 16гб с частотой 3200МГц, которую я взял еще до повышения цен.

Я не стал далеко ходить и выбрал самый мощный блок питания от Azerty на 1200Вт за 6000р (на Авито [31], на Ozon [32]), в нем есть 12vhpwr для RTX 3090 TI от KFA2, и 5 разъемов для питания PCI, один из них пойдет на питание процессора, а значит остается 4. Но этого вполне хватает чтобы запитать плату и 3 видеокарты RTX 3090 без ограничения по энергопотреблению. Недостающие кабели я взял с предыдущего БП этого же производителя.

В итоге: скорость загрузки модели не изменилась, а скорость инференса увечилась всего-лишь примерно на 10% до 110т/с.
Можно выиграть еще несколько токенов если загрузить оригинальную квантизацию в формате mxfp4 (например от ggml-org [33]).

Энергопотребление всей сборки во время инференса ~800Вт.
А чтобы закрыть крышку корпуса и при этом не согнуть провода я купил угловые коннекторы:

Настало время подсчитать во сколько вся эта сборка может обойтись:
|
Название |
Цена (руб) |
Примечание |
|---|---|---|
|
Корпус |
3300 |
Плата ETH B75 не подходит для инференса, БП True Miner не для домашнего использования |
|
Плата H510 Pro BTC+ и Celeron G5905 + ОЗУ 8GB 2400MHz |
4500 |
CPU и RAM можно не апгрейдить, профит незначительный |
|
Блок питания Azerty на 1200W |
6000 |
Azerty Red Power 1050W не в счёт, в итоговой сборке не используется |
|
Кулер |
1200 |
|
|
Диск SSD на 512GB |
7000 |
Цена взята с Ozon |
|
Итого (без видеокарт) |
22000 |
Без последнего апгрейда |
|
RTX 3090 × 3 (одна в среднем 60000) |
180000 |
Tesla P40 не в счёт, в итоговой сборке не используется |
|
Итого вся сборка |
202000 |
Не считая мелочей (кабели, коннекторы и т.д.), промежуточные траты (ОЗУ, CPU i5) |
Если вы сразу перешли в этот раздел, то вот вам результаты:
загрузка модели gpt-oss-120b размером 64.4гб ~2 минуты
скорость генерации ответа ~100т/с (цена сборки: 202к рублей)
скорость генерации ответа при максимальном апгрейде и на mxfp4 квантизации ~115т/с
Пройдя весь этот путь в течение года я получил большой опыт как в сборке железа под локальные модели ИИ, точнее под LLM, так и в запуске этих самых моделей.
Однако, не стоит забывать [34] что на данный момент (апрель 2026 года) облачный инференс значительно дешевле по финансам и умнее локального, в этом я убедился на своей практике в рабочих задачах. В обоих случаях есть свои издержки, в локальном инференсе нужно платить временем и финансами, а в облачном нужна “вера в приватность”. Найдутся сторонники и того и другого.
В своей работе DevOps-инженером я выяснил что модель gpt-oss-120b хорошо справляется как LLM в рабочих задачах, достаточно быстрая и умная. Так что подобные сборки имеют смысл в среде, где приватность важнее денег.
Что дальше? У меня есть сборка на AM4, Threadripper и я присматриваюсь к Epyc, хочется понять какую скорость инференса можно из этого выжать и в каком бюджете.
В своем телеграм-канале [35] я выкладываю посты про мои исследования локального инференса. А у себя на сайте [36] выкладываю инструкции.
Автор: Byurrer
Источник [37]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/28348
URLs in this post:
[1] локальный инференс на бюджетных ноутбуках: https://habr.com/ru/articles/974748/
[2] запустить gpt-oss-120b на трех видеокартах: https://byurrer.ru/vga3-first-test
[3] на youtube: https://youtu.be/y97lxfBiGp0
[4] логику: http://www.braintools.ru/article/7640
[5] Модель для тестирования: #1
[6] Видеокарты: #2
[7] Комплект: корпус + ETH B75 + БП: #3
[8] Плата H510 Pro BTC+: #4
[9] Еще одна RTX 3090 и новый БП: #5
[10] Как ускорить загрузку модели?: #6
[11] Финальный апгрейд: CPU + RAM + БП: #7
[12] Какова цена?: #8
[13] Итог: #9
[14] Unsloth с квантизацией Q8_K_XL: https://huggingface.co/unsloth/gpt-oss-120b-GGUF/tree/main/UD-Q8_K_XL
[15] в этой инструкции: https://byurrer.ru/llamacpp-guide
[16] Tesla P40 с кастомной системой охлаждения: https://byurrer.ru/tesla-p40-custom
[17] даташит: https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/documents/nvidia-p40-datasheet.pdf
[18] пост в тг: https://t.me/byurrer_ru/294
[19] первые длительные тесты ИИ в работе: https://byurrer.ru/ai-self-hosted-part1
[20] пост в тг: https://t.me/byurrer_ru/316?single
[21] Asus Rog String RTX 3090: https://rog.asus.com/ru/graphics-cards/graphics-cards/rog-strix/rog-strix-rtx3090-o24g-gaming-model/
[22] Gigebyte RTX 3090 Gaming OC: https://www.gigabyte.com/kz/Graphics-Card/GV-N3090GAMING-OC-24GD
[23] пост в тг: https://t.me/byurrer_ru/331?single
[24] Писал об этом в телеграм-канале: https://t.me/byurrer_ru/327
[25] памяти: http://www.braintools.ru/article/4140
[26] gpt-oss-20b: https://huggingface.co/ggml-org/gpt-oss-20b-GGUF
[27] писал в телеграм-канале что скорость инференса gpt-oss-20b в среднем ~160т/с: https://t.me/byurrer_ru/316
[28] H510 Pro BTC+: https://asrock.com/MB/Intel/H510%20Pro%20BTC+/index.ru.asp
[29] опыт: http://www.braintools.ru/article/6952
[30] Ozon: https://ozon.ru/t/1EptEIi
[31] Авито: https://www.avito.ru/magnitogorsk/tovary_dlya_kompyutera/bloki_pitaniya_350_400_450_500_550_600_650_700_750w_1029603484
[32] Ozon: https://ozon.ru/t/BYq3X9D
[33] ggml-org: https://huggingface.co/ggml-org/gpt-oss-120b-GGUF
[34] забывать: http://www.braintools.ru/article/333
[35] телеграм-канале: https://t.me/byurrer_ru
[36] на сайте: https://byurrer.ru/
[37] Источник: https://habr.com/ru/articles/1019940/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1019940
Нажмите здесь для печати.