предархиватор + тесты
реклама
Файл в формате ExelXP с результатами тестирования лежит тут.
Уже около недели(не каждый день, естесственно) по предложению xKVtor'а я пишу так называемый предархиватор, с принципом действия которого можно ознакомится в ветке конференции
Так вот я решил провести эксперимент, который установит насколько необходима данная программа.
В эксперименте участвовали:
WinRar 3.10
7z 3.11
PreArh
Тестирование проводилось на примере папки, входящей в состав Quake3 arena. Данная папка была скопирована в два подкаталога так, что в результате получилось 3 одинаковых папки в разных подкаталогах. Вот эти 3 одинаковых папки и архивировались (естественно в один архив).
Тестирование проводилось в нескольких режимах:
1. WinRar, максимальное сжатие, размер словаря 64кб
2. WinRar, максимальное сжатие, размер словаря 4096кб
3. PreArh + WinRar, максимальное сжатие, размер словаря 64кб
4. PreArh + WinRar, максимальное сжатие, размер словаря 4096кб
5. 7z, Ultra compression, Solid-архивирование выключено
6. 7z, Ultra compression, Solid-архивирование включено
Тестирование PreArh+7z не проводилось, т.к. 7z не имеет опции "архивировать только файлы, имеющие атрибут архивный" (по крайней мере я не знаю как ее включить), да и смысла в этом тесте мало (понятно из результатов тестов).
И так, как видно из результатов тестирования WinRar что со словарем 64кб, что со словарем 4096 кб - никуда не годиться.
При применении PredArh перед использованием WinRar ситуация кардинально изменяется - размер архива уменьшается ~ в 3 раза (в принципе так и должно быть ;) , файлы то одинаковые)
Хочу заметить, что в случае ипользования только WinRar со словарем 64кб и 4096кб размеры архивов отличаются очень незначительно (~0.7%), в случе использования предархиватора размеры архивов различаются еще меньше (~0.3%).
Теперь перейдем к 7z. При архивировании в Ultra compression и отключенной опции solid-архивирования. Размер полученного архива примерно соответствовал размерам архивов, полученных с помощью WinRar(БЕЗ предархиватора) с использованием словарей как 64кб, так и 4096кб.
А теперь гвоздь программы - 7z , Ultra Compression , solid-архивирование включено. С данными настройками получается архив практически такого-же размера как и при использовании предархиватора+WinRar(макс. сжатие+64кб словарь).
Единственное объяснение этому - большой размер словаря (я дкмаю не менее 32мб) используемого в 7z.
И не могу не отметить, что самый маленький размер архива получился при использовании предархивато+WinRar(макс. сжатие, 4096кб словарь) - на ~0.3% меньше, чем при использовании 7z+solid+Ultra
И еще одно существенное замечание - это скорость архивирования.
Предархиватор существенно ускоряет архивирование.
Специально не замерял, но на глаз могу сказать, что самый медленный был 7z, далее раза в 1.5 быстрее WinRar, и еще быстрее (раза в 2 - 2.5) Предархиватор+WinRar.
Выводы:
Данный предархиватор может понадобиться в нескольких случаях:
1 Если ВЫ фанат WinRar и не собираетесь от него отказываться, то предархиватор хорошо послужит вам при архивировании большого числа одинаковых файлов (например несколько дистрибутивов windows)
2 Если для ВАС критична скорость архивирования, предархиватор может существенно ее поднять, опять же если архивируется много одинаковых файлов (проичем скорость архивирования возрастет и при использовании WinRar, и при использовании 7z)
И последний вывод:
Если архивируется папка в которой нет (или очень мало и незначительного размера) одинаковых файлов, то предархиватор просто будет либо бесполезен, либо даже в некоторых случаях вреден для размера финального архива.
реклама
Лента материалов
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!
Комментарии, содержащие оскорбления, нецензурные выражения (в т.ч. замаскированный мат), экстремистские высказывания, рекламу и спам, удаляются независимо от содержимого, а к их авторам могут применяться меры вплоть до запрета написания комментариев и, в случае написания комментария через социальные сети, жалобы в администрацию данной сети.
Сейчас обсуждают