Инструменты3 октября 2026 г., 23:46 МСК🤖 Auto

Nvitop: Современная замена nvidia-smi с графиками и управлением процессами

Разработчики представили nvitop — интерактивный инструмент мониторинга GPU NVIDIA, который превосходит стандартный nvidia-smi по функционалу, скорости и визуализации данных.

Баннер новости 8878

Почему nvidia-smi больше не достаточен?

Стандартная утилита nvidia-smi остается базовым инструментом, но она ограничена однократным выводом статистики и простым текстовым форматом. Для сложных рабочих нагрузок, особенно в распределенных системах или при отладке глубокого обучения, требуется более детальный анализ. Nvitop решает эту проблему, предлагая интерактивный интерфейс в реальном времени, поддержку графиков истории использования ресурсов и возможность прямого управления процессами через клавиатуру.

Ключевые технические преимущества

В отличие от многих аналогов, парсящих вывод nvidia-smi, nvitop использует прямые bindings к NVIDIA Management Library (NVML) через Python. Это обеспечивает:

  • Высокую скорость опроса: Асинхронный сбор данных с использованием многопоточности.
  • Кэширование: Использование библиотеки cachetools (TTLCache) для снижения нагрузки на систему.
  • Кроссплатформенность: Полная поддержка Linux и Windows (включая Windows Terminal).
  • Интеграцию с Docker и SSH: Корректная работа в контейнеризованных средах и удаленных сессиях.

Сравнение с альтернативами

Разработчики позиционируют nvitop как универсальное решение, превосходящее такие инструменты, как gpustat, py3nvml и nvidia-htop. Ниже приведена сравнительная таблица ключевых характеристик:

Характеристика nvidia-smi gpustat nvitop
Интерфейс Однократный вывод (CLI) Однократный вывод (CLI) Интерактивный (TUI) + CLI
Визуализация Текст Текст Цветные графики, диаграммы, tree-view
Управление процессами Нет Нет Отправка сигналов, фильтрация, сортировка
Метод получения данных Системный вызов Парсинг вывода nvidia-smi Прямой вызов NVML API (Python bindings)
Поддержка Windows Да Частично/Зависит от среды Да (полная)
Интеграция с Grafana Нет Нет Да (через nvitop-exporter)

Дополнительные возможности: от мониторинга до управления

Nvitop — это не просто «красивый» монитор. Пакет включает утилиту nvisel для удобного выбора устройств CUDA (CUDA_VISIBLE_DEVICES), что критически важно для исследователей в области Deep Learning. Кроме того, библиотека предоставляет богатый API для разработчиков, позволяя встраивать мониторинг GPU в собственные приложения. Поддерживается экспорт метрик для построения дашбордов в Grafana, что делает nvitop подходящим решением для production-сред.

Установка и требования

Для работы требуется Python 3.8+, библиотека NVML (входит в драйвер NVIDIA или CUDA Toolkit) и psutil. Установка максимально проста и доступна через PyPI:

pip3 install --upgrade nvitop

Также доступна установка через uvx или pipx для изолированных сред. Для пользователей Ubuntu предусмотрен скрипт install-nvidia-driver.sh для автоматического обновления драйверов.

Источник: Github ↗