dd if=/dev/zero of=/mnt/data/testfile bs=1

dd if=/dev/zero of=/mnt/data/testfile bs=1

我正在測試 EBS 卷,試圖找出如何達到所宣傳的速度。亞馬遜表示 io1 卷可以在 16K 速度下實現 1000MBps 或 64,000 IOPS。我沒有看到任何高於 600MBps 的速度。這是一個 m5n.2xlarge 實例(帶 Nitro 卡),卷配置為 1280GB 和 64000 IOPS。

當我用 寫零時ddiostat顯示一致的 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

我嘗試在與parted最佳對齊的分割區上使用XFS檔案系統。我還嘗試直接 dd 寫入區塊設備 nvme1n1。無論哪種方式,效能都大致相同。

對於此測試,我使用 1MB 區塊大小使用 dd 進行寫入:

# dd if=/dev/zero of=/mnt/data/testfile bs=1M

我不明白的是,為什麼如果我寫入 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

答案1

dd if=/dev/zero of=/mnt/data/testfile bs=1

自從我使用 Linux 以來已經有一段時間了,但我 99% 確定 bs 參數是以位元組為單位的。所以你我相信你發送的是 1byte 區塊大小,而不是 1MB

試試這個:

dd if=/dev/zero of=/mnt/data/testfile bs=1M

相關內容