1. Уважаемые гости и пользователи форума.
    Администрация настоятельно рекомендует не регистрировать несколько аккаунтов для одного пользователя. При выявлении наличия мультиаккаунтов будут заблокированы все учетные записи данного пользователя.
    Аккаунты, зарегистрированные на временную почту будут также заблокированы.

7ZIP & DLZ VERSUS LOLZ

Тема в разделе "Алгоритмы сжатия", создана пользователем Hunter, 1 апр 2018.

  1. Ветеран

    Регистрация:
    25 апр 2014
    Сообщения:
    54
    Симпатии:
    27
    Пол:
    Мужской
    Набор данных для теста был намеренно подобран.
    Сжатие файлов, которые плохо жмутся
    Сжатие русской озвучки игры Dead Space 2 - в ней есть как звуки так и видеофайлы

    оригинал = 1.25 ГБ (1,352,201,285 байт)
    1.02 ГБ (1,104,674,178 байт) - 7zip(lzma2:256mb)
    1,03 ГБ (1 110 065 509 байт) -SREP+LZMA2
    ================================
    1.03 ГБ (1,108,783,216 байт) -DLZ
    1.01 ГБ (1,095,314,850 байт) -LOLZ

    В ЭТОМ ТЕСТЕ СЕБЯ ПРОЯВИЛ LOLZ

    СКОРОСТЬ РАСПАКОВКИ БЫСТРЕЕ 7ZIP

    ================================

    1,03 ГБ (1 108 783 216 байт) - dlz
    1,03 ГБ (1 112 628 819 байт) - srep:mem256mb:l128+dlz
    ВЫВОД - СО СРЕПОМ СЖАТИЕ ХУЖЕ
    ========================
    1.01 ГБ (1,095,314,850 байт) - lolz
    1.02 ГБ (1,096,475,024 байт) - srep+lolz
    ВЫВОД - СО СРЕПОМ СЖАТИЕ ХУЖЕ


    Мои аплодисменты автору LOLZ - Успехов в любых начинаниях!!!!!!!!!! УРРРАА ТОВАРИЩИ-РЕПАКЕРЫ!!!!!!!!!!!
     

    Вложения:

  2. Developer Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    209
    Симпатии:
    127
    >srep:mem256mb:l128

    по умолчанию l512, он даёт наилучшее сжатие в паре с lzma. при меньшем значении srep отбирает матчи у lzma и сжатие обычно ухудшается
     
    agent555 и sergey3695 нравится это.
  3. Ветеран

    Регистрация:
    25 апр 2014
    Сообщения:
    54
    Симпатии:
    27
    Пол:
    Мужской
    Булат - спасибо за некую ясность - но lolz использует lz match finder( среп как мне известно на такой же базе) - что не даёт возможность развернуться srep-у . Fitgirl сочетает cls-srep*.exe & cls-lolz*.exe - я думаю это полезно на большом объёме данных???
     
  4. Ветеран

    Регистрация:
    3 фев 2014
    Сообщения:
    187
    Симпатии:
    38
    увеличивай параметр l
    я обычно выставляю l2048, в большинстве случаев сжатию lolz это не вредит, зато повторы убивает на дальних дистанциях (что lolz не может)
     
  5. Ветеран Модератор

    Регистрация:
    15 июн 2011
    Сообщения:
    899
    Симпатии:
    500
    Просто шикарный набор данных для теста. Че уж там взяли бы сразу сжатые данные какие-нибудь и на них тестили
     
  6. Developer Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    209
    Симпатии:
    127
    во-первых, и lzma и razor - все используют lz. во-вторых, srep идёт ПЕРЕД lolz/lzma/..., т.е. он находит эти матчи, кодирует их и не даёт lz-пакерам закодировать их более эффективно. ну и дальше есть два соображения - первое, что они в отличие от srep имеют ограниченный "радиус действия", то бишь словарь, и там где есть только далёкий матч - они вовсе ничего не найдут. второе - что даже ближние матчи, если они довольно большие, есть смысл убирать srep'ом, поскольку это сокращает дистанции для всех матчей и тем самым чуть-чуть улучшает сжатие

    вообще я проводил тесты с lzma - при мин. размере матча в диапазоне от 500 до 700 байт общий результат менялся очень незначительно и скорее случайно, так что (по крайней мере в моих тестах) разницы какой назначить :l из этого диапазона - вообще нет. если уж улучшать сжатие - то :m3:c64:l512 даёт наилучшие результаты с lzma afair. в новой версии srep это будет метод :m3z, а пока можете так попробовать :)
     
    Последнее редактирование: 2 апр 2018
    agent555, sergey3695 и Hunter нравится это.
  7. Ветеран

    Регистрация:
    3 фев 2014
    Сообщения:
    187
    Симпатии:
    38
    воу воу
    я этот параметр вообще не трогал никогда
    по дефолту он какой?
    в документации: -c: size of hash chunk, by default as small as required to find all these LZ matches
    'as small as required' - это сколько?))
     
  8. Developer Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    209
    Симпатии:
    127
    а это секретное оружие. я о том что его стоит трогать узнал только от fg, а до этого даже не задумывался. а так она пожаловалась что он в 3.93 сломан, ну я и покрутил для интереса. и выяснил что самое лучшее сжатие - в вышеупомянутом конфиге

    смысл такой, что данные разбиваются на куски по 64 байта, но поскольку миним. размер матча 512 байт (т.е. l512), то нужно чтобы 8 таких кусков подряд совпали. по дефолту же для m3 - c512:l512, т.е. берутся только матчи, начинающиеся с кратной 512 позиции. понятно, что немножечко матчей мы по сравнению с c64:l512 при этом таки теряем

    впрочем, разница там крошечная
     
    agent555 и toolame нравится это.
  9. Ветеран

    Регистрация:
    3 фев 2014
    Сообщения:
    187
    Симпатии:
    38
    т.е. т.е. то есть
    :l512:c64
    тоже самое что и
    :l64
    ? %)
     
  10. Ветеран Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    1.166
    Симпатии:
    750
    toolame, насколько я понял, можно поставить c8 и забыть про этот параметр.
     
    Последнее редактирование: 4 апр 2018
  11. Developer Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    209
    Симпатии:
    127
    :l задаёт минимальный размер матча
    :c задаёт куски, на которые разбиваются данные для поиска таких матчей

    скажем при :l8:c8 матчи могут быть только с целым количеством 8-байтовых слов, начинающихся на позициях, кратных 8. с :l8:c4 - с минимум двумя 4-байтными словами, начинающимися на позициях, кратных 4. с l8:c2 - минимум 4 двух-байтных слова, начинающиеся на чётных позициях

    меньше :c64 ставить не рекомендую. выигрыша в жатии уже не будет, а потребление памяти вырастет
     
    agent555, toolame и sergey3695 нравится это.
  12. Ветеран

    Регистрация:
    3 фев 2014
    Сообщения:
    187
    Симпатии:
    38
    кажется понял теперь...да я тугодум)
    по умолчанию :c равен: L/2 rounded down to the power of 2, да?
     
  13. Developer Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    209
    Симпатии:
    127
    по умолчанию c=l для m3, c=l/2 для m5. и кажись округляется вниз поскольку с должен быть степенью 2. в общем, srep печатает - смотри сам
     

Поделиться этой страницей