Новый PPM* - PAQ плагин с новыми возможностями

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

Ответить
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Новый PPM* - PAQ плагин с новыми возможностями

Сообщение alexanderwdark »

PPMPackTC

Плагин PPMPack основан на высокоэффективном алгоритме сжатия PPMd Дмитрия Шкарина (1997), PPMD-j Дмитрия Шкарина (2006), применяемом в архиваторе WinRar для компрессии текста, включает альтернативную реализацию PPM - PPMZ от Charles Bloom и реализацию PPM от Harry Hirvola (HA) а так же высокоэффективные компрессоры PAQ8 и LPAQ8 А.Ратушняка, QUAD и BALZ А.Муравьева.

Следует заметить, что по уровню компрессии архиватор PAQ8 заметно опережает как PPMD, так и 7-zip и WinRar, но скорость работы данного алгоритма крайне низка.

Плагин поддерживает упаковку одного файла в архиве или множества в Tar.PPMP (либо совместимый Tar.PPMD), хранение имени файла до 256 символов в кодировке CP-1251. Формат отличает неограниченный в длине расширяемый заголовок, имеющий текстовый формат, гарантирующий обратную совместимость при дальнейшей доработке (в частности, поддержка иных алгоритмов сжатия).

Так же поддерживает упаковку методом HA HSC, варианте PPM order 4 с арифметическим кодированием (автор алгоритма - Harry Hirvola), применяемым некогда очень популярным архиватором HA.

Поддерживает упаковку множества файлов в режиме Tar.PPMP, позволяя достичь очень высокого уровня компрессии за счет режима непрерывного архива. Отлично подойдет для компрессии текста, документов, электронной литературы и данных произвольного формата.

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

Уровень сжатия зависит от объема использования ОЗУ. Порядок пресказания критичен для данных со сходной структурой (XML, HTML, тексты в одной кодировке на одном языке и др.)


В новой редакции - так же PPMd версии J с еще более высокой степенью компрессии.

Качаем и тестируем

Мои плагины на Wincmd.ru здесь

А здесь еще ряд плагинов
Последний раз редактировалось alexanderwdark Вс дек 28, 2008 15:53, всего редактировалось 5 раз.
egor23
Сообщения: 9
Зарегистрирован: Пт мар 24, 2006 04:35

Сообщение egor23 »

alexanderwdark
PPMPackTC (PPMd + HA) 1.2.6 (релиз)
Если памяти недостаточно падает (молча закрывается TC).
например Total SQX - говорит:
Доступной памяти недостаточно для завершения операции.
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Сообщение alexanderwdark »

egor23 писал(а):alexanderwdark
PPMPackTC (PPMd + HA) 1.2.6 (релиз)
Если памяти недостаточно падает (молча закрывается TC).
например Total SQX - говорит:
Доступной памяти недостаточно для завершения операции.
Этот вопрос пока не продуман (есть исходники - народ можент доработать). Решение простое - паковать с разумным для системы словарем, а потом, по-возможности и с наличием времени все будет доработано более гладко.
egor23
Сообщения: 9
Зарегистрирован: Пт мар 24, 2006 04:35

Сообщение egor23 »

alexanderwdark
Решение простое - паковать с разумным для системы словарем, а потом, по-возможности и с наличием времени все будет доработано более гладко.
Это плагин TC, а не отдельная программа, для которой можно подобрать предельные настройки в конкретной системе. А здесь ещё зависит что делали в TC; чем пользовались - может большие картинки смотрели, через Imagine и не закрыли их...
Этот вопрос пока не продуман (есть исходники - народ можент доработать).
Хотелось бы чтобы автор доработал, а народ пускай ковыряется в исходниках ради чего-то другого.
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Сообщение alexanderwdark »

Хотелось бы чтобы автор доработал, а народ пускай ковыряется в исходниках ради чего-то другого.
Автор доработает, когда дойдет до этого плагина :)
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Re: Новый PPMd плагин с новыми возможностями

Сообщение alexanderwdark »

