Estou trabalhando em um projeto que pode monitorar o uso de vgpu das máquinas virtuais. O hipervisor é vCenter
, temos placas nvidia A16 instaladas em hosts vCenter e atribuímos um vGPU 16 a algumas VMs do Windows neste host, esses vGPUs são alocados para o mesmo chip GPU.
Tentei usar nvidia-smi
o comando para recuperar o uso de vGPU no host e nas VMs. No host usei nvidia-smi vgpu
e nas VMs usei nvdia-smi
. Mas descobriu-se que as métricas fornecidas pela nvidia-smi sempre foram diferentes daquelas fornecidas pelo sistema operacional Windows na VM.
Por exemplo, o uso de nvidia-smi
pode ser tão baixo quanto6%, mas o uso do gerenciador de tarefas do Windows sempre esteve presente15%.
Preferimos confiar nas métricas fornecidas pelo sistema operacional convidado, pois elas refletem a demanda real do caso do usuário.
Minha pergunta é: qual é o significado e a fonte das métricas nvidia-smi? Por que o resultado é tão diferente? Posso de alguma forma modificar o resultado para refletir a demanda real dos hóspedes?
Obrigado por qualquer indicação!
Responder1
Os períodos e/ou pontos de tempo durante/nos quais o Gerenciador de Tarefas e a nvidia-smi medem podem ser diferentes, o que leva a diferentes porcentagens de uso.
Conformedocumentação
utilização.gpu
Porcentagem de tempo durante o período de amostra anterior durante o qual um ou mais kernels estavam em execução na GPU. O período de amostragem pode estar entre 1 segundo e 1/6 de segundo dependendo do produto.
utilização.memória
Porcentagem de tempo durante o período de amostra anterior durante o qual a memória global (do dispositivo) estava sendo lida ou gravada. O período de amostragem pode estar entre 1 segundo e 1/6 de segundo dependendo do produto.
Experimente uma carga constante e inalterada e meça se elas correspondem.