Группы производителей
- OEM (Original Equipment Manufacturer) – компании проектирующие и производящие блоки.
- Компании, не имеющие собственного производства, данные компании могут разработать дизайн или программную начинку, но производят блоки для них OEM партнеры. К таким компаниям можно отнести: Corsair, Be Quiet, SilverStone. К примеру, для Corsair OEM производителем блоков питания серии HXi является CWT.
- И третья категория это TradeMark (™) компании, они просто маркируют закупаемую продукцию собственным брендом и перепродают на рынке, возможно немного изменяя дизайн радиатора.
В нашем случае мы будет выбирать блоки питания от 750 ватт и выше. Для запуска одной фермы на 5 видеокарт от Sapphine Nitro+ RX 480 8GB нам хватит одного хорошего блока питания на 1200 ватт, либо двух блоков питания на 750 ватт.
Подключение управлямых блоков питания, сенсоров и реле к серверным материнским платам. Без Arduino
Подключение различных сенсоров, датчиков, реле, GPIO-расширителей и прочего «ардуиновского» хозяйства по шине I²C напрямую к серверным материнским платам через IPMI-интерфейс бортового контроллера (BMC). Практические примеры I²C-устройств и работа с ними из командной строки утилитой ipmitool. SMBus, PMBus и управление блоками питания. Не очень документированные ограничения и вопросы безопасности. Разоблачение проприетарщины
.
После установки сервера в самодельную конструкцию порой хочется подключить к нему ещё чего-нибудь: например, датчики температуры, давления, влажности, ЖК-экранчики или даже ШИМ-драйверы моторчиков. Бывают глючные внешние устройства, которые приходится удалённо и жёстко сбрасывать с помощью реле, не уровнив при этом весь сервер целиком. А может, читателю просто захотелось гребёнку GPIO с гирляндой светодиодов? Если это не одноплатник типа Raspberry Pi, а полноразмерный сервер, приходится навешивать микроконтроллер и возиться с ним: писать прошивку, тестировать, налаживать стык с хостом и т.д. Иногда это интересно само по себе, но бывает и наоборот: скорей бы скриптину написать да запустить, наконец, лишь бы работало. Необычные разъёмы на железе всегда вызывали у автора смешанные чувства инженерно-технического зуда и вентиляторного фетишизма. Об этих занимательных разъёмах здесь и речь.
DISCLAIMER
Если вы читаете эту статью где-то за пределами портала Geektimes, рекомендую через недельку-другую заглянуть по аутентичной ссылке. Дело в том, что наиболее интересные комментарии читателей появятся там (т.е. тут) во врезках, я уже не говорю об устранении недочётов и ляпов. Бывает, что плохую статью рассерженные резиденты клуба буквально рвут на клочки, попутно отправляя автора в кармическую бездну. Другими словами, если аутентичная ссылка не открывается, то не стоит и читать дальше этого места.
Автор передаёт привет Дальнему Востоку (прямо из неба над Северной Атлантикой), а также приносит извинения вдалельцам уважаемых торговых знаков: они настолько не нуждаются в рекламе, что я придумываю им шуточные названия. Таким образом, статья применима к изделиям Супер Мирон, но автор практически не сомневается в наличии аналогичных механизмов на изделиях Харлампий-Панкрат, Иван Брал Марью, Ильтан, Долян и других: занимательные коннекторы чаще всего можно встретить на блоках питания и дисковых корзинах. Заодно попытаемся разоблачить и хвалёный Кобзарь Линк.
Уважаемые специалисты по серверным платформам, IPMI, I²C, SMBus и PMBus, поправляйте, если что не так. Обычно автор выражает признательность креативным читателям кармическими баллами, но приносит извинения тем резидентам клуба, кому благодарность уже была выписана ранее, просто НЛО не велит делать это дважды. Желаю приятного прочтения.
Из того, что было
Автор не стыдится покупать за копейки серверные материнские платы б/у и давать им вторую жизнь. Старая, шумная серверная механика (с блоками питания) отправляется в утиль и заменяется на новые изделия, хоть и потребительского класса, но качественные и тихие. Зато даже из винтажных серий Супер Мирон X8 и X9 до сих получаются просто офигенские
NAS для малого бизнеса, сочетающие enterpise-функции, файловую «машину времени» против троянов-вымогателей и репликацию по сети…
Издевательство над жёлтой программой
А после обнаружения во FreeNAS признаков виртуализации автор затолкал туда же и Windows-машину, с жёлтой программой и целой связкой аппаратных USB-ключей. Снаружи ничего не торчит, а пользователи 1С работают через обычные веб-браузеры, ничего не подозревая. Почему не Linux? Из-за драйверов ККМ, конечно. Впрочем, ИТ-комбайн и издевательство над 1С — это отдельная история (надеюсь, скоро). Один проброс USB через слоёный пирог из jail и VirtualBox чего стоит… Вообще, лет 20 назад для
колхозинга
в качестве GPIO умельцы использовали параллельный порт для принтера, но попробуйте сейчас его найти. Мир изменился, как по мне — так в лучшую сторону:)
Визуальный осмотр
У меня уже почти ископаемое, но вполне рабочее изделие X9SCM-F (Intel C204 Express), плюс на соседнем объекте уже пару лет трудится его младший брат X9SCL-F (C202). Если повернуть изделие, как в документации, 24-контактным разъёмом питания ATX к северу, то SATA-порты окажутся где-то в районе Хабаровска. Ещё восточнее, подобно Петропавловску-Камчатскому, находится пара разъёмов T-SGPIO 1 и 2, привлекающих внимание сочетанием букв «GPIO». На это сочетание автор и повёлся, но рефлексы геолога-исследователя ископаемой электроники оказались ложные. На самом деле ключевое слово здесь SGPIO, это дуплексная сигнальная шина с разделением каналов по времени, использующая кадры постоянной длины. Шина по очереди передаёт по три бита для каждого SATA-порта: на HBA — состояние корзины, а на корзину — состояние дисков (активен, отказал, локатор). Это устаревшая технология, современные корзины используют I²C. Я не копал очень глубоко, но похоже, что 6 бортовых SATA-портов разделили на группы из двух северных и четырёх южных, и каждой группе повесили свою гребёнку T-SGPIO. Громоздко, неуклюже, а для колхозинга
ещё и бесполезно. Идём дальше, есть маленький разъёмчик JWF1 в районе Южно-Сахалинска, но это просто питание 5В для накопителя SATA DOM, которого у меня нет. На Дальнем Востоке больше делать нечего. Вдоль южных границ раскинулась целая гряда парных 9-контактных разъёмов USB и второй порт RS232, с ними всё понятно. На Северо-Западе от COM2 обнаружилась пара перемычек JI2C1/JI2C2, открывающих доступ к устройствам PCIe. Этот инструментарий для меня пока остался загадкой, но я почти уверен, что по факту JI2C1/JI2C2 суть живые выводы SCL и SDA, просто отделённые от питания 3.3В и «земли», которые и так есть в PCIe. Оставим пока. Коннектор JTPM больно мудрёный, это на крайний случай. А от коннектора передней панели JF1 можно отжать разве что UID LED, подключив его к оптореле. Кстати, это м.б. даже удобно: ограничительный резистор уже встроен в цепь, включил UID LED — открыл (закрыл) реле. Для удалённого сброса
внешнего устройства
, пожалуй, хватит. Главное, чтобы оператор, зайдя спустя год в веб-интерфейс BMC, не включил UID LED просто так, заодно сбросив и
внешнее устройство
. Ладно, возвращаемся на крайний сервер север, именно там, возле ATX-питания, и расположился разъём JPI2C.
Надо сказать, что документация по поводу JPI2C довольно оптимистична. Из неё следует, что это выход шины I²C для мониторинга здоровья «родного» блока питания. Физически JPI2C суть 5-контактный разъём Molex типа SL с шагом 0.1″ (2.54мм) и ключём защиты от дурака перепутанной полярности, предположительно код по каталогу 70543-0004. Ответная часть (на картинке слева внизу) — это Molex 70066-0179 под обжим кримпером (aka BL-05F). Я подозреваю, что на всех материнских платах Супер Мирон шина I²C используется для мониторинга здоровья серверного блока питания и выведена именно 5-контактным разъёмом Molex SL (BL-05M). Забегая вперёд, скажу, что некоторые пользователи преуспели в реверсной инженерии и нашли способ вынимать из родных блоков питания Супер Мирон всякие полезности вроде температуры и вольт с амперами, читайте дальше.
Power Supply I²C Connector
Power Supply I²C Connector, located at JPI2C, monitors the status of the power supply, fan and system temperature. See the table on the right for pin definitions.
Пустой разъём JPI2C откровенно дразнил стандартными контактами шины I²C: SCL, SDA, GND и VCC. Посередине — аварийный сигнал отказа блока питания. Забегая вперёд, рискну предположить, что этот Power Fail — единственный способ поднять тревогу по внешнему событию, не используя внешний микроконтроллер. Затем нашлась и статья FAQ ID 9492 от 30 марта 2010г, явно намекающая на возможность опрашивать шину I²C прямо из командной строки. Раз уж BMC явно участвует в мониторинге здоровья блока питания, а команда ipmitool явно способна «разговаривать» по шине I²C с блоками питания, ничто не должно мешать подключить к JPI2C ещё что-нибудь эдакое.
Какой разъём: BL или BLS?
Если уважаемый читатель собирал ПК в эпоху до MP3, то наверняка использовал 4-контактный
проводок
, соединявший CD-привод со звуковой платой. Помню, как эти
проводки
были увенчаны простым разъёмом типа BLS-4, вследствие чего CD-приводы примерно в половине случаев не играли музыку даже с
проводками
, просто в силу перепутанной полярности. Затем, наконец, в регионе были налажены поставки нормальных
проводков
с полярным разъёмом типа BL-04F, чтобы ошибиться мог только очень тупой и сильный сборщик ПК. Но MP3 уже вовсю шагал по рынку, а
нативные
звуковые диски постепенно покидали наш цифровой быт…
К чему я? К тому, что разъём JPI2C на платах Супер Мирон выглядит точно так же, как аудио-разъём на старом CD-приводе, только имеет 5 контактов вместо 4. В JPI2C вполне войдёт простой однорядный BLS-5, но лучше иметь разъём с физическим ключом полярности типа BL-05F
, при работе с уже установленной в корпусе материнской платой ошибиться будет слишком легко. Экономьте своё время.
Универсальный шлейф
Начинающим для прототипирования рекомендую цветной «наборный» 40-контактный шлейф, который при необходимости можно
дербанить
на более узкие составляющие. Шлейф нужной ширины отрывается легко, как качественная туалетная бумага, т.е. строго по перфорациям. Поставляется с разными длинами и контактами типа BLS-1 M-F, M-M или F-F. Поиск на aliexpress: «dupont cable».
Работа с устройствами по I²C из командной строки
Я подключил к JPI2C купленный когда-то на aliexpress сенсор BMP180. Сперва ничего не вышло. Недоумение вызвала и адресация в целом, и аргумент bus, выбирающий одну шину непонятно из скольких. Но затем я просто сделал скрипт для перебора (сканирования) шин и сравнил результат его работы до подключения BMP180 и после. С платой X9SCM-F датчик тут же обнаружился на шине №3 по адресам 0xee и 0xef (см. комментарий ниже). Надо будет переставить JI2C1/JI2C2 в положение ENABLE и посмотреть, вдруг ещё и платы PCIe отзовутся…
ipmiscan.sh
Этот примитивный кусок кода специально лишён прикрас, выдаёт что-то вроде progress bar и предполагает, что в системе имеется четыре шины (0, 1, 2 и 3). Требует bash 3.0+. #!/bin/bash for bus in 0 1 2 3; do echo Bus $bus for i in {16..238..2}; do printf -v args «i2c bus=%d 0x%02x 0x01″ $bus $i printf » 0x%02x» $i ipmitool $args 2>/dev/NULL && echo «(bus $bus)» done echo done
Скрипт перебирает только чётные адреса и не трогает зарезервированные. В I²C самый младший бит является признаком чтения-записи: каждое устройство как бы занимает два адреса (чтение по нечётным, запись — по чётным). Статья FAQ ID 9492 меня запутала, потому что опрашивает только чётные. Но ведь в случае ipmitool чтение или запись определяются не адресом, но контекстом команды, верно? Увесистая спецификация IPMI 2.0 поставила всё на места: младший бит адреса в команде Master Read-Write (0x06 0x52) вообще зарезервирован и должен быть сброшен (равняться нулю).
Датчик BMP180, подключенный к JPI2C на плате X9SCM-F, отозвался по (bus=3) на адресе 0xee (и 0xef, хотя это то же самое). Т.е. логический адрес устройства оказался 0x77, как и положено по datasheet (Bosch отхватил самый верхний 8-битный адрес). Моей изначальной ошибкой было искать BMP180 на «сыром» IPMI-адресе 0x77, это неверно, для IPMI надо просто умножить логический I²C-адрес на два (сдвинуть на один бит влево). При работе с I²C это, кстати, самая распространённая ошибка.
Висящая просто так шина I²C неинтересна ни в воздухе, ни тем более в сферическом вакууме. Известная площадка по запросу «i2c sensor» предложит уважаемому читателю широкий ассортимент датчиков, уже обвязанных на мини-платах. Обычно остаётся только контактную гребёнку припаять, для этого достаточно желания и паяльника на 30Вт с припоем и флюсом, навыки не требуются. Для проверки теории я решил померить температуру датчиком BMP180, но это оказалось несколько сложнее, чем я думал: датчик является примером сложного stateful-устройства, и правильнее будет сказать «извлечь показания температуры и давления из прецизионного измерителя с учётом калибровочных коэффициентов». Но сперва всё-таки отдадим должное уважаемому вендору.
Телеметрия блоков питания
Сразу оговорюсь, что данная задача м.б. интересна, например, для профилировании фактической мощности серверов при эксплуатации центров обработки данных: если группа серверов подключена к одному распределителю, поди разберись, сколько потребляют серверы А и Б без учёта В и Г, даже при наличии навороченного ИБП, питающего стойку. Это всё и предлагается выяснить через IPMI, получая прямо по сети мгновенные значения с выбранных серверов. Для DIY кроме подбора ИБП и построения системы охлаждения с обратной связью лично мне в голову ничего не приходит. Пользователь
Andrew Grekhov
разбирался с родными блоками питания вендора Супер Мирон, вынимая из них напряжения, токи и температуры. Весьма занимательно, хотя и заметно, что считываемые значения АЦП явно приходится поправлять на некие калибровочные константы. Хочу отметить, что при наличии интерфейса ядра команду ipmitool можно запускать и на самом хосте, без параметров -H, -U и -P, а вместо raw 0x06 0x52 0x07 можно было бы написать просто i2c bus=3, «семёрка» суть битовое поле, см. описание команды Master Read-Write в спецификации IPMI.
Отдадим должное пользователю Andrew Grekhov
, смело ринувшемуся в неравный бой со сложным и недокументированным (как ему показалось) устройством. К счастью, он не забыл упомянуть PMBus, что и навело меня на официальный сайт и соотв. спецификации. Ведь PMBus суть специализированная надстройка над SMBus для управления системами питания, а сама SMBus, в свою очередь, является развитием I²C. Можно предположить, что большинство современных управляемых блоков питания используют ту или иную спецификацию PMBus. Потому как глядя на все имеющиеся навороты PMBus и готовые микросхемы, возникает простой вопрос: какой смысл изобретать велосипед? Но повторю, это моё предположение.
Итак, копнув чуть глубже, можно найти описание команд (регистров), используемых управляемыми блоками питания, например, по PMBus rev 1.1. Если ссылка не открывается, зайдите на сайт www.pmbus.org, откройте раздел со старыми спецификациями и найдите PMBus Specification Part II Rev. 1.1. Это документ с описанием команд, см. Таблицу 26 в разделе APPENDIX I. Command Summary. Обратите внимание, например, на команды-регистры 0x78 (STATUS_BYTE), 0x88 (READ_VIN), 0x89 (READ_IIN), 0x95 (READ_FREQUENCY) и другие: они в точности совпадают с результатами реверсной инженерии, опубликованных на форуме по ссылке выше. Возвращаясь в таблицу 26, справа дана разрядность регистра (Read Byte или Read Word) с количеством считываемых байт. Просто на всякий случай, а вдруг читатель забыл разницу между byte и word?
Но остаётся вопрос: можно ли вообще считать по I²C калибровочные коэффициенты командой 0x30 (COEFFICIENTS), использующей пакетную операцию стандарта SMBus? Это нужно, чтобы преобразовать сферически-вакуумные регистры в реальные вольты, амперы и т.д. Если я всё верно понял, то с точки зрения шины SMBus нужно отправить пакет с командой 0x30 и счётчиком байт 2, тело пакета суть два байта с кодом интересущего регистра (0x88 для READ_VIN) и признаком направления, который для считывания должен быть равен единице. В ответ устройство должно выдать пакет из 1 + 5 + 1 байт с параметрами m
,
B
и
R
, которые используются для пересчёта в физические вольты. Первый байт — длина, последний — PEC (если используется). Т.е. интрига заключается в том, можно ли передать простой пакет SMBus по I²C, например, таким способом:
ipmitool i2c bus=3 0x70 0x07 0x30 0x02 0x88 0x01 Этим самым я пытаюсь отправить пакет 0x30 0x02 0x88 0x01 на устройство с адресом 0x70, сидящее на шине №3, после чего принять с устройства 7 байт (один байт с длиной пакета, пять байт коэффициентов, один байт PEC). Адрес блока питания нужно заменить на фактический (первый может быть 0x78, за ним — резервные блоки), а вместо 7 байт можно попробовать считать 6 (без PEC). Если у кого-нибудь есть родной блок питания Супер Мирон, попробуйте, только не в production, ибо я за последствия не ручаюсь:) Если все предположения верны, можно получать весьма подробную картину непосредственно из блока питания, параметров там просто тьма.
Измерение температуры датчиком BMP180
Сенсор BMP180 измеряет давление и температуру. Он выдаёт показания через двухбайтные регистровые пары, предварительно выбираемые записью однобайтного номера регистра по IPMI-адресу 0xee с последующим чтением пары байт оттуда же. Именно поэтому я называю BMP180 stateful-устройством, т.е. имеющим селекторы состояния (это м.б. важно с точки зрения конфликтологии). Предком BMP180 является BMP085, а потомком — BMP280, измеряющим ещё и влажность. Как и в случае с алкотестером, измерения не происходят сами по себе, но запускаются командой. Для измерения только температуры следует записать код 0x2e в регистр 0xf4: ipmitool i2c bus=3 0xee 0x00 0xf4 0x2e Здесь 0x00 означает, что мы ничего не считываем с адреса 0xee, а только записываем по нему. Через примерно 4.5мс можно прочитать 16-битный показатель UT («нескомпенсированная температура») из регистра 0xf6 простой командой: ipmitool i2c bus=3 0xee 0x02 0xf6 Она сперва выбирает номер регистра 0xf6 по адресу 0xee (т.е. логическому 0x77, это BMP180), а затем считывает оттуда же два байта. Команда IPMI Master Write-Read специально сделана для таких stateful-устройств. У меня из UT считалось 0x6a 0x48, что соответствует десятичному 27208 (т.е. что-то около 27°C при «нормальном» давлении, если я правильно понимаю логику BMP180, специалисты, поправляйте). Если из UT считывается 0x8000, это признак ошибки, сперва нужно было запустить измерение.
Для вычисления же истинной температуры осталось всего ничего: считать двухбайтные калибровочные регистры AC5, AC6, MC и MD с кодами 0xb2, 0xb4, 0xbc и 0xbe, соответственно, после чего использовать нехитрый
набор действий (ура, тут редактор формул!).
Последний результат делим на 10, т.к. изначально он в десятых долях градусов Цельсия. Если уважаемый читатель не согласен с характеристикой нехитрый набор действий
, рекомендую обратить внимание на измерение давления, которое вычисляется уже в 15 приёмов и с использованием всех 11 калибровочных констант. Кстати, калибровочные константы можно прочитать один раз, а затем запускать измерения снова и снова записью кода в регистр 0xf4. Мудрёно? Да ладно, датчик как датчик:)
Стоит поблагодарить пользователя 41j
за материал.
GPIO
Если любопытный читатель заглянул в спойлер выше и, узрев его, закрыл поскорее обратно, есть и более простые способы скоротать время в командной строке. После BMP180 я подключил по I²C каскадом сразу два ардуиновских 8-битных расширителя GPIO на базе PCF8574AT. Обратите внимание, микросхема PCF8574A (в отличие от PCF8574) использует адреса с базой 0x38 (у PCF8574 база 0x20), потенциально конфликтуя с родными блоками питания Супер Мирон. К счастью, адрес программируется, мини-плата идёт с тремя перемычками на 8 адресов, от блоков питания можно уйти на более старшие адреса. Всего на пустую шину можно повесить до 8 устройств, получив до 64 контактов GPIO. Если этого мало, см. описание коммутатора I²C в следующем спойлере.
Коммутатор I²C
Что делать, если надо подключить связку сенсоров типа BMP180, у которых адрес 0x77 (т.е. 0xee) зашит жёстко? Для этого и есть такая штуковина, как коммутатор (мультиплексор), его можно собрать самому на базе TCA9548A или купить в виде мини-платы там же, где и всё остальное. Коммутировать (переключать) можно до 8 устройств одновременно, но работать с одноадресными устройствами придётся по очереди. По условиям данной статьи мы не используем микроконтроллеры, поэтому управлять самим коммутатором придётся посредством того же расширителя GPIO, от которого нужно три вывода. Обратите внимание на рисунок: мини-плата коммутирует только сигнальные линии I²C SDA и SCL, питание устройств придётся организовать отдельно. Если нужно, например, опросить более 8 датчиков типа BMP180, берём несколько коммутаторов и c помощью адресных линий A0-A2 разносим их относительно общей базы 0x70 (т.е 0xe0 в терминологии ipmitool). В положении A0=A1=A2=1 коммутатор будет отзываться по адресу 0x77, конфликтуя, кстати, с самим датчиком BMP180. Выходит, что используя TCA9548A, на каждую шину I²C можно подключить до 56 таких датчиков температура-давление. С учётом ограничений на максимальную длину самой шины, для объёмных измерений температуры должно хватить. Длина эта, кстати, в основном зависит от рабочей частоты шины.
Ограничения
Все эксперименты я проводил с помощью команды ipmitool(1) v1.8.15, работающей через хостовый (ядерный) интерфейс FreeBSD 10. Если использовать эту команду в скриптах, придётся парсить её вывод, причём stderr, а не stdout. Я специально избегаю парсеры в этой статье. Буду признателен, если кто-либо из читателей поделится проверенными
библиотеками для работы с IPMI через хостовый интерфейс на популярных скриптовых языках (perl, Python), хотя бы в режиме raw-команд.
Хотя ipmitool(1) и может работать по сети (623/tcp), при выключенном хосте на JPI2C дежурного питания нет, шина обесточена. Запитывать сенсоры отдельно и опрашивать их через сетевой интерфейс IPMI при выключенном хосте не пробовал. Но если нужны автономные сенсоры, подключенные к сети, лучше уж задействовать одноплатник, например, тот же Малиновый Прог (простите, так я обозвал Raspberry Pi в своей статье про защиту microSD-карточек от преждевременного износа путём перехода на файловую систему read-only).
Как уже говорилось, описанный здесь способ без внешнего микроконтроллера практически исключает реакцию на прерывания по внешним событиям, кроме сигнала «отказ блока питания». Теоретически, по сигналу Power Fail можно сгенерировать SNMP-событие, но я не пробовал. И тут снова хочется сказать: если нужны прерывания от сенсоров, то нужен микроконтроллер или, на худой конец, выделенный одноплатник. Кесарю — кесарево.
Конфликтология I²C
Если «родного» блока питания на I²C-шине нет, то и слава богу, меньше проблем. Но если же в системе таки появится «родной» блок питания с I²C-интерфейсом, в теории не возбраняется подключить другие устройства параллельно, сколхозив
соответствующий переходник. Что в этом случае произойдёт? Если все устройства сидят на своих адресах, ничего страшного произойти не должно до тех пор, пока хост не вздумает жёстко
поуправлять
блоком питания. Если не знаете, что делаете, то ограничивайтесь считыванием. Судя по FAQ ID 9492, блоки питания (одинарные, двойные, тройные) располагаются на логических адресах 0x38, 0x39, 0x3a, … (это адреса IPMI, делённые пополам).
У меня появилась теория относительно IPMI и его роли в доступе к I²C: если все команды записи только выбирают регистр для последующего чтения, то каждое взаимодействие с устройством укладывается в одну команду Master Write-Read протокола IPMI. Из весьма увесистой спецификации IPMI 2.0 я рекомендую ознакомиться с параграфом 22.11, который эту команду описывает. В моём понимании, операция
по шине I²C — это либо чтение, либо запись последовательности байт по одному адресу. Но спецификация IPMI командой Master Write-Read вводит нечто большее: удобная для сенсоров пара операций «запись-чтение» напоминает полноценную
транзакцию
, причём IPMI оговаривает максимальные длины буферов (порядка 30 байт). Я также исхожу из того, что (а) BMC всегда является главным устройством на шине I²C и (б) BMC имеет встроенный механизм блокировок, т.е. он не попытается отобрать шину у самого себя посередине транзакции.
Если исходить из того, что команда IPMI Master Write-Read (из двух операций) действительно является неделимой транзакцией, то BMC выполняет нечто большее, чем просто отображение I²C: он является транзакционной надстройкой
над I²C, причём с хостовым или сетевым интерфейсом. Другими словами, получается что-то вроде примитивного 4-уровневого стека протоколов для работы с I²C-сенсорами через интерфейс IPMI, который я и рискнул нарисовать. Если уважаемому читателю не понравилась картина, представьте, что я художник, и вижу мир именно так, возражайте по существу, пожалуйста:)
Кстати, шина SMBus, помимо дополнительных контактов, отличается от I²C именно пакетным режимом, и в ней определена операция Write/Read Block. Но это уже часть протокола самой шины SMBus, IPMI в этом случае сыграл бы роль простой операционной обёртки, а не транзакционной надстройки. Впрочем, максимальные длины блоков в спецификациях IPMI и SMBus настолько схожи, что я предполагаю между ними прямую связь, даже не погружаясь глубоко в тему.
Безопасность
BMC-контроллер, подключенный к вычислительной сети, является сервером и потенциально уязвим. Именно поэтому, например, следует усиливать меры безопасности на «локальной» консоли ОС, которая через виртуальный KVM де-факто экспонируется в сеть. Старые прошивки BMC-контроллеров Супер Мирон содержат неприятную уязвимость, поэтому эксплуатацию стоит начинать и с обновления прошивки BMC (помимо BIOS).
Климат-контроль с обратной связью
Некоторые производители доводят висящую, так сказать, в воздухе идею охлаждения с обратной связью прямо-таки до культа, изрядно припудренного маркетингом c завесой тайны:
Культ Кобзаря
Я имею в виду, конечно, Кобзарь Линк:
In some ways, Corsair Link is one of our best kept secrets. It had a very rocky start, but continued and continuing development has turned it into an extremely useful combination of hardware and software. It allows you to connect several products within our ecosystem to a software-based control panel, but there’s so much more to it than that.
Наверное, это отличный способ увеличить средний чек, предложив потребителю комбинацию из дорогого блока питания, сенсоров, охлаждения и ёлочной гирлядны, заодно внушив причастность к великой тайне. Красиво, но эти яблочные
подходы с превращением всего и вся в закрытую
проприетарщину
лично меня отталкивают. Предполагаю, что контроллер Corsair Link Commander Mini представляет собой устройство USB HID, использующее для связи с сенсорами шину SMBus, поверх которой для управления «фирменным» блоком питания используется PMBus, причём не самая новая. Любопытно было бы подключить блок питания напрямую к микроконтроллеру с поддержкой SMBus, найти адрес сканированием и прочитать однобайтный регистр 0x98 (PMBUS_REVISION). Если отзовётся разумным кодом, берём соотв. спецификацию PMBus с сайта и получаем увлекательный квест на тему управления блоками питания Кобзарь в собственной системе с обратной связью. Хотя вместо Кобзаря лично я предпочитаю блоки питания Чистяк, хоть они и не столь занимательны, зато (по моему опыту) с основной задачей справляются лучше.
Возможно, лучше было бы открыть «экосистему» и нанять группу людей для поддержки community-проектов через социальные сети, со свободным обменом скриптами. У меня ощущение, что выросло бы количество чеков, т.е. продаж блоков питания. Но маркетологам, конечно, виднее.
Тем временем, community не остаёт:
Народные рецепты
Пользователь
Kevin Horton
предложил для FreeNAS систему с обратной связью в виде скрипта на языке Perl. Эту идею затем развил другой пользователь. Всё базируется на встроенном функционале материнских плат Супер Мирон, имеющих двухзонный климат-контроль, предположительно, серии X10 или более новых. Обратная связь при желании собирается откуда угодно, включая термодатчики жёстких дисков через SMART. Обороты вентиляторов регулируются на уровне ШИМ, нехитрыми командами контроллеру. Без ёлочных гирлянд. Но у меня на старой однопроцессорной плате Супер Мирон X9 (socket 1155) это не работает: на моделях X9SCL/X9SCM у меня не получалось нельзя переключать режим работы климата с «лёгкого» на «полный» иначе как через BIOS с полной перезагрузкой системы (ссылка). Увы, IPMI тут бессилен…
UPD:
Альтернативы IPMI I²C — преобразователи интерфейсов
А что, если замечательных разъёмов с I²C на системной плате совсем нет? Есть неплохие варианты USB-преобразователей I²C/SMBus, экспонирующие устройства как USB HID.
Пользователь x893 указал мне на пару микросхем-адаптеров: CP2112 пр-ва Silicon Labs и MCP2221A пр-ва Microchip. Последняя имеет экспортные ограничения, снимаемые отказом от буквы «A» на конце и понижением скорости с 460кБит до 115кБит. Чтобы не возиться с пайкой и рассыпухой, можно заказать изделие CP2112EK примерно за $40, либо выбрать ADM00559 на базе MCP2221 в два раза дешевле. Уверен, есть и более простые/дешёвые варианты, но их качество и работоспособность под разными системами надо проверять.Помню, несколько лет назад я, разбирая USB стек в статье на хабре, уже рисовал перспективы USB HID как удобного способа работы с сенсорами и датчиками. Досталось мне тогда от резидентов клуба: дескать, не надо использовать HID, это вообще для клавиатуры, правильно использовать CDC, т.е. виртуальный COM-порт. Но абстракция USB HID нативно
дробит сложное устройство на простые составляющие. Она позволяет в ряде случаев даже обходится без драйверов, пользуясь готовыми библиотеками, например для Python. И пока я отстаивал идею USB HID, Microchip уже выкладывала драйверы под Linux, с разницей в пару месяцев. Я тогда этого не знал, но рынок сам всё расставил по местам:)
Выводы
- Большинство серверных материнских плат используют для вспомогательных функций шину I²C, экспонируемую через интерфейс IPMI.
- На рынке «для ардуино» доступен целый ассортимент I²C-устройств (датчиков, реле, GPIO), для работы с которыми микроконтроллер как таковой необязателен.
- Практически доказано, что серверные материнские платы известной марки позволяют использовать I²C-совместимые устройства напрямую, через IPMI.
- BMC-контроллер, выполняющий функции IPMI, реализует транзакционную надстройку
над I²C с помощью высокоуровневой команды Master Write-Read, весьма практичную при работе с сенсорами. - Если требуется обработка прерываний от внешних устройств или работа по жёсткому протоколу реального времени, следует всё-таки потратить время и силы на разработку прошивки микроконтроллера.
- Большинство управляемых блоков питания используют ту или иную спецификацию шины PMBus, являющуюся открытой надстройкой над I²C/SMBus.
Ссылки
Intelligent Platform Management Interface Specification v2.0 www.intel.com/content/dam/www/public/us/en/documents/product-briefs/second-gen-interface-spec-v2.pdf IPMItool sourceforge.net/projects/ipmitool
I²C Bus (документация по версии telos) www.i2c-bus.orgSystem Management Bus (SMBus) description www.smbus.org/specs/smbdef.htm
PMBus, Power Management Bus pmbus.org
FreeNAS, Enterprise-Grade Features, Open Source, BSD Licensed www.freenas.org
SGPIO, Serial General Purpose Input/Output www.wikipedia.org/wiki/SGPIO
SuperMicro FAQ ID 9242, Monitoring of PSU using IPMITool www.supermicro.com/support/faqs/faq.cfm?faq=9492
LM25056, System Power Measurement IC with PMBus www.ti.com/product/LM25056
PCF8574A, Remote 8-Bit I/O Expander for I2C-Bus www.ti.com/product/PCF8574A
TCA9548A, Low-Voltage 8-Channel I2C Switch With Reset www.ti.com/product/TCA9548A
BMP180, Barometric Pressure Sensor www.bosch-sensortec.com/bst/products/all_products/bmp180
Частный блог, BMP180 Barometric Pressure Sensor 41j.com/blog/2015/01/bmp180-barometric-pressure-sensor
Форум Тринити, примеры работы с блоками питания на мат. платах SuperMicro (серии X8) 3nity.ru/viewtopic.php?p=135736#p135736
Форум FreeNAS, Script to control fan speed in response to hard drive temperatures forums.freenas.org/index.php?threads/script-to-control-fan-speed-in-response-to-hard-drive-temperatures.41294
Computer Cheese, IPMI Messaging Support commands, computercheese.blogspot.com/2013/05/ipmi-messaging-support-commands.html
Corsair Link www.corsair.com/en/support/faqs/corsair-link
EEVblog Electronics Community Forum www.eevblog.com/forum/chat/corsair-link
Критерии выбора
- На блоках питания должно быть минимум 4 PCI-e (6/8 Pins) разъема.
- Блоки питания должны быть с минимальной защитой: OPP, SCP, OVP. Как правило, все современные блоки питания поставляются с защитой.
- Кабеля блока питания должны быть сделаны по стандарту AWG18, это указывается на кабелях блока питания, все что тоньше (AWG20/22) не подходит! (американский калибр провода, чем меньше число, тем толще провод). Как правило, все современные блоки питания поставляются с кабелями данного калибра.
- В комплекте поставки блока питания имеется необходимое количество всех кабелей.
Как правильно подключить 2 или 3 блока питания к майнинг ферме: расчет мощности и синхронизация
Например, вот так выглядят разъемы PCI-E.
Базовая безопасность БП: не подключать к одному кабелю две видеокарты (читать далее…)
Риск сгореть у БП повышается с каждой подключенной видеокартой. Они имеют одну или две линии 12В, которые распределяются между всеми коннекторами PCI-E. Чтобы обеспечить ферму питанием, используют спаренные Блоки Питания. Тогда, нагрузка распределяется между двумя БП, что снижает риск возгорания и дает видеокартам простор для действий.
КПД блоков питания и потребление из розетки
КПД – коэффициент полезного действия, характеристика эффективности системы в отношении преобразования или передачи энергии.
КПД блоков питания или эффективность работы, определяет сколько блок потребляет из розетки. К примеру, ферма потребляет 1000 ватт при КПД блока 85%, это значит, что из розетки потребляется 1150 ватт. Ниже приведена таблица КПД блоков питания в зависимости от сертификата и мощности потребления. Брать блок питания без сертификата не рекомендуется, лучше брать от Silver и выше.
Для обратной ситуации, когда нам необходимо рассчитать реальное потребление видеокарты или фермы при использовании ватт метра, мы отнимает 15% от показания с ватт метра.
К примеру, на ватт метре мы видим потребления 1150 ватт, отнимаем 10-15% и получаем потребление самой фермы.
Сертификат | Нагрузка (от макс. мощности) | |||
10% | 20% | 50% | 100% | |
80 PLUS | — | 80% | 80% | 80% |
80 PLUS Bronze | — | 81% | 85% | 81% |
80 PLUS Silver | — | 85% | 89% | 85% |
80 PLUS Gold | — | 88% | 92% | 88% |
80 PLUS Platinum | — | 90% | 94% | 91% |
80 PLUS Titanium | 90% | 94% | 96% | 91% |
Помимо сертификата, немаловажный показатель, линия 12V. Как правило, если блок питания имеет сертификацию Gold и выше, то заявленная мощность блока питания, к примеру, 750W – соответствует мощности по линии 12V. А так как в ферме в основном будет использовать только эта линия (12V), то необходимо, чтобы выдаваемая мощность советовала заявленной.
Примеры дешевых блоков питания с расхождениями в заявленной мощности
BitFenix Fury 750W 80 PLUS GOLD
APEVIA WARLOCK ATX-WA750W
Как видно из примера выше, для блока BitFenix на выходе количества ватт составляет 720 (12*60).
И для блока Apevia, на выходе мы получим 576 ватт (12*48) из 750 заявленных.
В блоках питания линии 12V могут быть разделены, их может быть 2/3/4 – это необходимо учитывать. Так как в рамках одного БП если подключается видеокарта и райзер, то они должны быть подключены на одну линию, а не разные! Для этого необходимо смотреть техническую документацию, чтобы понимать какие разъёмы к каким линиям подключены. Тоже самое если два БП, нельзя подключать райзер к одному блоку, а видеокарту к другому. Нам необходимо, чтобы в блоке питания была только одна линия 12V. Для блока для на 1200W в характеристиках должна быть указано: “+12V: 100A”, перемножим амперы с вольтами, и получим мощность блока питания по 12V линии.
Пример блока питания с несколькими 12V линиями
Пример блока питания с одной 12V линией
Не стоит забывать, что дешевые блоки питания, к примеру таких брендов, как Aerocool могу серьезность проседать на полной мощности, и из заявленных 1000/1200 ватт, выдавать 800. В этом случае подобные блоки нельзя использовать для сборки в ферме. Особенно если сборка состоит только из одного блока питания.
Серверные
DELL DPS-1200MB A
Рис. 6. DELL DPS-1200MB A
Мощность такой модели составляет 1400 Вт.
Он сможет работать с 5 или 6 видеокартами.
Как вы понимаете, мощность видеокарт может быть больше, чем у моделей, которые мы рассматривали выше.
Коэффициент полезного действия в данном случае составляет рекордные 94%.
Плюсы:
- защита от перегрева, перепадов напряжения;
- круглосуточная работа.
Минусы:
- высокая цена;
- сложность поиска товара.
IBM DPS-2500BB
Рис. 7. IBM DPS-2500BB
Творение известной компьютерной фирмы IBM заставило удивиться многих гиков и просто людей, интересующихся миром технических новинок.
Модель может обеспечивать очень мощные видеокарты.
Это возможно благодаря тому, что мощность составляет 2320 Вт.
При этом цена ее не намного выше, чем у обычных (не серверных) моделей.
У нее тоже отличная система охлаждения, не издающая слишком много шума.
Здесь минуса с высокой ценой нет. Зато есть минус, связанный с не таким долгим сроком службы, чем у других моделей. Такие БП чаще выходят из строя.
Плюсы:
- может тянуть 12 карт;
- низкая цена;
- низкий уровень шума.
Минусы:
- не очень долгий срок службы;
- сложность поиска товара.
Разъемы
Важно проверить сколько и каких разъёмов присутствует на блоке питания, примеры для разных блоков.
EVGA Supernova
Cooler Master V1200
Как видно из примера выше, у разных блоков питания, количество разъёмов, как и сами разъёмы могут существенно отличаться.
Подключение 2-блоков питания и более
Вариант №1. Используем синхронизатор
Синхронизатор
- SATA разъём подключаемый в ведущий БП.
- 24pin разъём для подключения ведомого БП.
- Переключатель режима синхронизации, On/Off.
- Molex разъём – НЕ ИСПОЛЬЗОВАТЬ!
Вариант №2. Используем MOLEX-разъем
Molex-разъем
В разъём Molex подаём питание с ведущего БП, в разъём 24pin подключаем ведомый БП.
Существует исполнение с SATA разъёмом.
Вариант №3. Подключаем с помощью кабеля Dual PSU Power Supply Extension Cable
Кабель Dual PSU Supply Extension
- Подключаем в материнскую плату.
- Подключаем в ведущий блок питания.
- Подключаем в ведомый блок питания.
Подключение с помощью кабеля уступает синхронизаторам, так как кабеля могут быть не AWG18, а AWG20, даже если маркируются, как 18. При подключении с помощью синхронизаторов, будут использоваться родные качественные кабеля от блоков питания.
Вариант №4. Используем “скрепку” (не рекомендуется, если не знаете, что делать)
Рекомендую смотреть на возможность приобретения двух блоков питания по 750 ватт или более, так как найти хороший блок питания от 1200 ватт по вменяемой цене сейчас очень сложно, их просто нет в наличии, можно только оформить предзаказ и ждать, а блоки меньшей мощности есть в наличии и подключение с двух блоков через синхронизацию практичнее, чем с одного блока.
Также с двух блоков питания мы можем получить большее количество кабелей нежели с одного блока на 1200W.
Стоит также обратить внимание, что если один из блоков выйдет из строя, то ферма не перестанет майнить, а всего лишь будет работать не на полную мощность.
При использовании двух блоков допускаются, как блоки с одинаковой мощностью, так и блоки с разной мощностью, к примеру, ведущий может быть на 850 ватт, а ведомый на 750 ватт.
Обычные синхронизированные
CHIEFTEC A-135 (APS-750CB)
Рис. 3. CHIEFTEC A-135 (APS-750CB)
На первом месте один из наиболее рентабельных, если не самый рентабельный образец на сегодняшний день.
Его КПД составляет 85%, что на сегодняшний день очень много. Мощность – 750 Вт, есть разъемы для 4 видеокарт.
Охлаждает эту технику вентилятор 140 мм.
Работает он практически бесшумно, что тоже очень важно.
В модели присутствуют встроенные датчики температуры и нагрузки.
Поэтому техника защищена от перегрева и перегрузки. По заявлениям производителя 10000 часов работы вам обеспечено.
Плюсы:
- высокие технические характеристики;
- небольшой вес;
- отличный КПД.
Минусы:
- шумный при очень высоких нагрузках;
- если постоянно использовать его на пределе возможностей, быстро выйдет из строя.
CHIEFTEC A-135 (APS-1000CB)
Рис. 4. CHIEFTEC A-135 (APS-1000CB)
Это более мощный образец – на 1000 Вт. Но КПД у него тот же самый – 85%.
У этой модели практически те же преимущества, что и у предыдущей – отличная система охлаждения и минимум шума даже при самой высокой нагрузке.
Также есть защита от непредвиденных ситуаций, к примеру, перепадов напряжения.
Этот образец сможет обеспечивать 4 видеокарты, но общая их мощность уже может быть выше, чем у APS-750CB.
Как видим, преимущества и недостатки у обоих представителей CHIEFTEC одинаковые.
У них прекрасный КПД, но малая общая мощность. Для начинающего майнера любой из этих вариантов подойдет как нельзя лучше.
Плюсы:
- может работать на износ;
- низкая цена;
- качественные кабели.
Минусы:
- попадается плохая сборка;
- со временем сгорает.
Seasonic Prime Gold (SSR-1200GD)
Рис. 5. Seasonic Prime Gold (SSR-1200GD)
Это одна из самых мощных моделей, которые подходят для майнинга.
Она сможет обеспечивать 1200 Вт. В Seasonic Prime Gold есть 8 разъемов под видеокарты.
Но специалисты рекомендуют подключать меньше. Вы сможете свободно использовать 6 карт.
На сегодняшний день это очень даже неплохо. Шума при работе очень мало.
Есть у Seasonic Prime Gold и существенный минус. Разъемов то у него 8, а кабелей PCI-E 4. Поэтому вам придется самостоятельно искать нужный провод.
Плюсы:
- долговечен (гарантия на 12 лет);
- тихая работа;
- высокое качество комплектующих;
- отличная комплектация.
Минусы:
- слегка коротковаты кабеля (субъективно), других нет.
перейти
Серверные блоки питания
Из возможных минусов использоваться подобных блоков в домашних условиях могу отметить:
- Высокий уровень шума.
- Сомнительная гарантия от продавца. Против 7/10/12 лет гарантии у обычного блока питания.
- Сомнительная сертификация, эффективность подобных блоков может быть далека от идеала.
- Сомнительная возможность продажи на вторичном рынке, разве что такому же майнеру.
- Возможно придется самостоятельно распаивать необходимые выходы, обязательно заранее согласовывайте необходимое количество выходов Molex, 6pin и т.д.
- В большинстве случаев, вы приобретаете блоки питания, бывшие в употреблении, этот момент необходимо уточнять у продавца.
Исходя из выше перечисленных критериев я могу рекомендовать использовать подобные блоки, только в случае если вы осознаете все аспекты принимаемого решения.
Название БП | Мощность W | SKU | OEM |
Количество видеокарт — 3 | |||
Corsair HX | 750 | CP-9020137-NA | CWT |
Corsair RMx | 750 | CP-9020092-NA | CWT |
Seasonic Prime Gold | 750 | SSR-750GD | Seasonic |
Seasonic Prime Platinum | 750 | SSR-750PD | Seasonic |
EVGA SuperNOVA G2 | 750 | 220-G2-0750-XR | Super Flower |
EVGA GQ | 750 | 210-GQ-0750-V1 | FSP |
Количество видеокарт — 4 | |||
Corsair HX | 850 | CP-9020138-NA | CWT |
Corsair RMx | 850 | CP-9020093-NA | CWT |
Seasonic Prime Gold | 850 | SSR-850GD | Seasonic |
Seasonic Prime Platinum | 850 | SSR-850PD | Seasonic |
EVGA SuperNOVA G2 | 850 | 220-G2-0850-XR | Super Flower |
EVGA SuperNOVA GS | 850 | 220-GS-0850-V1 | Seasonic |
EVGA GQ | 850 | 210-GQ-0850-V1 | FSP |
Cooler Master V850 | 850 | RS850-AFBAG1 | |
Количество видеокарт — 5 | |||
Corsair HX | 1000 | CP-9020139-NA | CWT |
Corsair RMx | 1000 | CP-9020094-NA | CWT |
Seasonic Prime Gold | 1000 | SSR-1000GD | Seasonic |
Seasonic Prime Platinum | 1000 | SSR-1000PD | Seasonic |
EVGA SuperNOVA G1 | 1000 | 120-G1-1000-VR | FSP |
EVGA SuperNOVA G2 | 1000 | 120-G2-1000-XR | Super Flower |
EVGA GQ | 1000 | 210-GQ-1000-V1 | FSP |
EVGA SuperNOVA GS | 1050 | 220-GS-1050-V1 | Seasonic |
Cooler Master V1000 | 1000 | RSA00-AFBAG1 | |
Количество видеокарт — 6 | |||
Corsair HX | 1200 | CP-9020140-NA | CWT |
Seasonic Prime Gold | 1200 | SSR-1200GD | Seasonic |
Seasonic Prime Platinum | 1200 | SSR-1200PD | Seasonic |
EVGA SuperNOVA G2 | 1300 | 120-G2-1300-XR | Super Flower |
Cooler Master v1200 | 1200 | RSC00-AFBAG1 | Seasonic |
Как видно из представленной таблицы выбор блоков питания огромный.
Замена оплавленного кабеля блока питания после майнинга
В моем случае это источник от производителя corsair TX850M с двумя разъемами на 8 пин, четырьмя разъемами на 6 пин и общей мощности, которая составляет 850W.
(читать далее…)
Как выяснилось, причиной послужило существенное повышение напряжения в настройках для разгона видеокарт, и, как следствие, это привело к тому, что оба модульных кабеля 6+2 пина оплавились в разъеме блока питания.
Альтернативным вариантом может быть замена неисправного разъема на новый путем разборки представленного переходника и перепайки его контактов. Конечно, можно пойти и по более простому пути, заказав необходимые модули питания, например, с сайта «АлиЭкспресс».
Включив блок, он успешно запустился и согласно приведенной таблице допуска напряжений можно сказать, что он находится в норме. Безусловно, источник питания следует разобрать с целью проверки и устранения внешних дефектов, если таковые имеются, но при одном немаловажном условии, что он уже не на гарантии. Затем нужно почистить или продуть источник от пыли и скопившейся в нем грязи.
Оплавившиеся разъемы модульного питания, как вариант, можно заменить на переходник, запитывающийся от 2-х молексов.
В следствии непрерывного майнинга рига включающего в себя 2 одинаковых БП, данный вышел из строя, а подключенные к нему видеокарты соответственно перестали функционировать должным образом.
При более детальном визуальном сравнении нового кабеля с оплавившимся было заметно, что провода в верхней части подключены не одинаково, т. к. двойные провода расположены зеркально друг от друга, а
Примеры выбора блоков питания для сборки фермы
Итак, у нас несколько задач, на примере которых рассмотрим подходы к выбору блока питания, на примере блоков от SeaSonic, серия Prime.
Задача №1: Собираем ферму из 4-х видеокарт серии 1060
Допустим, мы хотим собрать ферму из 4-х видеокарт, для этого нам необходимо знать:
- потребление 4-х видеокарт 120W*4 = 480/500W + Потребление системы = 65W;
- у данных видеокарт всего один 8-Pin разъем питания;
- для подключения нам необходимо: на нашем блоке питания должны присутствовать разъемы в следующем количестве: 5 разъемов для периферии, 4 разъема для видеокарт, один разъем для процессора (CPU или PCI-e);
- один Sata кабель для подключения SSD/HHD;
- два Sata кабеля для подключения райзеров;
- два Molex кабеля, которые в зависимости от производителя блока питания, подключаются в периферийные разъемы;
- минимум 4 PCI-e кабеля, для подключения 4-х видеокарт.
По мощности нам подходят блоки от 650W, по разъемам от 750W, по комплекту кабелей от 850W.
Подбор блоков по необходимым параметрам:
- блок на 650W не подходит из-за наличия всего 4-х PCI-e входов, один из которых будет занят под CPU (у данных блоков CPU и PCI-e разъемы совмещены);
- блок на 750W не подходит из-за комплектации всего двумя кабелями PCI-e, а также один molex и двумя Sata;
- блок на 850W — подходит, так как: на 3 PCI-e кабеля поставляемых в комплекте, мы устанавливаем 3 видеокарты;
- на 3 Sata кабеля поставляемых в комплекте, мы устанавливаем 2 Sata райзера и HDD/SSD;
- на 2 Molex кабеля поставляемых в комплекте, мы устанавливаем 2 Molex Райзера;
- для оставшейся видеокарты мы задействуем один дополнительный CPU кабель, на который установим переходник CPU>PCI-e.
Задача №2: Собираем ферму из 5-ти видеокарт серии 1070
- потребление 5-ти видеокарт 175W*5 = 875/900W + Потребление системы = 65W;
- у данных видеокарт один 8-Pin разъем питания или 8+6-Pin;
- для подключения необходимо: на блоке питания должны присутствовать разъемы в следующем количестве: минимум 5 разъемов для переферии, минимум 6 PCI-e разъемов (5xVGA + 1xCPU);
- один Sata кабель для подключения SSD/HHD;
- два Sata кабеля для подключения райзеров;
- два Molex кабеля, которые в зависимости от производителя блока питания, подключаются в периферийные разъемы;
- минимум 4 PCI-e кабеля, для подключения 4-х видеокарт;
- один дополнительный CPU-кабель.
Итак, по мощности нам подходят блоки от 1200W, либо комплектация из двух блоков питания на 850+750W.
- Подбор блоков питания по необходимым параметрам:
- блоки на 650/750/850W не подходит из-за отсутствия мощности;
- блок на 1000W не подходит из-за отсутствия запаса в мощности хотя бы в 10%;
- блок на 1200W — подходит, так как; на 4 PCI-e кабеля поставляемых в комплекте, мы устанавливаем 4 видеокарты;
- на 3 Sata кабеля поставляемых в комплекте, мы устанавливаем 2 Sata райзера и HDD/SSD;
- на 2 Molex кабеля поставляемых в комплекте, мы устанавливаем 2 Molex Райзера;
- для оставшейся видеокарты и райзера мы задействуем один дополнительный CPU кабель, на который установим переходник CPU>PCI-e 8+8-Pin и будем использовать шестипиновый райзер.
Задача №3: Собираем ферму из 6 или 8 видеокарт
Для решения данной задачи подойдут блоки питания, которые комплектуются необходимым количеством разъемов и кабелей либо, что проще и надежней, необходимо использовать два и более блока питания в сборке.
- Обратите внимание, что мощные видеокарты, например, серия 1080, используют 8+8-pin питание. И необходимо подключать оба разъема, а главное, необходимо помнить, что будет использоваться два кабеля и два разъема на блоке. Это значит, что к блоку питания на 750/850W, больше 2-х таких видеокарт, подключить не получится!
- Главным преимуществом использования двух блоков питания, является поставка CPU кабелей питания, которые можно использовать вместе с переходниками. В нашем случае получается три свободных кабеля, на которые можно полностью укомплектовать шестипиновые райзера, видеокарты, или видеокарту вместе с райзером, в зависимости от мощности самой карты.
Лучший блок питания для мульти-GPU майнинг рига
Майнинг риг – это набор одинаковых видеокарт, которые одновременно добывают криптовалюту. В нашем случае мы рассматриваем случай именно с видеокартами (GPU), так как он на сегодняшний день наиболее выгоден.
Чтобы выбрать оптимальный блок для мульти-GPU майнинг рига, необходимо опираться на то, какие именно карты вы будете использовать.
Точнее, нужно смотреть на потребляемую ими мощность.
В зависимости от этого вы сможете выбрать один из БП, перечисленных выше.
перейти