A velocidade de uma unidade é medida pela quantidade de dados que pode ler ou escrever. O comando dd é uma ferramenta de linha de comando simples, que pode ser usada para ler e escrever blocos arbitrários de dados em uma unidade e medir a velocidade, na qual a transferência de dados ocorreu. Nesta publicação, usaremos o comando dd para testar a velocidade de leitura e gravação das unidades usb e ssd usando o comando dd.
A velocidade de transferência de dados não depende unicamente da unidade, mas também da interface com a qual ela está conectada. Por exemplo, uma porta usb 2.0 possui um limite de velocidade operacional máximo de 35 Mbytes/s, portanto, mesmo se você fosse conectar uma unidade de pen drive usb 3 de alta velocidade a uma porta usb 2, a velocidade seria limitada ao limite inferior.
Além deste artigo, você também pode ler mais sobre o comando dd em um artigo onde mostramos 5 exemplos de uso do comando dd no Linux.
Método de teste usando comando dd
Monte a unidade e navegue até ela pelo terminal. Em seguida, use o comando dd para primeiro escrever um arquivo usando blocos de tamanho fixo. Em seguida, leia o mesmo arquivo usando o mesmo bloco.
A sintaxe geral do comando dd parece assim:
dd if=local/de/origem of=/local/de/destino bs=tamanho_do_bloco count=número_de_blocos
Ao escrever para a unidade, simplesmente lemos de /dev/zero, que é uma fonte de infinitos bytes inúteis. E quando lido a partir da unidade, lemos o arquivo escrito anteriormente e enviamos para /dev/null. Em todo o processo, a ferramenta acompanha a velocidade com a qual a transferência ocorre e o informa.
SSD
O SSD que estamos usando é um ssd “Samsung Evo 120GB”. É um ssd de nível iniciante com ótimo custo/benefício e também é meu primeiro SSD. É também um dos melhores do mercado.
Neste teste, o ssd está conectado a uma porta sata 2.0.
Velocidade de escrita com o comando dd
Antes dê permissão de escrita para o ssd e depois execute:
dd if=/dev/zero of=./largefile bs=1M count=1024
O tamanho do bloco é realmente bastante grande. Você pode tentar com tamanhos menores como 64k ou até 4k.
Teste de velocidade de leitura com o comando dd no Linux
Agora leia o mesmo arquivo. No entanto, primeiro limpe o cache de memória para garantir que o arquivo seja realmente lido da unidade.
Execute o seguinte comando para limpar o cache de memória:
sudo sh -c “sync && echo 3 > /proc/sys/vm/drop_caches”
Agora leia o arquivo:
dd if=./largefile of=/dev/null bs=4k
O wiki do Arch Linux tem uma página cheia de informações sobre a velocidade de leitura/gravação de vários SSDs de diferentes fornecedores como Intel, Samsung, Sandisk, etc.
Verifique isso na seguinte URL.
https://wiki.archlinux.org/index.php/SSD_Benchmarking
Como medir a velocidade e leitura e escrita no pendrive/USB com o comando dd no Linux
Neste teste, mediremos a velocidade de leitura e gravação das unidades usuais usb/pen. As unidades estão conectadas às usb padrão de 2 portas. O primeiro é um drive Sony usb 4gb e o segundo é um drive de Strontium de 16GB.
Primeiro, conecte a unidade na porta e monte-a, para que seja legível. Em seguida, navegue até o diretório de montagem pela linha de comando.
Sony 4GB – Escrita
Neste teste, o comando dd é usado para gravar 10.000 pedaços de 8 Kbytes cada um em um único arquivo na unidade.
# dd if=/dev/zero of=./largefile bs=8k count=10000
Saída:
10000+0 records in
10000+0 records out
81920000 bytes (82 MB) copied, 11.0626 s, 7.4 MB/s
Portanto, a velocidade de gravação é de cerca de 7,4 Megabyte/s.
Sony 4GB – Leitura
O mesmo arquivo é lido para testar a velocidade de leitura. Execute o seguinte comando para limpar o cache de memória:
sudo sh -c “sync && echo 3 > /proc/sys/vm/drop_caches”
Agora leia o arquivo usando:
dd if=./largefile of=/dev/null bs=8k
Saída:
8000+0 records in
8000+0 records out
65536000 bytes (66 MB) copied, 2.65218 s, 24.7 MB/s
A velocidade de leitura foi em torno de 25 Mbytes/s, o que é mais ou menos o padrão para unidades usb baratas.
E a unidade usb acima foi conectada em uma porta USB 2.0 e alcançou uma velocidade de leitura de 24,7 Mbytes/s, o que não é muito ruim. Mas a velocidade de gravação está muito lenta.
Agora, vamos fazer o mesmo teste com uma unidade Strontium 16GB. Strontium é outra marca muito barata, embora as unidades usb sejam confiáveis.
Strontium 16gb – Velocidade de gravação com o dd no Linux
dd if=/dev/zero of=./largefile bs=64k count=1000
Saídas:
1000+0 records in
1000+0 records out
65536000 bytes (66 MB) copied, 8.3834 s, 7.8 MB/s
Strontium 16gb – Velocidade de leitura com o dd no Linux
sudo sh -c “sync && echo 3 > /proc/sys/vm/drop_caches”
dd if=./largefile of=/dev/null bs=8k
Saídas:
8000+0 records in
8000+0 records out
65536000 bytes (66 MB) copied, 2.90366 s, 22.6 MB/s
A velocidade de leitura é menor do que a unidade da Sony.