Обнулить большое блочное устройство с распараллеленным дд

У нас есть шестьдесят терабайтное блочное устройство, которое мы хотим обнулить с помощью dd. Можно ли распараллелить эту операцию, чтобы уменьшить количество времени, которое требуется?

Я попытался выполнить следующую команду, но это не совсем то, что я ищу:

seq 1 5 | parallel dd if=/dev/zero of=/dev/mapper/mydevice{} bs=10M count=10

3 ответа

Решение
seq 0 600000 | parallel dd if=/dev/zero of=/dev/mapper/my60device bs=10M count=10 seek={}0

Вы уже используете if, of, bs, and count поэтому я предполагаю, что вы знаете, что они делают.

seek стремится n блоки в выходной файл, прежде чем делать dd,

Вы не пишете, как устройство на 60 ТБ физически расположено на шпинделях. Это может иметь огромное влияние. Так что это может быть быстрее:

seq 0 60000 | parallel --shuf dd if=/dev/zero of=/dev/mapper/my60device bs=10M count=100 seek={}00

Он записывает блоки объемом 1 ГБ и тасует выполнение, что может ускоряться или замедляться в зависимости от физической разметки.

Или вы можете попробовать мой домашний инструмент для параллельной записи данных pdd. Он хорошо работает на дисках NVMe.

Если базовый драйвер устройства не поддерживает планирование двух операций ввода-вывода одновременно через некоторый причудливый ioctl В общем, вы не можете выдавать явно параллельные операции ввода-вывода на устройство.

dd в любом случае это неправильный инструмент, так как он работает путем последовательной записи данных в файл или блочное устройство - лучшее, что вы можете сделать, - это попросить его написать большой размер блока, который позволяет операционной системе лучше оптимизировать последовательный доступ, что улучшает скорость таких вещей, как запись на ленту.

Спиннинг два ddна одном блочном устройстве не изменит тот факт, что большинство устройств ввода-вывода, особенно вещи, которые выглядят как дисковые накопители, могут действительно выполнять только одну вещь или небольшую очередь за раз - и любую оптимизацию (то есть используя NCQ) делается на уровне драйвера устройства.

Другие вопросы по тегам