dd выходит медленнее, чем запись в файл на этом диске (с файловой системой fat32):
time dd if=/dev/zero of=/dev/sdg bs=1M count=1024 conv=fdatasync
...
1073741824 байт (1,1 GB, 1,0 GiB) скопирован, 79,2353 s, 13,6 MB/s
real 1m19,237s
user 0m0,005s
sys 0m1,478s
И аналогично, после создания фс, на том же диске:
time dd if=/dev/zero of=/media/dlinyj/TEST_FLASH/test bs=1M count=1024 conv=fdatasync && sync
...
1073741824 байт (1,1 GB, 1,0 GiB) скопирован, 71,0481 s, 15,1 MB/s
real 1m11,050s
user 0m0,004s
sys 0m1,125s
Скорость на почти 10 секунд быстрее! Откуда такая мистика? Даже если sync делать, всё равно в файловую систему быстрее, чем в raw писать, но не может же такого быть.
Выборка маленькая чтоб такие выводы делать. По крайней мере 5 тот и 5 этот, результат усреднить и сравнить. А вообще там что угодно может быть, кеши тоже покажи до и после. И кстати дев-зиро может тебя обмануть когда не ожидаешь. Если там под капотом например сжатие какое и тп.
https://unix.stackexchange.com/questions/110266/why-is-dd-using-direct-slower-writing-to-disk-than-to-a-file
всё просто └─[$]› time sleep 2 && sleep 3 real 0m2.004s user 0m0.001s sys 0m0.003s ┌─[e-yes @ speedy]─[~]─[11:22:19] └─[$]› time $(sleep 2 && sleep 3) real 0m5.008s user 0m0.003s sys 0m0.005s
Да, этот момент я тоже понял. Но там синяк не шибко роляет. Но, спасибо за замечание
Sparse files. И предполагается, что работать должно на уровне VFS. Я вот не совсем чтобы в теме, пусть гуру комментируют
Обсуждают сегодня