Desempenho USB / monitor de tráfego?

9

Primeiro de tudo, eu encontrei uma pergunta semelhante , mas isso realmente não resolve problema. Estou tentando descobrir se o barramento USB de um dispositivo que estou usando é o gargalo no meu programa.

Como posso monitorar um barramento USB (semelhante ao funcionamento do gnome-system-monitor) para mostrar a utilização do barramento? Basicamente eu quero identificar quando o barramento está sendo 'maximizado'. Eu acho que o que estou procurando é alguma interface para usbmon, já que parece que faria o que eu preciso.

Isso surgiu do teste da USRP e da GNU Radio. Estou com uma situação em que parece que o barramento USB pode ser um fator limitante, por isso faço a pergunta mais geral sobre o monitoramento de desempenho de USB.

    
por Mr. Shickadance 05.04.2011 / 16:36

3 respostas

3

Como o usbmon fornece o tamanho de cada pacote transferido, eu abordaria isso escrevendo um programa rápido para analisar o arquivo 0u (que possui dados para todos os dispositivos USB). Ele selecionaria os números de barramento e dispositivo USB e manteria um total de execução do campo de comprimento de pacote em ambas as direções para cada dispositivo.

Isso fornecerá a quantidade de dados transferidos por dispositivo, em cada direção. Se você imprimi-lo uma vez por segundo, terá uma boa ideia da taxa de transferência de cada dispositivo. Note que ele não incluirá nenhuma sobrecarga de USB, mas se você comparar os números com um dispositivo que consiga saturar a largura de banda disponível, saberá se está chegando perto do limite.

    
por 17.04.2011 / 06:09
2

Use usbtop , ele oferece uma boa visão geral de quais dispositivos estão usando a largura de banda:

Bus ID 1 (USB bus number 1) To device   From device
  Device ID 1 :             0.00 kb/s   0.00 kb/s
  Device ID 2 :             0.00 kb/s   0.00 kb/s
Bus ID 2 (USB bus number 2) To device   From device
  Device ID 1 :             0.00 kb/s   0.00 kb/s
  Device ID 4 :             141.73 kb/s 13777.68 kb/s
  Device ID 5 :             9.98 kb/s   11.24 kb/s
  Device ID 6 :             0.00 kb/s   0.00 kb/s
  Device ID 7 :             0.00 kb/s   0.00 kb/s
  Device ID 8 :             141.71 kb/s 15257.26 kb/s
    
por 22.01.2017 / 13:13
1

Eu escrevi um par de scripts de shell para obter a taxa de transferência de um dispositivo USB. Se alguém o usar, você pode encontrá-lo nesta postagem .

    
por 09.09.2013 / 18:27