Teste a velocidade do dispositivo USB 3.0

2

Eu procurei o comando hdparm , mas todos os exemplos são para testar discos. Não tenho certeza se ele pode ser usado para testar dispositivos USB externos (especificamente um flash stick USB).

Estou usando este código agora:

dd if=/dev/zero of=/media/storage/speed_test.txt bs=100K count=1k
sudo /sbin/sysctl -w vm.drop_caches=3
dd if=$/media/storage/speed_test.txt of=/dev/null bs=100K count=1k

Quais são os intervalos de velocidades de leitura e gravação que devo esperar? Eu tenho ~ 900 MB / s para gravação e ~ 500 MB / s para leitura e acho que os números são muito altos. Eu não estou limpando o cache corretamente? Quais outros comandos eu posso usar para testar a velocidade?

Atualização:

Graças à resposta do user427539 e comentário de zloster , agora tenho uma medição mais precisa das velocidades. Estou testando com um flash stick USB de 16GB e estou escrevendo e lendo 1 GB de dados. Eu tenho 22 MB / s para escrever e 46 MB / s para leitura. No entanto, essas velocidades não são muito lentas para um dispositivo flash USB3? Por que a velocidade seria tão baixa?

    
por tmp 13.03.2015 / 19:08

1 resposta

0

Primeiro, são apenas 100 MB que você está escrevendo. O disco e o controlador também têm um cache que você não está descartando, então você precisa de um teste maior para garantir que esses caches não estejam corrompendo os resultados.

Bata com pelo menos 1GB. Talvez mudando para bs = 1M. Eu normalmente testo com 10GB só para ter certeza.

Depois, você precisa ter certeza de que os dados realmente chegam ao disco, adicione "conv = fdatasync" no final da primeira linha para fazer isso.

Quanto às velocidades normais, os dispositivos / portas USB2 normalmente fazem entre 10 e 20 MB / seg. Os dispositivos USB3 devem ter entre 50 e 150MB / seg. Estou muito feliz se vir um novo dispositivo atingir 120MB / seg. Isso é 7,2 GB / min, o que é muito rápido.

Mas esteja ciente de que um disco rotativo lê / grava na velocidade em que o prato gira sob a cabeça. Assim, você sabe a densidade (bits / polegada), você pode calcular a velocidade dos dados:

taxa de transferência = raio * 2PI * densidade * RPM

A densidade que você não pode controlar, mas o RPM que você pode, quanto mais RPMs, mais rápido a velocidade bruta.

Além disso, observe que o raio do prato muda de acordo com o local da cabeça. Pode ser de cerca de 1,75 polegadas na pista externa, mas apenas 0,75 polegadas na pista interna. Isso significa que a unidade irá realmente desacelerar à medida que você se move da pista externa para a parte interna. Normalmente, as unidades virgens têm você primeiro escrevendo para a pista externa, de modo que, no início, você obtém uma velocidade muito melhor. À medida que o drive enche, fica mais lento. Eu costumo ver uma queda de 50% no desempenho com uma unidade quase cheia.

    
por 13.03.2015 / 23:30