Мал, да удал - компактная рабочая станция для back-end разработчика
реклама
Предыстория и контекст.
Я занимаюсь анализом данных и математическим моделированием 12 лет. 4 года назад накопленный опыт и программные наработки удалось конвертировать в небольшую компанию, которая занимается построением аналитических систем для оптимизации микрологистики предприятий.
До 2017 года никто в нашей команде (да и среди большинства других знакомых коллективов) и не подумал бы собирать мощный системник для CPU-операций. Для GPU - да, поставить несколько видеокарт чтобы сделать возможным работу за адекватное время с целым набором библиотек для численных методов и машинного обучения - было вполне нормальной практикой года с 2014го. Однако, когда доступные за разумные деньги процессоры имели не более 4х ядер, а приличные Ксеоны в комплекте со всем серверным обвесом стоили огромных денег, адекватным решением было иметь невесть какой ноутбук + виртуалку в облачной инфраструктуре. Это касалось и разработки и анализа данных с моделированием.
реклама
В 2017м году на рынок выходят серии действительно мощных HEDT процессоров Intel SkyLake-X и AMD Threadripper, которые имеют большое количество ядер и, при этом, отличную производительность на ядро.
Системы на таких процессорах становятся привлекательными и для аналитиков и для разработчиков. В исключительных случаях с их помощью можно заменить распределенные инфраструктуры обработки данных, такие как Hadoop (если ранее использовалось 4 машины, то теперь справляется одна, хотя 4 машины - крайне малый размер типового Hadoop-кластера).
Однако, такие системы всегда воспринимались как огромные ящики с мощным охлаждением. И подчас не отменяли необходимость иметь еще и ноутбук, чтобы работать из разных локаций. В прошлом году появился очень интересный процессор AMD, который позволяет пересмотреть эту точку зрения. В этой статье мы и попробуем сделать мощную, но компактную систему на этом процессоре.
Постановка задачи.
Итак, недавно у нас появился новый back-end разработчик, которого нужно снабдить компьютером.
Человек ранее работал исключительно на ноутбуках и компактность системника для него ключевой фактор.
От форм-фактора требуется:
- Занимает мало места на столе
- Можно легко закинуть на сидение авто и поехать работать на дачу
- Когда откроются границы, можно аккуратно положить системник на багажную полку и поехать работать из солнечной Черногории.
- Не особо шумный, не будет мешать спать, будучи включенным.
реклама
При этом машина должна быть производительной. Должна позволять работать нескольким Docker-контейнерам, базам данных, исполнять и отлаживать многопоточный код. Таким образом от железа требуется:
- Минимум 10 ядер
- Достойная производительность на ядро
- Минимум 48 Гб оперативной памяти.
- Диск, обеспечивающий скорость чтения не менее 1500 Мбайт/сек. объемом 1 Tb.
- НЕ требуется GPU вычислений.
- ОС - Ubuntu 20.4
Бюджет
Бюджет сборки - 80 т.р.
Комплектующие.
Начнем с корпуса. Был выбран дешевый и компактный ExeGate MI207. Глубина: 40 см, Высота: 27 cм, Ширина: 9.6 см. Поддерживает как mini-ITX так и mATX материнские платы.
На фото ниже можно видеть сравнение размеров со смартфоном и midi-tower корпусом.
реклама
Выбор был обусловлен в первую очередь удобным расположением воздухозаборника, прямо напротив кулера процессора.
Процессор. Главный гвоздь программы - процессор AMD Ryzen 3900. Именно 3900, а не 3900x. У нас уже был опыт работы с несколькими процессорами Ryzen и мы точно понимали, что заявленные 65W теплоотдачи в стоке будут и в реальности. Для сравнения, i9 9940x в стоке оказался горячее, чем прописано в паспортных данных. 65 Ватт это на 38% меньше, чем у старшего собрата 3900x. При этом производительность в референсных бенчмарках ниже всего на 3-5%. Мне показался этот камень очень интересным и несколько недооцененным сообществом. Чего только стоит то, что доставка мне сначала по ошибке привезла 3900x, и только потом менеджер магазина обнаружил что есть еще 3900 и стоит он на 5 тысяч дешевле.
Материнская плата - ASRock B550m-ITX/ac. Плата формата ITX, при этом снабжена неплохим VRM (8+2 фазы, 60A). Имеется Wi-FI, что очень в тему для компактной рабочей станции.
реклама
Блок питания - Chieftec Compact SFX 550 W. Блок SFX-формата, 80+ Gold. Был выбран именно 550-ваттный, на случай, если когда-то будет необходимость поставить GPU по-мощнее.
Видеокарта - mini-ITX затычка с чипом NVidia gtx-710.
Оперативная память - Kingston HyperX Fury 64 Гб - две плашки cо стоковой частотой 2666 МГц и таймингами 16-18-18-27. Память без труда завелась на частоте 3133 МГц и таймингами 15-15-17, c напряжением 1.35 вольт. В будущем донастроим память и выставим тайминги в соответствие с DRAM Calculator, а сейчас эти показатели подогнаны чтобы сравнить с другими сборками.
Накопитель: Kingston A2000 1 Tb NVMe SSd. Для тестирования был также присоединен SATA SSD с предустановленной Windows и Ubuntu.
И, наконец, в качестве системы охлаждения был выбран кулер Noctua NH-L9x65 SE-AM4. Данный кулер очень компактный: 10х10х6.5 см, при этом весьма производительный. Я бы сказал, это второй ключевой элемент сборки после процессора, который позволил этой сборке вообще существовать. Noctua - это как Мерседес в мире воздушных кулеров - топовая производительность, низкий шум на высоких оборотах. В помощь к кулеру были добавлены нижний и верхний 80-мм вентиляторы Noctua со скоростями вращения до 1800 оборотов и воздушным потоком до 30 CFM.
Сборка
Собрать все в таком небольшом корпусе не было затруднительно. Вся сборка заняла минут 25, из которых минут 10 я вспоминал в какую сторону вставлять процессор в AM4. Проблему создало только отсутствие крепления для корпусных вентиляторов, пришлось прикручивать прямо к отверстиям для воздуха.
Первые температурные тесты
Были замерены температуры в простое и в стресс-нагрузке в Windows и Linux.
Температура окружающей среды: +25 градусов.
Для Винды имеем следующее:
В простое температура преимущественно колеблется от 48 до 55 градусов.
В нагрузке с помощью CPU-Z имеем:
Систему протестировали в течение 15 минут, при этом температура процессора не уходила за 82 градуса.
Кулер был установлен на режим Performance.
Для Linux отличия только в температурах простоя - они ниже на 5-7 градусов.
Первые тесты производительности.
В качестве тестов производительности рассматривался только GeekBench5 под линуксом и собственный бенчмарк. Возможно, в будущем дополним результаты другими бенчмарками, на данный момент сочли GeekBench 5 наиболее релевантным нашим задачам. Сборка была сравнена с двумя другими сборками:
- Ryzen Threadripper 2990wx + Asus Zenith Extreme Alpha + 280х30 мм вода
- Ryzen 3900x + ASRock x570 Taichi + Be Quiet Dark Rock 4.
Как было сказано выше, память в данных системах находится в одинаковых конфигурациях.
Как мы видим, "старший брат" 3900x в просторном midi-tower корпусе обогнал нашу микросборку всего на 4.5%.
Куда как интереснее нам был собственный тест, который заключается в проецировании миллиона точек на ломанную на плоскости. Код отлично распараллелен, в отличие от Geekbench 5 показывает эффективность в действительно нашей задаче:
Видим, что 3900 отстает от 3900x на 5%.
Для нас эти предварительные результаты - отличные. На деле потеря 5% производительности не скажется на работе.
Уровень шума.
Шум был замерен в офисе, в 22 часов в условиях частичной изоляции, когда людей и посторонних шумов вообще не было. Получаем: 28 Дб в простое, что не отличается от фонового шума. 41 Дб в нагрузке (CPU-Z). Считаю, что уровень шума внутри этого диапазона вполне позволит спать в одной комнате с включенным компьютером. От себя добавлю, что эта сборка не только на порядок тише моей домашней (50-60 Дб), но и тише моего ноутбука (50 Дб в нагрузке).
Сводка бюджета
Здесь я приведу таблицу со стоимостью компонентов. Надо понимать, что некоторые из них, например, процессор были куплены незадолго до резкого снижения курса рубля в конце июля.
Компонент | Цена, руб. |
Ryzen 3900 | 26720 |
Материнка ASRock B550m ITX/ac | 11206 |
Оперативка HyperX 32 Гб х 2 @2666 | 18650 |
Накопитель Kingston A2000 1 Tb | 10010 |
Кулер Noctua NH-L9x65 | 3609 |
БП Chieftec compact SFX 550 | 5104 |
Видеокарта Asus gtx 710 mini ITX | 2340 |
Корпус Exegate mi207 | 1720 |
Корпусные вентиляторы Noctua 80 мм, 2 шт. | 1456 |
Итого: 80815 рублей.
Предварительные выводы
Итак, пока результат очень понравился (стал бы я эту статью писать, если бы не понравилось =) ).
Конечно, нужно обкатать систему в бою, и посмотреть что получится.
Сейчас я вижу, что можно построить компактную рабочую станцию для решения серьезных аналитических и кодерских задач, при этом она не сожрет вам половину стола и вы можете ее взять с собой на дачу, на зимовку, в коворкинг без каких-либо проблем.
Нужно понимать, что 3900 - уникальный процессор в линейке zen2. Шаг влево-право и мы или получаем более слабые 8-ядерники или куда более горячие >= 12-ядерники, которые уже не впихнешь без даунвольта в такой компактный корпус. Всего 2 года назад мы и не могли о таком мечтать, и теперь надеемся, что новая линейка Ryzen 4000 порадует подобными решениями. Хотелось бы увидеть, например, 14-ядерный процессор с пониженным тепловыделением.
Другим важным фактором успеха оказался кулер Noctua высотой всего 65мм и производящим минимальный шум на очень высоких оборотах.
реклама
Лента материалов
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!
Комментарии, содержащие оскорбления, нецензурные выражения (в т.ч. замаскированный мат), экстремистские высказывания, рекламу и спам, удаляются независимо от содержимого, а к их авторам могут применяться меры вплоть до запрета написания комментариев и, в случае написания комментария через социальные сети, жалобы в администрацию данной сети.
Комментарии Правила