A velocidade de gravação do disco do Linux varia com o comando dd

0

Por que há tanta diferença de gravação de disco ao verificar com o comando dd without bsewith bs

dd se = / dev / zero de = / tmp / test.log count = 100000000

100000000+0 records in
100000000+0 records out
51200000000 bytes (51 GB) copied, 289.564 s, 177 MB/s

dd se = / dev / zero de = / tmp / test1.log bs = contagem de 1G = 50 oflag = dsync

50+0 records in
50+0 records out
53687091200 bytes (54 GB) copied, 150.427 s, 357 MB/s

dd se = / dev / zero de = / tmp / test2.log count = 100000000

100000000+0 records in
100000000+0 records out
51200000000 bytes (51 GB) copied, 288.614 s, 177 MB/s

dd se = / dev / zero de = / tmp / test3.log bs = contagem de 1G = 50 oflag = direto

50+0 records in
50+0 records out
53687091200 bytes (54 GB) copied, 109.774 s, 489 MB/s

Eu olhei para fora, mas não consegui um exemplo concreto, no entanto, há um bom artigo aqui que tem poucas ressalvas.

Karn Kumar
fonte
2
O que é o sistema de arquivos em / tmp? Está quase cheio / vazio? Disco rígido giratório, flash USB, SSD? Você limpou o cache do disco antes de cada teste? Absolutamente nenhum outro programa poderia estar lendo ou gravando na mesma unidade ou em qualquer unidade?
Xen2050 21/01
@ Xen2050, desculpe, eu estava ausente, Seu sistema de arquivos alocado baseado em disco tem quase 1 TB de espaço, dos quais 700 GB são gratuitos.
Karn Kumar

Respostas:

3

Sem o bsparâmetro dd, o tamanho do bloco padrão do dispositivo será usado, frequentemente 512 bytes. Isso significa que

  • para cada 512 bytes de carga útil, você incorre na sobrecarga de uma solicitação.
  • Se o tamanho de bloco de 512 não for o tamanho ideal para o seu dispositivo (por exemplo, setores 4K com emulação 512 ou SSDs), você dirige os dispositivos para longe do ponto de trabalho ideal.

Dependendo do seu hardware, pode ser possível obter números ainda melhores com um menor, bspois ele cabe no cache do dispositivo. Por exemplo, para um controlador RAID com cache de 1 GB, convém tentar um tamanho de bloco de 10 MB.

Eugen Rieck
fonte
É uma resposta muito boa e um histórico substancial sobre o problema real.
Karn Kumar