12 pontos por GN⁺ 2024-03-14 | 1 comentários | Compartilhar no WhatsApp
  • NVTop = "Neat Videocard TOP"
  • Monitor de tarefas para GPUs e aceleradores
  • Processa informações de várias GPUs e exibe os dados de forma semelhante ao htop
  • Fornecedores com suporte atualmente: AMD (driver Linux amdgpu), Apple (suporte limitado a M1 & M2), Huawei (Ascend), Intel (driver Linux i915), NVIDIA (driver proprietário para Linux), Qualcomm Adreno (driver Linux MSM)

Opções e comandos interativos do NVTOP

  • Janela de configuração interativa: oferece um utilitário de configuração ao pressionar F2, permitindo personalizar a interface de acordo com as necessidades do usuário.
  • Salvar configuração: ao salvar o ambiente configurado na janela de ajustes com F12, ele será carregado na próxima execução do nvtop.
  • Manual e opções de comando do NVTOP: há uma página de manual (man nvtop), e a ajuda de linha de comando pode ser consultada com nvtop -h ou nvtop --help.

Suporte a GPU

  • AMD: suporte a GPUs AMD por meio do driver amdgpu. Em kernels 5.14 ou superiores, é possível verificar os processos que usam a GPU.
  • Intel: suporte a GPUs Intel por meio do driver Linux i915. Em kernels 5.19 ou superiores, é possível verificar os processos que usam a GPU.
  • NVIDIA: suporte por meio da biblioteca NVML. GPUs anteriores à microarquitetura Kepler não oferecem suporte a algumas consultas.
  • Adreno: suporte a GPUs Adreno por meio do driver Linux msm. Em kernels 6.0 ou superiores, é possível verificar os processos que usam a GPU.
  • Apple: inclui suporte inicial à Apple usando Metal. Compatível apenas em builds para Apple.
  • Ascend: suporte ao Ascend por meio da API DCMI (versão 6.0.0). Atualmente, a DCMI oferece apenas APIs limitadas.

Build

  • Bibliotecas necessárias: ncurses (interface do usuário), NVIDIA (NVML), AMD (libdrm), Intel (i915) etc.
  • Processo de build: clonar o código-fonte com git clone, compilar com cmake e instalar no sistema com make install.

Processo de instalação por distribuição

  • Ubuntu / Debian: suporte à instalação via snap ou apt. É possível instalar a versão mais recente do nvtop via PPA.
  • Fedora / Red Hat / CentOS: suporte à instalação via AppImage ou dnf.
  • OpenSUSE: suporte à instalação via zypper.
  • Arch Linux: instalar nvtop com pacman.
  • Gentoo: instalar nvtop com layman e emerge.
  • AppImage: disponibilizado como aplicativo autônomo. Basta conceder permissão de execução e rodar.
  • Snap: após instalar com snap install, é necessário conceder permissões para controle de processos e inspeção de informações da GPU.
  • Docker: requer driver NVIDIA e nvidia-docker. Pode ser executado com docker build e docker run.

Opinião do GN⁺

  • O NVTOP oferece suporte a diversos fornecedores de GPU e é uma ferramenta poderosa para monitoramento de GPU em sistemas baseados em Linux.
  • A ferramenta fornece a administradores de sistema e desenvolvedores um modo eficaz de acompanhar em tempo real o uso de GPU.
  • O monitoramento de GPU é especialmente importante ao executar tarefas dependentes de GPU, como machine learning, análise de dados e desenvolvimento de jogos.
  • Outro projeto open source com funcionalidade semelhante ao NVTOP é o gpustat, e os usuários podem escolher a ferramenta mais adequada às suas necessidades.
  • Por ser um projeto open source, melhorias contínuas e novos recursos podem ser adicionados por meio das contribuições da comunidade.

1 comentários

 
GN⁺ 2024-03-14
Comentários do Hacker News
  • Descobriu que nvtop ou nvidia-smi fornecem uma boa visão geral do uso da GPU, mas não são adequados para refletir a velocidade real do trabalho. Se você se interessa por desempenho em IA, recomenda o Nsight Compute CLI para perfilar kernels individuais e o Nsight Systems para uma visão macro. No caso de usar PyTorch, recomenda usar o profiler do PyTorch.
  • Reclama do problema de apt install não funcionar. Aponta que problemas de instalação relacionados à NVIDIA acontecem com frequência, o que faz perder muito tempo ao reinstalar o Linux. Critica que várias camadas e conflitos de versão, como driver, CUDA, toolkit do CUDA e cuDNN, causam confusão.
  • Apresenta outro utilitário de que gosta, chamado Nvitop.
  • Menciona nvtop e bottom como seus monitores de recursos preferidos no Linux e compartilha que descobriu que o nvtop funciona não apenas em dispositivos NVIDIA, mas também em dispositivos não NVIDIA.
  • Diz preferir o btop, que nas versões mais recentes faz não só o monitoramento geral de processos, mas também o monitoramento de GPU.
  • Afirma estar feliz que utilitários de placa gráfica no Linux tenham passado a oferecer suporte multiplataforma e avalia positivamente o afastamento da abordagem anterior, específica por driver.
  • Apresenta o utilitário de sua preferência, gpustat, explicando que ele fornece o mínimo de informação necessário para saber se o treinamento está com problema ou indo bem.
  • Apresenta seu próprio projeto, Zenith, explicando que ele combina monitoramento de GPU NVIDIA com recursos como disco, CPU e Top.
  • Expressa que, ao passar a usar o Home Assistant, sentiu vontade de integrar todas as fontes de dados. Diz que é possível renderizar os dados do jeito que quiser e comenta que encontrou um projeto chamado sensors2mqtt que gostaria de usar.
  • Expressa o desejo de que houvesse suporte ao driver Nouveau.