Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / команда "dd" выполняется в два раза медленнее, чем "cp" / 9 сообщений из 9, страница 1 из 1
17.12.2009, 16:48
    #36372076
receiver
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
команда "dd" выполняется в два раза медленнее, чем "cp"
Объясните, плз, почему команда "dd" выполняется в два раза медленнее, чем "cp"?

Копирую 2Gb файл

$ cp test newtest

$ dd if=test of=newtest

iostat в первом случае показывает скорость записи ~ 10Mb/sec и 25Mb/sec во втором.

Почему?
...
Рейтинг: 0 / 0
17.12.2009, 17:03
    #36372138
Журавлев Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
команда "dd" выполняется в два раза медленнее, чем "cp"
receiver,

потому что по одному байту копируется

попробуйте указать размер блока
dd bs=64k
...
Рейтинг: 0 / 0
17.12.2009, 17:16
    #36372194
Мутаген
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
команда "dd" выполняется в два раза медленнее, чем "cp"
копируется по одному блоку (512 байт)
...
Рейтинг: 0 / 0
17.12.2009, 17:44
    #36372294
команда "dd" выполняется в два раза медленнее, чем "cp"
receiver"dd" в два раза медленнее, чем "cp"?

$ cp test newtest
$ dd if=test of=newtest

в первом случае показывает скорость записи ~ 10Mb/sec и 25Mb/sec во втором.


как ты определил, что в два раза медленнее? я вижу из твоей цитаты, что dd в 2,5 раза быстрее чем cp.
...
Рейтинг: 0 / 0
17.12.2009, 18:05
    #36372353
receiver
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
команда "dd" выполняется в два раза медленнее, чем "cp"
календареведreceiver"dd" в два раза медленнее, чем "cp"?

$ cp test newtest
$ dd if=test of=newtest

в первом случае показывает скорость записи ~ 10Mb/sec и 25Mb/sec во втором.


как ты определил, что в два раза медленнее? я вижу из твоей цитаты, что dd в 2,5 раза быстрее чем cp.

Запускал dd и cp на разных серверах, на внутренних дисках и на стойках сбрасывал значения
iostat -xM 5 100 > iostat<N>.txt
в файл. Естественно, математической точности нет. Разница примерно плавает от 1,5 до 2,5 раз.
...
Рейтинг: 0 / 0
17.12.2009, 18:13
    #36372370
команда "dd" выполняется в два раза медленнее, чем "cp"
Ещё раз (уберём лишние буквы из цитаты)

авторcp ...
dd ...
... в первом ... ~ 10Mb/sec и 25Mb/sec во втором.
25 / 10 = 2.5

Чем больше скорость, тем быстрее. У dd скорость в 2,5 раза больше чем у cp. Как ты определил, что dd медленнее?
...
Рейтинг: 0 / 0
18.12.2009, 12:25
    #36373498
receiver
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
команда "dd" выполняется в два раза медленнее, чем "cp"
календареведЕщё раз (уберём лишние буквы из цитаты)

авторcp ...
dd ...
... в первом ... ~ 10Mb/sec и 25Mb/sec во втором.
25 / 10 = 2.5

Чем больше скорость, тем быстрее. У dd скорость в 2,5 раза больше чем у cp. Как ты определил, что dd медленнее?

Писал под дулом автомата. Ошибся. Рука дрогнула.

Правда, это не помешало другим авторам сразу понять, что тормозит именно dd, а не cp! : )
...
Рейтинг: 0 / 0
18.12.2009, 15:51
    #36374166
--null--
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
команда "dd" выполняется в два раза медленнее, чем "cp"
receiver, а Вы strace посмотрите оба примера. Будет видно, что dd действительно по дефолту юзает 512 байт на read, а cp берёт бОльший буфер и делает меньше циклов чтения-записи.
...
Рейтинг: 0 / 0
21.12.2009, 22:18
    #36378604
receiver
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
команда "dd" выполняется в два раза медленнее, чем "cp"
Да, действительно, при уменьшении размера буфера до 32, а затем и до 8 байт я получил
время копирования ~ 30 минут.
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / команда "dd" выполняется в два раза медленнее, чем "cp" / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]