Re: dd
> > cp -a - очень приятная фри-юникс-специфичная штука, но она крайне редко
> > оказывается лучше, чем rsync -a. И в половине случаев при этом на самом
> > деле нужно еще более гну-читай-линукс-специфичное cp -al. Это к вопросу о
> > нижепроцитированном sendfile(2), которая в этом последнем случае
> > немедленно начинает проигрывать cp в разы по скорости и квадратично по
> > месту на диске.
>
> Вопрос же не в том cp или rsync, а в том open/write или специальным ядерным
> вызовом. Понятно, что чем изощреннее становятся оба планировщика, чем
> сложнее дисковые драйверы и сами диски, тем больше будет разрыв в
> производительности между двумя подходами.
Видишь ли, cp -al - это не open/write и не sendfile(2). Это link(2).
> Ну и потом linux не добился бы никакого успеха без "Stable API Nonsense", и
> широкого прорастания этого Non Stable API в userspace. Его козырем всегда
> был и будет +1% к производительности. А он и есть IMHO за счет Non Stable
> API.
Я же не говорю, что линукс-специфичное решение _всегда_ хуже. Там, где тебе
действительно нужен +1% - не вопрос, оптимизируй.
Когда у тебя прорва файлов и ты точно знаешь, что тебе их надо скопировать из
одной директории в другую не глядя, надо сделать это один раз и на линуксе, cp
-a в норме будет быстрее, чем rsync -a, не вопрос. Потому что не будет читать
даже целевое дерево, не говоря уже о файлах (интересно, у rsync есть
противоестественный интеллект на тему "если копирование локальное, не считать
контрольные суммы и дельты, а гнать файл не глядя"? и если он есть, то хорошо
ли это для копирования на флешки?)
> > вообще. Потому что нигде больше не применяемый и оттого не
> > стандартизованный sendfile(2) вдруг взял и разучился копировать между
> > файлами.
>
> Fall back to read/write все делают.
Если нет жестких требований к производительности, то дешевле сразу написать
read/write, чем писать sendfile и fallback на тот же самый read/write. А если
есть, то какой нафиг fallback?
Нет, я понимаю, есть узкий класс задач, где это имеет смысл.
--
Unix-like -- для кинестетиков, Emacs -- для аудиалов, Mac -- для визуалов,
Windows -- для чайников
-- RockMover in <RM279891167063140rmover@golovolomka.net>
Reply to:
- Follow-Ups:
- Re: dd
- From: Иван Лох <loh@1917.com>
- Re: dd
- From: Anton Kovalenko <anton@sw4me.com>
- Re: dd
- From: Andrey Rahmatullin <wrar@wrar.name>
- Re: dd
- From: Anton Kovalenko <anton@sw4me.com>
- rsync
- From: Ivan Shmakov <ivan@gray.siamics.net>
- References:
- Re: dd
- From: Artem Chuprina <ran@ran.pp.ru>
- Re: dd
- From: Иван Лох <loh@1917.com>