Архитектура вычислительного узла (Compute Node)
В данном документе описан программный стек и системная архитектура серверов (вычислительных станций), оснащенных графическими ускорителями (например, 4x RTX 4090) и погруженных в иммерсионную систему охлаждения.
1. Операционная система (OS)
В качестве базовой операционной системы выбрана Bare-metal Ubuntu 24.04 LTS (Server/Desktop без GUI).
Обоснование отказа от гипервизоров (Proxmox VE / ESXi):
- Максимальная производительность шины PCIe: Для задач распределенного глубокого обучения (PyTorch DDP, DeepSpeed) на 4-х GPU критически важна минимальная задержка и максимальная пропускная способность между картами. Виртуализация (IOMMU / PCIe Passthrough) добавляет нежелательные накладные расходы.
- Отсутствие надобности в жесткой изоляции ВМ: Станция рассматривается как единый суперкомпьютер для запуска монолитных ресурсоемких задач одной командой/исследователем, а не как хостинг для независимых клиентов.
- Простота управления GPU: Прямой доступ к драйверам Nvidia и отсутствие "ошибки 43" или проблем с инициализацией потребительских видеокарт в виртуальных машинах.
2. Изоляция и контейнеризация
Вместо полной виртуализации используется контейнеризация приложений:
- Docker Engine + NVIDIA Container Toolkit (
nvidia-docker2): Весь пользовательский код, среды Python, Jupyter Notebooks и ML-фреймворки запускаются исключительно в Docker-контейнерах. - Это позволяет избежать засорения хост-системы системными библиотеками, обеспечивает воспроизводимость экспериментов и легкое пробрасывание конкретных GPU в нужные контейнеры (флаг
--gpus allили--gpus '"device=0,1"').
3. Интеграция с системой охлаждения
Так как сервер работает в иммерсионной жидкости, его температурный режим напрямую зависит от внешнего контроллера помп и радиаторов.
Cooling Controller Daemon (Системный сервис Linux): На хост-ОС Ubuntu в фоне работает легковесный сервис (демон), написанный на Python/Go/C++, который общается с железным контроллером охлаждения по кабелю USB (Serial).
Задачи демона:
- Телеметрия: Непрерывный опрос контроллера (получение RPM помп, температуры жидкостей, расчетного потока).
- Экспорт метрик: Конвертация данных в формат для граббинга Prometheus-сервером и последующей визуализации в Grafana (вместе с метриками
nvidia-smiиnode_exporter). - Graceful Shutdown (Мягкое выключение): Если контроллер фиксирует рост температуры до предкритического уровня (например, остановилась внешняя помпа охлаждающего контура), он сигнализирует демону по USB. Демон инициирует корректное завершение работы (
sudo shutdown -h now), штатно останавливая Docker-контейнеры и сохраняя чекпоинты нейросетей, прежде чем сработает жесткое аппаратное отключение питания контроллером. - Настройка контроллера: Через CLI-утилиту, взаимодействующую с демоном, можно менять настройки аппаратного контроллера (кривые помп, лимиты защиты), минуя его физический экран/энкодер.