Арифметика потоковых архиваторов.
Jan. 12th, 2008 04:02 amВторая часть: https://dememax.dreamwidth.org/163615.html
К сожалению, не для всех интуитивно понятно, что потоковые архиваторы не такие уж и крутые в плане сжатия, что можно сжимать ещё лучше, что есть ещё "место подвигу".
Недавно был в гостях у
itman, где один из гостей был удивлён этой мыслью (не знаю, насколько серьёзно).
А доказать сей факт очень просто в комнатных условиях подручными средствами.
И так, нам понадобится:
Возьмём файл А. Архивируем его.
Теперь из исходного файла делаем второй, который образует последовательность А-А, и архивируем его.
По размерам архивированных файлов А и А-А вы легко сделаете вывод, что архиватор не увидел в силу ограниченности своего словаря, что содержимое файла А встречается в потоке А-А два раза.
Мой пример на моём компьютере в цифрах:
Обратные ссылки: http://v-shabanoff.livejournal.com/13612.html
Дайджест всего блога '11
К сожалению, не для всех интуитивно понятно, что потоковые архиваторы не такие уж и крутые в плане сжатия, что можно сжимать ещё лучше, что есть ещё "место подвигу".
Недавно был в гостях у
А доказать сей факт очень просто в комнатных условиях подручными средствами.
И так, нам понадобится:
- ваш любимый архиватор
- файл, который после сжатия вашим архиватором > 3Mb
- любой метод, который позволяет объединять файлы в любой последовательности, записывая результат в отдельный файл
- любой метод, который позволяет просматривать размеры файлов
Возьмём файл А. Архивируем его.
Теперь из исходного файла делаем второй, который образует последовательность А-А, и архивируем его.
По размерам архивированных файлов А и А-А вы легко сделаете вывод, что архиватор не увидел в силу ограниченности своего словаря, что содержимое файла А встречается в потоке А-А два раза.
Мой пример на моём компьютере в цифрах:
| файл | исходный размер, байт | bzip2 -9 | gzip -9 | rar a -m5 -md4096 |
|---|---|---|---|---|
| А | 8677260 (x2=17354520) | 3535871 (x2=7071742) | 3639236 (x2=7278472) | 3034022 (x2=6068044) |
| А-А | 17354520 | 7098514 | 7279949 | 6003159 |
Обратные ссылки: http://v-shabanoff.livejournal.com/13612.html
Дайджест всего блога '11
no subject
Date: 2008-01-12 12:44 am (UTC)два байта на следуюие 16636 слов. Три байта на все остальное. Несложно догадаться, что 99.9% слов хватит менее двух байт, треть или четверть слов будет кодироваться одним байтом. Сколько-то там уйдет на список уникальных слов (и разделителей).
no subject
Date: 2008-01-13 08:22 pm (UTC)Вообще, "интуитивно понятно" - для обывателя и профессионала иногда настолько разные вещи, что мама не горюй.
no subject
Date: 2008-01-13 08:31 pm (UTC)1) Сложность реализациии
2) Совместимость: напр, там, где использовались потоковые архиваторы не получится использовать архиватор, которые составляется полный словарь
3) В простых случаях сложный алгоритм не дает никакого выигрыша. Есть приложения, где 90% случаев простых. В результате, сложность реализации не оправдывает копеечного выигрыша.
Добавлю...
Date: 2008-01-13 09:15 pm (UTC)Если смотреть с твоего места, то тот человек сидел по правую руку в самом конце стала, практически на углу, рядом с твоей мамой.
Re: Добавлю...
Date: 2008-01-13 09:17 pm (UTC)5) Через 15 лет новое и продвинутое, внедренное в производство, устаревает и появляется что-то еще более новое и еще более продвинутое :-)
no subject
Date: 2008-01-12 09:10 am (UTC)"все одинаково ПЛОХО сжали"
Date: 2008-01-13 08:23 pm (UTC)no subject
Date: 2008-01-30 08:57 pm (UTC)-ну, етить вашу мать, можно подумать, у меня есть выбор.