Estou testando os volumes do EBS, tentando descobrir como atingir a velocidade anunciada. A Amazon diz que os volumes io1 podem fazer 1.000 MBps ou 64.000 IOPS a 16K. Não estou vendo nada superior a 600 MBps. Esta é uma instância m5n.2xlarge (com placa Nitro) com volume provisionado para 1280GB e 64000 IOPS.
Quando escrevo zeros com dd
, iostat
mostra uma utilização consistente de 100%.
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
nvme1n1 0.00 0.00 0.00 2284.00 0.00 571.00 512.00 15.36 7.19 0.00 7.19 0.44 100.00
Tentei usar o sistema de arquivos XFS em uma partição alinhada de maneira ideal com o parted. Também tentei dd escrever diretamente no dispositivo de bloco nvme1n1. O desempenho é praticamente o mesmo de qualquer maneira.
Para este teste, estou escrevendo com dd usando tamanho de bloco de 1 MB:
# dd if=/dev/zero of=/mnt/data/testfile bs=1M
O que não entendo é por que obtenho quase o mesmo resultado se escrever blocos de 4K:
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
nvme1n1 0.00 0.00 0.00 2284.00 0.00 571.00 512.00 15.02 7.02 0.00 7.02 0.44 100.00
Responder1
dd if=/dev/zero de=/mnt/data/testfile bs=1
Já faz um tempo que não uso o Linux, mas tenho 99% de certeza de que o argumento bs está em bytes. Acredito que você esteja enviando tamanho de bloco de 1 byte, em vez de 1 MB
Em vez disso, tente isto: