Увеличение скорости копирование файлов

CUK77

Professional
Messages
1,193
Reputation
3
Reaction score
396
Points
83
Черт возьми! Как же долго льются эти десять avi'шников с фильмами! Уже достали! И по локалке: только начнешь чего-то скачивать, как удаленный компьютер вырубается, а когда снова появляется в сети – изволь начинать скачивание сначала. Разве это не свинство? И ведь не у меня одного такие проблемы. Не случайно же в инете стали появляться проги, обещающие радикальным образом ускорить и улучшить обычный процесс копирования! Ускорить и улучшить… Эх, согласись, заманчиво звучит.

В чем сила, брат?

Сила - в скорости. Которой нам частенько не хватает, когда нужно скачать что-нибудь большое: те же фильмы в Mpeg4, например. Вроде, и винты быстрые, и винды настроенные - а льются файлы ме-е-едленно.

Программеры говорят, что реально увеличить скорость раз в пять, и все будет просто летать. А в доказательство пишут соответствующие программки, призванные заменить стандартные копирующие функции Windows своими, более скоростными. А заодно подбросить нам, юзерам, полезных и интересных возможностей: докачки файлов в случае прерывания процесса (очень нужная фишка в локальных сетях!), затирания старого файла нулями при переносе (чтобы враги не восстановили!) и прочее, прочее...

Обещают много, но как все обстоит на практике? Давай-ка протестируем несколько наиболее распространенных утилит и посмотрим, на что они действительно способны!

Enlarge your buffer

Все ускорители работают примерно одинаково, и их метод прост до безобразия: это обычное кеширование. Отсюда, кстати, следует вывод, что под Win9x их использование эффективнее, чем под Win2k/XP: в NT-системах и так все нормально работает, в отличие от старых виндов, которым и многочисленные твики не всегда помогают...

Что же касается копирующих программ, то там размер буфера кеша - это самая главная опция, которая может как ускорить, так и существенно замедлить работу. Подбирается это значение экспериментально, исходя из особенностей компа, объема оперативки и самой программы. Например, для описанных BurstCopy и KillCopy у меня оптимальными были значения в 16 Мб, а для SecuRE|Copy – 8 Мб. У тебя все может быть совсем иначе.

Стоит сказать одно: если мало оперативки, то особенно дергаться не стоит: маленький буфер ничего тебе не ускорит, а большой заставит винду дергать своп, от чего скорости, конечно, не прибавится.

Зато ее прибавится от других "твиков": гораздые на выдумки программеры добавляют возможности распараллеливания чтения и записи на разные потоки или повышения приоритета своих прог в винде, от чего копирование зачастую идет быстрее.

BurstCopy v 2.650

OC: WinAll

Размер: 2144 Кб

Лицензия: Shareware

Сайт: www.burstcopy.com

Программа настолько популярная на западе, что за нее даже хотят денег. И поначалу кажется, что есть за что!

BurstCopy встраивается в Проводник, и для ее использования достаточно выбрать "BurstCopy here" в контекстном меню, перетащив файл в нужное место правой кнопкой мыши. Заявляется поддержка работы из командной строки, но нигде - ни в readme, ни в помощи, ни на сайте - не описаны параметры запуска.

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

На этом, в общем-то, и заканчиваются все сервисные возможности BurstCopy: ни тебе докачки (предлагает заменить и не более того), ни очереди, ни хотя бы параллельной работы (пока прога не закончит одну операцию копирования, другую не начнешь - пункты контекстного меню "BurstCopy here" и "BurstMove here" просто-напросто недоступны)...

Что же касается скорости, то, начав с большим энтузиазмом на одном диске, программа катастрофически отстала на закачке по локальной сети. Впрочем, ускорить показатели софтины на добрых два десятка секунд, а то и больше, можно, увеличив ее приоритет в винде регулятором в окне или настройках. Изначально BC настроена, чтобы не отнимать время процессора у других программ (и тогда уровень его загрузки стремится к нулю), но если тебе важнее скорость, а не возможность делать параллельно что-то еще, то смело выкручивай "рычажок", и сразу почувствуешь, как проценты побежали быстрее!

SecuRE|Copy v 2.2.300

OC: WinAll

Размер: 1887 Кб

Лицензия: Freeware

Сайт: www.pinedanet.com

На первый взгляд – очень даже неплохая программа для копирования. Так же, как BurstCopy, встраивается в Explorer, но имеет по сравнению с ней много чисто функциональных преимуществ. Поддерживает "умную докачку" (опция "Security"-"Use GoBack"), когда файл продолжает копироваться не точно с места остановки, а чуть раньше - на случай, если последние байты испорчены. Рабочее окно - самое навороченное. Интерфейсом SecuRE|Copy легко делает всех других участников нашего «забега». Тут тебе и скорость в мегабайтах и мегабитах (удобно для локалки), и точная индикация объемов скачанного, и подсчет времени окончания, и ограничение полосы пропускания (чтобы не грузить собой всю локальную сетку)... Но главное: удобная реализация очередей файлов. Добавляешь файлы и каталоги и спокойно идешь пить чай или что покрепче: пусть себе льются!

Казалось бы - есть все что нужно и даже больше, но функциональные возможности SecuRE|Copy перечеркиваются одним фактом: ужасной производительностью. Посмотри на таблицу - она не только медленнее других программ, но и отстает от стандартного Explorer'а! Тут даже комментировать нечего. Возможно, подобные результаты справедливы лишь для моей машины, а у тебя все будет копироваться со скоростью света, но я в этом сильно сомневаюсь. Visual Basic, на котором написана SecuRE|Copy, однозначно не подходит для серьезных системных программ...

KillCopy v 2.80

OC: WinAll

Размер: 937 Кб

Лицензия: Freeware

Сайт: http://killprog.narod.ru

Маленькая русская программа с суровым названием, заставляющая все остальные софтины нервно курить в сторонке.

Садится в контекстное меню, но может и полностью подменять собой Explorer, чтобы при обычном перетаскивании файла он копировался KillCopy (опция "Make KillCopy as default drag&drop handler"). Интерфейс настраивается с помощью скинов, которых полно на сайте, и отображает общее и оставшееся время копирования, проценты загрузки каждого и всех файлов и скорость в Kbps.

Естественно, поддерживается докачка, причем с кучей дополнительных возможностей. Во-первых, KillCopy может вносить в реестр запись о копировании и, в случае падения винды или вырубания электричества, автоматически его продолжит после перезагрузки. Во-вторых, все незаконченные по любой причине закачки отображаются в окне "Resume manager", где ими можно как угодно манипулировать. И, наконец, в-третьих, есть очень удобная опция - автоматическое продолжение (параметр "If file exist"-"Try resume"), когда KillCopy сверяет содержимое файлов, и если видно, что конечный - это часть исходного, то сразу начинает докачивать, ничего не спрашивая у пользователя.

Настройки скорости, кроме обычного объема буфера, состоят из трех опций - "High-speed copy", "Parallel read/write" и "Speed limit". Первые две можешь включать не раздумывая, а третью - в зависимости от конфигурации твоей локалки.

Между прочим, KillCopy единственная программа, заботящаяся о секретности: установи "Move mode" на "3-pass overwrite", и при переносе софтина будет аж три раза забивать нулями старый файл перед удалением - чтобы никто никогда не восстановил.

Но это все лишь дополнительные фенечки, а что же с главным - со скоростью? Так ведь и тут все просто замечательно! Смотри сам - KillCopy уделывает всех конкурентов и виндовый Explorer, особенно при копировании в пределах одного жесткого диска.

На мой взгляд, у KillCopy лишь два мелких недостатка. Во-первых, довольно примитивная очередь (но ведь у того же BurstCopy ее вообще нет!) - только для копирования в один и тот же каталог. А во-вторых, немного странное поведение при работе: через несколько секунд после начала скачивания прога почему-то начинает серьезно грузить проц, и в это время работа сильно замедляется, что сказывается на конечном результате... Надеюсь, автор это поправит.

И еще не могу не сказать о встраиваемости KillCopy в Far или Total Commander - на это не способна больше ни одна утилита. Кстати, и возможности для консольного использования у KC самые богатые: любители скриптов и bat'ов не останутся обиженными.

Выводы

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

Как мы тестировали

Для тестирования использовался компьютер на базе AthlonXP 1600+ с материнской платой на чипсете VIA KT600 и жесткими дисками Maxtor 6L080J4 в режиме ATA-133. Локальная сеть на 100 Мбит построена на наиболее распространенных карточках от Realtek (чип 8139B).

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

Несмотря на это – помни: получившиеся результаты справедливы лишь для конкретного компьютера, с конкретной системой и настройками! У тебя все может быть совершенно иначе и с точностью до наоборот! Но вряд ли ;-).
 
Top