2008-12-25: Добавлен алгоритм PPMZ II товарища Charles Bloom - реализован режим с произвольным размером блока по выбору (для выбора оптимального соотношения скорость - сжатия). Для справки - наш отечественный PPMD - более эффективная реализация PPM, как по скорости, так и по уровню компрессии.
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Re: Новый PPMd плагин с новыми возможностями

Сообщение alexanderwdark »

2008-12-26: Добавлены алгоритмы LPAQ8 (уровень компрессии текста немного выше, чем у PPMD) и PAQ8 (уровень компрессии текста заметно лучше, чем у PPMD и WinRar, хорошая компрессия данных других типов, но скорость очень медленная)
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Re: Новый PPMd плагин с новыми возможностями

Сообщение alexanderwdark »

2008-12-27: Добавлены алгоритмы QUAD и BALZ А. Муравьева - отличное сжатие при средней скорости, режим максимального сжатия (mem > 4).

Добавлен так же алгоритм BBB (с выбором BWT блока - от 1 до 9 Мб, что намного шире границы для типовых упаковщиков).

В последней сборке исправлена реализация алгоритма PPMZ (который, правда, все равно менее практичен, чем имеющиеся в плагине PPMd и PPMd-j)
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Re: Новый PPMd плагин с новыми возможностями

Сообщение alexanderwdark »

2008-12-28 Добавлены высокоэффективные алгоритмы компрессии LZMA И.Павлова и ABC профессора Абеля.
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Re: Новый PPMd плагин с новыми возможностями

Сообщение alexanderwdark »

2008-12-29 Добавлены новый PAQ9A алгоритм - сжатие лучше чем у PPMD и LZMA -пакеров, в общем случае обгоняет WinRar, скорость, естественно, низкая, как у всего семейства PAQ*, но за счет LZP препроцессора и исключения индивидуальных фильтров значительно выше. Компрессия у PAQ8P за счет фильтров при этом всегда будет повыше.

Так же добавлен алгоритм Freehook (версии 0.3)
Jay
Сообщения: 1
Зарегистрирован: Пн май 21, 2007 04:21

Сообщение Jay »

Автору:
Плагин не освобождает память после операций упаковки-распаковки.

Total Commander 7.04a.
PPMPackTC 2009-01-01.
Алгоритм LPAQ8, Mem value 4.

Занято 280 МБ памяти.
Берем любой файл, запаковываем, получаем 337 МБ используемой оперативки.
Распаковываем получившийся архив, памяти занято уже 397 МБ.
Распаковываем снова, съедается 449 МБ и так до тех пор пока вся память не кончится.
Когда свободной памяти нет и свопиться уже некуда Total вылетает без показа какой-либо ошибки.

Память высвобождается только при перезапуске Totala, команда cm_unloadplugins не помогает.
С PAQ9A, Mem value 4, тоже самое.
Аватара пользователя
alexanderwdark
Сообщения: 304
Зарегистрирован: Пн апр 14, 2008 21:03
Откуда: Россия
Контактная информация:

Сообщение alexanderwdark »

Jay писал(а):Автору:
Плагин не освобождает память после операций упаковки-распаковки.

Total Commander 7.04a.
PPMPackTC 2009-01-01.
Алгоритм LPAQ8, Mem value 4.

Занято 280 МБ памяти.
Берем любой файл, запаковываем, получаем 337 МБ используемой оперативки.
Распаковываем получившийся архив, памяти занято уже 397 МБ.
Распаковываем снова, съедается 449 МБ и так до тех пор пока вся память не кончится.
Когда свободной памяти нет и свопиться уже некуда Total вылетает без показа какой-либо ошибки.

Память высвобождается только при перезапуске Totala, команда cm_unloadplugins не помогает.
С PAQ9A, Mem value 4, тоже самое.
Да, это проблема пакера PAQ - код очень массивный, в ряде референсных исходников PAQ* освобождения памяти как такового вообще не имееется :)

В сборке плагина от 14.01.2009 немного доработаны LPAQ8 / PAQ9A в плане особождения памяти.
Ответить