Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » FreeArc: бесплатный open-source архиватор - Часть 3

Модерирует : gyra, Maz

Widok (23-11-2010 11:37): Лимит страниц. Продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

FreeArc
бесплатный open-source архиватор для Windows и Linux,
сочетающий высокую степень сжатия и большой набор возможностей


Официальный сайт | Скриншоты | Лента новостей
Документация на консольную версию | Документация на GUI версию
Сообщество пользователей FreeArc | Вики | Трекер (рассылка по ошибкам)
Проект на SourceForge.net | SVN-репозиторий | Поддержка InnoSetup
Обсуждение на encode.ru (англоязычное)

Скачать последний релиз - FreeArc 0.666 от 20 мая 2010 г. Что нового: ускорение работы в 1.5-2 раза благодаря новой технологии многопоточного сжатия, распаковка архивов многих форматов используя технологии 7-zip, запуск файлов из архива, исправлены все проблемы интеграции с Explorer (подробнее)
 
Текущая альфа версия: 0.67 - загрузка | список исправлений | блог

FAQ по FreeArc

Подробное описание используемых алгоритмов
Почему он сжимает лучше и быстрее, чем 7-zip/rar...
Результаты тестов, подтверждающие его крутизну... | И немного о будущем...
Почему для использования 2+ гб памяти желательно установить 64-битную версию Windows
Планы дальнейшего развития
Что подразумевается под "интеграцией с Explorer"
Старая FreeArc wiki (включая описание формата архива)
Логотип - объявляется конкурс на иконки для FreeArc

Сторонние оболочки для работы с FreeArc:
  • wArc - простая и понятная программа управления архивами (требует .NET Framework 2.0)
  • PeaZip - менеджер архивов с поддержкой большого количества форматов, для Windows и Linux
     

    Родственные темы:
  • Inno Setup плюс внешние упаковщики - использование архивов FreeArc в инсталяторах
  • Пережатиe/Pекомпрессия/Oптимизация файлов для лучшего сжатия - "а как сжать ещё лучше?"
  • FreeArc и Unix - для альтернативно одарённых
     
    Другие архиваторы:
  • WinRAR
  • 7-zip

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 19:15 07-09-2009 | Исправлено: Bulat_Ziganshin, 18:34 26-07-2010
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    srep 0.8:
     
        * better compression due to improved hashing and compressed format
        * faster compression on files <1gb
        * MD5 integrity checking on decompressed data
        * first 8 bytes of compressed file contains SREP signature, helping programs like unix magic
        * exit code == 0 on success
     
    http://freearc.org/download/testing/srep.exe
    http://freearc.org/download/testing/srep64.exe
    http://svn.freearc.org/freearc/trunk/Compression/REP/srep.cpp
     
    Добавлено:
    можно сказать, что разработка SREP закончена. что теперь я хотел бы увидеть:
    1. сравнение сжатия srep+rep+lzma vs srep+lzma vs rep+lzma
    2. скорость распаковки (с диска на диск) для действительно больших файлов (скажем, 18 гб при 1-2 гб ОЗУ)
     
    особенно это относится к Ghost. можно сказать, я реализовал твою хотелку - теперь ждём отчётов о том, есть ли от неё польза. ты помнится говорил про какие-то огромнейшие файлы, которые ты собирался ей обработать

    Всего записей: 3408 | Зарегистр. 13-08-2007 | Отправлено: 20:29 24-11-2009 | Исправлено: Bulat_Ziganshin, 20:30 24-11-2009
    DemonAk



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Bulat_Ziganshin
    Не подскажешь как sprep и srep64 добавить в arc.ini, т.е как правильно прописать?.

    Всего записей: 316 | Зарегистр. 08-11-2007 | Отправлено: 23:48 24-11-2009 | Исправлено: DemonAk, 23:48 24-11-2009
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    [External compressor:srep]
    packcmd   = srep $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
    unpackcmd = srep -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

    Всего записей: 3408 | Зарегистр. 13-08-2007 | Отправлено: 00:13 25-11-2009 | Исправлено: Bulat_Ziganshin, 00:14 25-11-2009
    CTACKo

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    так а по unarc.dll 3.4 будут каменты?

    Всего записей: 180 | Зарегистр. 05-09-2008 | Отправлено: 00:19 25-11-2009
    DemonAk



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    srep64, 6,63 ГБ (7 121 007 613 байт) -> 5,74 ГБ (6 168 390 682 байт)
    rep:512:a99, 6,63 ГБ (7 121 007 613 байт) -> 5,78 ГБ (6 212 984 832 байт)

    Всего записей: 316 | Зарегистр. 08-11-2007 | Отправлено: 01:07 25-11-2009
    egor23



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin

    Цитата:
    it's possible but not in near future. also note that it needs temporary file on decompression stage so i don't think that it will be highly popular

    про temporary file поясните

    Цитата:
    а как сейчас объём памяти расчитывется?      
     
    filesize*20/L + округлённое_вверх(filesize*8/L * 4/3)

    расчёт памяти изменился, сейчас показывает на 1МБ больше?

    Всего записей: 3832 | Зарегистр. 03-11-2003 | Отправлено: 12:18 25-11-2009
    frodo10



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Наткнулся на такую проблему, пытался из архива сжатого FreeArc 4.0 извлечь файлы пишет такую ошибку  
     
    FreeArc 0.60 RC extracting archive: arh_20091125123336.arc
    Extracting 1 file, 419.429.888 bytes. Processed   0.0%
    ERROR: bad compressed data in tor:3:4mb
     
    Что можно сделать?

    Всего записей: 106 | Зарегистр. 02-05-2005 | Отправлено: 14:53 25-11-2009
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Что можно сделать?

    использовать 0.40 - http://freearc.org/download/0.40/FreeArc-0.40-win32.zip  
    там распаковка зависит от используемой ОС так что если не будет работать, то вспоминай под какой ОС упаковал (xp/vista/linux). ну и разумеется избавься от этого архива, перепакуй или новой версией или с более высоким сжатием (ошибка была только в режиме -m1)
     
    Добавлено:

    Цитата:
    про temporary file поясните  

    ну данные-то считываются из файла поэтому как остальные алгоритмы - поток данных на входе и поток данных на выходе, сделать не удастся
     

    Цитата:
    расчёт памяти изменился, сейчас показывает на 1МБ больше?

    да, для ускорения работы добавлен ещё один массив в 1мб
     

    Цитата:
    так а по unarc.dll 3.4 будут каменты?

    а ты сам попробуй сядь за другую машину и найди в чём проблема, не имея доступа ни к исходному архиву, ни к точному описанию ошибок

    Всего записей: 3408 | Зарегистр. 13-08-2007 | Отправлено: 14:58 25-11-2009 | Исправлено: Bulat_Ziganshin, 15:51 25-11-2009
    Ghost2004

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Спасибо огромное - 0.8-ая версия srep крута;).
     
    Подробности будут позже - всё же те 24-27 Гб образов надо ещё из рар-ов, в которых они пока хранятся извлечь, да тар-ом затарить (или вместо тар'а использовать обычный rep freearc'а - но это уже отдельная история)... Так что свободное место придётся расчищать и перетасовывать. Так что пока на тех самых 7'906'363'392 тестирую.
     
    Так вот, скорость декомпрессии на них - 20-25 Мб/с реального времени, 190 Мб/с - процессорного - так что, судя по всему, упёрлось всё в не самые новые диски, у меня при декомпрессии идёт чтение с 250-ки Seagate Barracuda 7200.8 ST3250823AS (8 Мб кэша), а запись (и повторное чтение - кстати, заметил что одно из серьёзных улучшений по сравнению с 0.7 - 0.8 читает данных (видно в диспетчере задач виндов) те же ~8 Гб, а 0.7 читала аж ~53 Гб (при -l256), поэтому и скорость выходит 20-25 в 0.8, а не 10-15) - на раздел 750-ки Seagate Barracuda 7200.10 ST3750640AS (16 Мб кэша у диска). То есть может тут вылезло ограничение в скорости дисков - надо же читать с одного диска, а на другой - и читать и писать на другой (и хоть диски на разных контроллерах висят, всё равно).  
     
    Хотя уже сжатые (первые 1.5 Гб после rep:1400mb:128:a99) данные пишутся со скоростью до 31 Мб/с - но потом она всё равно до 25 Мб/с падает (наверное 31 Мб/с - близко к копированию с моего неоптимального диска - 250-ки, на диск побыстрее - 750-ку, а вот если требуется ещё и с 750-ки читать, то скорость падает до 20-25 Мб/с - на этих данных - возможно они чем-то оптимальны, и много влезает в кеш винодоуз).
     
    Что радует больше всего - скорость декомпрессии - те же 20-25 Мб/с реальных и 190 Мб/с процессорных и при мин.длине слова 128 или 256, и при мин.длине слова 16384.
     
    А вот скорость компрессии как раз зависит от этой длины - как и должна: 19 Мб/с CPU, 15 МБ/с реальная при совпадениях от 16кб (сжатый размер - 4 572 251 124 - а в 0.7 версии был 4 600 444 500). 8 Мб/с CPU и 6.5 Мб/с реальная - при l256 (сжатый размер - 4 011 245 268; в 0.7 такие результаты достигались лишь если пройтись обыной rep:1400mb:256:h25 - rep:256+srep-l256 давала 4 009 500 500, а srep-l256+rep:256 3 999 030 405 - даже возникла идея сначала проходиться rep'ом той же мин.длины совпадения  из-за того, что читалось в 6.5 раз больше, чем размер файла - т.е. уже ужатые до 6.2 Гб обычным репом данные читали при распаковке не 53 Гб, а лишь 41 Гб - 0.8-ая читает примерно столько же, сколько пишет, 7-8 Гб). Что характерно - в 0.7 версии два прохода srep -l256 таки неплохо помогали, откусывая 110 Мб - размер srep07-l256+sep07-l256 был 4 107 630 240 - всё равно заметно хуже, чем с обычной rep:1400mb:h25. В 0.8 толку во втором проходе - минимум, лишь 13 мб выигрыша - srep08-l256+srep08-l256 даёт 3 997 881 040 - а это уже меньше, чем rep:256+srep07-l256 - да и лучше и быстрее выйдет . Да, а ещё в 0.7 версии я пробовал и вариант с и пост- и пред- обработкой rep:1400mb:256:h27 - rep:256+srep07-l256+rep:256 - и от лишней обработки вышел неплохой выигрыш в 60-70 Мб - такой вариант давал 3 934 840 970 . На 0.8 я такого ещё не пробовал - впрочем, тут наверное стоит только пост-обработкой ограничиться.
     
    Да, а ещё я поигрался с перебазировкой dll'ок так что у 0.8 версии - так что там таки удалось запустить srep -l128. Скорость сжатия с такой настройкой стала 7.16 Мб/c CPU, 6.5 реальная. Размер вышел 3 916 538 436 . Если сначала пройтись rep:1400Mb:128:a99:h27 - то получается 3 827 972 128 .
     
    Короче, если собрать это дело в таблицу, то выйдет следующее:
    Скорость и время сжатия 0.8 версии (для оригинального набора, без предварительной rep - там несколько другие цифры выходят):  
    l16kb - 19.196 Мб/с Cpu, 14.998 Мб/с real (Global 527.453 sec, Process 442.593 sec)
    l256 - 7.915 Мб/с Cpu,  6.465 Мб/с real (Global 1223 sec, Process 1138.125 sec)
    l128 - 7.160 Мб/с Cpu,  6.477 Мб/с real (Global 1227.219 sec, Process 1134.859 sec)
     
    то же для расжатия:
    l16kb - Cpu 191.235 mb/sec, real 20.236 mb/sec  
    l256 - Cpu 191.163 mb/sec, real 24.134 mb/sec
    l128 - Cpu 190.658 mb/sec, real 21.505 mb/sec (кстати, тут уже размер прочитанного вырос почти до 9 Гб - наверное поэтому и немного помедленней)
     
    l256 второй проход, данные уже были сжаты srep08-l256 - Cpu 178.774 mb/sec, real 27.547 mb/sec
    l128 второй проход (но уже после простого rep:1400mb:128:a99:h27) - Cpu 187.313 mb/sec, real 24.360 mb/sec
     
    Размеры:
    Исходные данные - 7540.096 Мб
    После rep:1400mb:128:a99 или rep:1700mb:128:a99:h27 - 5788.845 Мб (время распаковки-тестирования с 250-ки - 50.41 сек cpu, 224.38 сек real, скорость ~35 Мб/c - вероятно как раз в районе скорости того жёсткого диска)
     
    Исходные данные сжатые рар'ом (в таком виде пока хранятся) - 5179.315 Мб
     
    rep:1700mb:128:a99+lzma:192mb:max:bt4:128:lc8 - 4885.368 Мб (у рара выиграно лишь 294 Мб, 6% от сжатого размера - но какой ценой!)  - сжал фриарком, без ухищрений с перестановками блоков или srep . Время сжатия - real - 9778 sec (из них 1177 - засчёт rep:128:a99 с tempfile), CPU - 13551 sec . Скорость сжатия в итоге - 809 Кб/с. Время тестирования с распаковкой в tempfile - 812.33 сек, без такой распаковки - 775 сек. Т.е. скорость около 10 Мб/с в обоих случаях.
     
    srep07-l16kb - 4387.325 Мб
    srep08-l16kb - 4360.438 Мб (17 Мб выигрыш - хотя это немного, основное преимущество 0.8 версии - скорость декомпрессии раза в 2.5 лучше)
     
    srep07-l512 - 4042.495 Мб
    srep07-l256 - 4023.032 Мб
    srep07-l256+srep07-l256 - 3917.341 Мб
    srep08-l256 - 3825.422 Мб (аж на 197.5 Мб лучше, чем 0.7!)
    rep:256+srep07-l256 - 3823.758 Мб
    srep07-l256+rep:256 - 3813.773 Мб
    srep08-l256+srep08-l256 - 3812.676 Мб (уже только 104.7 Мб на фоне 0.7 - но вообще говоря, смысл второго прохода теряется - разница лишь)
    rep:256+srep07-l256+rep:256 - 3752.557 Мб
     
    srep08-l128 - 3735.102 Мб  
    rep:128+srep08-l128 - 3650.639 Mb
     
    Вот такие пока результаты. Куда дальше лучше смотреть с этими 7.5 Гб данных - rep, lzma или ещё что? С 24-27 Гб данными подобного типа буду разбираться, как только с этими закончу. Тут же ещё с lzma надо будет дожимать... И, возможно, обычным rep'ом...
     
    P.S. Да, а как в arc.ini правильно вставить srep внешним компрессором, чтобы можно было задавать параметр -l?

    Всего записей: 51 | Зарегистр. 02-01-2008 | Отправлено: 18:53 25-11-2009
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    P.S. Да, а как в arc.ini правильно вставить srep внешним компрессором, чтобы можно было задавать параметр -l?

    [External compressor:srep]
    ;options  = l%d (minimal match length)
    packcmd   = srep {options} $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
    unpackcmd = srep -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp
     

    Цитата:
    Куда дальше лучше смотреть с этими 7.5 Гб данных - rep, lzma или ещё что?

    я ж говорил - rep+lzma vs srep+lzma vs srep+rep+lzma

    Всего записей: 3408 | Зарегистр. 13-08-2007 | Отправлено: 19:07 25-11-2009
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ghost2004
    самое важное не сказал - сколько у тебя озу? пока что скорость распаковки даже с -l128 просто изумительная

    Всего записей: 3408 | Зарегистр. 13-08-2007 | Отправлено: 00:30 26-11-2009
    CTACKo

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    так а по unarc.dll 3.4 будут каменты?
    а ты сам попробуй сядь за другую машину и найди в чём проблема, не имея доступа ни к исходному архиву, ни к точному описанию ошибок
    дык нет вопросов - давай по старой схеме: я выкладываю архив у себя на фтп, ты качай да изучай, вес - 3Гб.
    вот ltПодробнее...

    Всего записей: 180 | Зарегистр. 05-09-2008 | Отправлено: 03:29 26-11-2009 | Исправлено: CTACKo, 03:31 26-11-2009
    Ghost2004

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Скорости может ещё помог тот факт, что перед распаковкой прохожу распаковываемый файл defraggler'ом, так что если там и остаётся какая-то фрагментация исходного файла, то штуки 3-5 фрагментов - и все большого размера. Хотя может и не так уж сильно оно помогает...
     
    Bulat_Ziganshin
    3Gb на win32 - так что с ухищрениями (перенос dll'ок специально для архиваторов и /3G /USERVA=3000 - 3072 стала вешать систему, похоже драйвер видеокарты мешает) выходит основной солид блок 1700-1840 Мб, дополнительный - 950 Мб. Плюс ещё какие-то копейки остаются. Без ухищрений - только основной солид блок, было 1400 Мб, но удалось поднять эту цифру до 1700-1840 Мб путем перебазировки dll'ок для arc'а и srep'а (с /3G и даже /USERVA=2800 у меня не работает аппаратное декодирование mpeg4-avc - так что на 720p ещё хватает coreavc (да всё равно куда приятнее, когда процессор почти не грузится при проигрывании видео, даже на 1 ГГц загрузка выше 20-30% не идёт), а вот на что-то большее - приходится перезагружаться без дополнительного 1 Гб). Знаю, надо ставить win64 - но сейчас на это нету времени и сил. А также место надо расчистить (и srep тут как раз может сильно помочь ).
     
    Кстати, lzma как лучше настраивать? Сейчас использую lzma:192mb:max:128:bt4:lc8 (или 128-160 Мб - насколько места хватит), но варианты вроде lzma:959mb:mc3:32:h768mb (или mc7:h896mb) ещё остаются - там была скорость выше, хотя на входе файл хорошо ужимался репом - но варианты с ht4 давали чуть лучшие результаты сжатия, чем rep+lzma:180mb:bt4 - и побыстрее - если с mc3 или mc7. Хотя после множественных rep ht4 не настолько хорош...  В общем, как лучше lzma ускорить? lzma:96mb:max:h1gb (кстати, в bt4 хэш - только степень двойки? Или можно поставить что-то вроде lzma:64mb:max:bt4:128:h1600mb:mc50 или mc100)?
     
    Да, а в srep+rep использовать одинаковую длину слова - если памяти на l128 хватает (меньше для дожатия с lzma:max:bt4:128 - не лучший вариант)?

    Всего записей: 51 | Зарегистр. 02-01-2008 | Отправлено: 08:56 26-11-2009
    Sig666

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin
    планируется в srep добавить возможность обработки папки?

    Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 10:47 26-11-2009
    ICESCREAM



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А чем "@for %%i in (*.*) do @ srep бла-бла-бла" не устраивает?

    Всего записей: 164 | Зарегистр. 28-07-2006 | Отправлено: 11:23 26-11-2009
    egor23



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Bulat_Ziganshin

    Цитата:
    1. сравнение сжатия srep+rep+lzma vs srep+lzma vs rep+lzma

    исходные данные Nero-9.2.6.0_trial.tar 1883МБ
    статистика по Nero-9.2.6.0_trial.tar ниже
    http://forum.ru-board.com/topic.cgi?forum=5&topic=1406&start=1760#20
    http://forum.ru-board.com/topic.cgi?forum=5&topic=1406&start=1960#16
    nero.bat..
    nero.log..
     
    srep.exe Nero-9.2.6.0_trial.tar Nero_srep_512
    524.1МБ
    Arc.exe a Nero_rep_512.arc -mrep:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    486.9МБ
    Arc.exe a Nero_srep_512_lzma.arc -msrep+lzma:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    196.7МБ
    Arc.exe a Nero_rep_512_lzma.arc -mrep:1024m+lzma:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    195.9МБ
    Arc.exe a Nero_srep_512_rep_512_lzma.arc -msrep+rep:1024m+lzma:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    197МБ
    Arc.exe a Nero_lzma.arc -mlzma:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    197.1МБ
     
    srep.exe -l64 Nero-9.2.6.0_trial.tar Nero_srep_64
    427.2МБ
    Arc.exe a Nero_rep_64.arc -mrep:1024m:64 Nero-9.2.6.0_trial.tar -di -di+$#
    397.8МБ
    Arc.exe a Nero_srep_64_lzma.arc -msrep:l64+lzma:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    198.4МБ
    Arc.exe a Nero_rep_64_lzma.arc -mrep:1024m:64+lzma:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    198МБ
    Arc.exe a Nero_srep_64_rep_64_lzma.arc -msrep:l64+rep:1024m:64+lzma:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    199.8МБ
    Arc.exe a Nero_lzma.arc -mlzma:1024m Nero-9.2.6.0_trial.tar -di -di+$#
    197.1МБ
     
    srep vs rep: Дожатие srep принципиально хуже не становится.

    Цитата:
    можно сказать, что разработка SREP закончена

    на базе SREP можете сделать программку делающие diff двух файлов, наподобии xdelta?

    Цитата:
    да, для ускорения работы добавлен ещё один массив в 1мб

    filesize*20/L + 2*округлённое_вверх(filesize*8/L * 4/3)*1\2 +1 ?
     
    ICESCREAM

    Цитата:
    А чем "@for %%i in (*.*) do @ srep бла-бла-бла" не устраивает?

    и чего на выходе будет?
     
    Добавлено:

    Цитата:
    статистика по Nero-9.2.6.0_trial.tar ниже

    там затарина с сортировкой тип Размер
    сегодняшний Nero-9.2.6.0_trial.tar без сортировки, как есть.
     
    Добавлено:
    md5sum был этот
    http://downloads.activestate.com/contrib/md5sum/Windows/md5sum.exe

    Всего записей: 3832 | Зарегистр. 03-11-2003 | Отправлено: 13:57 26-11-2009
    Ghost2004

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Дальнейшая статистика: добавляю (к уже имеющимся srep v0.8) srep+rep, rep+srep и даже где-то rep+srep+rep . По сути дожал rep'ом предыдущие файлы после srep 0.8.
     
    rep везде использовался с настройками 1700mb:h27:a99, длина слова будет указана.
     
    srep08-l16kb - 4360.438 Мб  
    srep08-l16kb+rep:512 3828.626 Мб, разница - целых 531.812 Мб (но оно неудивительно: l16kb против l512)
     
    srep08-l256 - 3825.422 Мб  
    srep08-l256+rep:256 - 3794.507 Мб, разница - 30.915 Мб
     
    srep08-l256+srep08-l256 - 3812.676 Мб  
    srep08-l256+srep08-l256+rep:256 - 3798.033 Мб разница - лишь 14.643 Мб, сжалось даже хуже чем с одним srep
     
    srep08-l128 - 3735.102 Мб  
    srep08-l128+rep:128 - 3700.202 Мб, разница 34.9 Мб
     
    rep:128+srep08-l128 - 3650.639 Мб
    rep:128+srep08-l128+rep:128 - 3649.819 Мб, разница лишь 840 кб
     
    Итак, на этих данных rep перед srep оказывается полезней обратного варианта в смысле степени сжатия. Повторный srep даже вредит, если дожимать rep'ом с тем же словом. А так - для l16k дожатие с rep:512 даёт, как и следовало ожидать, огромный выигрыш 531 Мб, а вот для l256 и l128 выигрыш лишь 30-35 Мб, чуть ниже 1%. Зато rep:128 перед srep:128 заметно эффективнее - 84.5 Мб, 2.3%.  
     
    Так что на этих данных rep+srep куда полезнее srep+rep, а в rep+srep+rep последний rep вообще практически ничего не сжимает. Хотя 100% точны эти выводы лишь для l128. Для l256 предварительной обработки rep перед srep пока не было. Возможно следует потестить длины 512 и 2048 .
     
    Но пока дальше пойду с lzma - посмотрим, как эти все файлы ужмутся lzma:192mb:max:lc8.

    Всего записей: 51 | Зарегистр. 02-01-2008 | Отправлено: 17:24 26-11-2009
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    3Gb на win32

    меня интересует не адресное пространство, а размер ОЗУ (т.е. сколько есть места для кеширования файлов) в сочетании со скоростью распаковки. насколько я пока понимаю, ты при наличии ~3гб под кеш распаковываешь где-то со скоростью копирования 7 гб файл? неплохо, но ещё интересней будут результаты с действительно большими файлами, гиг под 20
     

    Цитата:
    Кстати, lzma как лучше настраивать? Сейчас использую lzma:192mb:max:128:bt4:lc8 (или 128-160 Мб - насколько места хватит), но варианты вроде lzma:959mb:mc3:32:h768mb

     
    lzma:192mb:max:128:bt4. не уверен, что lc8 увеличит сжатие
     
    lzma:959mb:mc3:32:h768mb вряд ли хорошо сожмёт, mc3 больно мало. поставь хотя бы 48, но это уже будет на порядок медленней. вообще bt4:128m - это макс. сжатие с небольшим словарём, а ht4:959m - это сжатие похуже, но с макс. словарём. которое лучше сработает зависит от конкретного файла
     
     
    Добавлено:

    Цитата:
    Да, а в srep+rep использовать одинаковую длину слова - если памяти на l128 хватает

    да, в прицнипе. хотя я думаю, что -l512 будет оптимально, как это было и с rep. оптимизировать-то нужно размер после lzma
     

    Цитата:
    планируется в srep добавить возможность обработки папки?  

    не планировалось, но я подумаю. в принципе лучше было бы добавить srep в сам freearc
     

    Цитата:
    исходные данные Nero-9.2.6.0_trial.tar 1883МБ  

    всего 2 гига, причём ты их там lzma:1gb сжимаешь. в общем, маловат размерчик
     

    Цитата:
    md5sum был этот
    http://downloads.activestate.com/contrib/md5sum/Windows/md5sum.exe

    в srep08 встроенная проверка по md5. можешь проверить, изменив последний бат сжатого файла
     
    Добавлено:

    Цитата:
    filesize*20/L + 2*округлённое_вверх(filesize*8/L * 4/3)*1\2 +1 ?  

    нет, filesize*20/L + 4*округлённое_вверх(filesize*8/L * 4/3)*1/4 +1мб
     

    Цитата:
    на базе SREP можете сделать программку делающие diff двух файлов, наподобии xdelta?  

    мог бы, но времени на это нет
     

    Цитата:
    А чем "@for %%i in (*.*) do @ srep бла-бла-бла" не устраивает?

    тем, что это не то - нужно сжатие всех файлов в общем потоке
     
     
    Добавлено:

    Цитата:
    дык нет вопросов - давай по старой схеме: я выкладываю архив у себя на фтп, ты качай да изучай, вес - 3Гб.
    вот ltПодробнее...

    опиши проблему. без лирики.  
     
    а сколько у тебя там wav-файлов? есть подозрение, что память фрагментируется из-за того, что их слишком много. может, для пробы перепакуешь архив с -mc-tta ?

    Всего записей: 3408 | Зарегистр. 13-08-2007 | Отправлено: 19:38 26-11-2009 | Исправлено: Bulat_Ziganshin, 19:43 26-11-2009
    Ghost2004

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Да, памяти у меня тоже 3 Gb - и работает она как DDR315, т.к. двуядерник мой - один из самых старых, и с 4-мя планками быстрее DDR333 не работает - но при этом скорость процессора должна быть кратной скорости памяти - так что на 2.2 ГГц выходит как 315*7 -  вот если чуть снизить частоту до 2 ГГц, то получится 333*6. Так что иногда даже 2 Гб физической памяти могут быть лучше - ведь с ними-то память всегда работает как DDR400 с 1T command rate (вместо 2T для 4-ёх модулей). Но наверное не в случае srep . Да и вообще Freearc как раз выигрывает от лишней памяти так или иначе.
     
    Несколько результатов дожатия с lzma - везде lzma означает lzma:192mb:max:128:bt4:lc8 . А rep:len - rep:1700mb:h27:a99:len (или 1400mb - но разница в том случае, когда про перебазировку dll'ок я не знал, и свободный блок был меньше, оказалась минимальной, ~50 кб на 6 Гб данных)
     
    Повторю исходные результаты:
    Исходный tar - 7540.096 Мб
    rep:128 - 5788.845 Мб
     
    rep:128+lzma - 4885.368 Мб (выигрыш 6% по сравнению с исходным архивом, который был сжат rar'ом). Время сжатия - real - 9778 sec (из них 1177 - за счёт rep:128:a99 с tempfile), т.е. 8601 sec на lzma (rep и lzma были разделены tempfile). Скорость сжатия lzma в итоге выходит 898 Кб/с - если считать на все 7540 Мб, но вернее тут две другие цифры - 690 Кб/с если пересчитывать на 5789 Мб сжатых rep'ом и 582 Кб/с от сжатого объёма (4885 Мб). Время тестирования без распаковки в tempfile - 775 сек. Для тестирования rep:128 cpu time - 50.41 сек, так что чистое время lzma должно быть в районе 725 сек. Т.е. скорости распаковки именно lzma выходят 10.4 Мб/с (7540), 7.98 Мб/с (5789) и 6.74 Мб/с (4885) - смотря на какой объём пересчитывать. (Тут хочу заметить, что я считаю в расчёте 1 Мб=2^20, 1 Кб=2^10 - несколько иначе, чем сам arc, где 10^6 и 1000 соответственно)
     
    теперь - новые результаты, дожатие lzma srep/rep архивов:
     
    rep:128+srep08-l128+rep:128+lzma - 3649.819 -> 3142.025 Мб.  
    Время сжатия lzma: cpu 9351.99 secs, real 8523.16 secs. Speed 449 kB/s
     
    srep08-l256+rep:256+lzma 3794.507 Мб -> 3141.463 Мб  
    Время сжатия lzma: cpu 7286.25 secs, real 5701.19 secs. Speed 698 kB/s

     
    srep08-l256+srep08-l256+rep:256+lzma - 3798.033 Мб -> 3142.265 Мб
    Время сжатия lzma: cpu 8289.27 secs, real 6429.42 secs. Speed 619 kB/s
     
    srep08-l16kb+rep:512+lzma 3828.626 Мб -> 3144.797 Мб
    Время сжатия lzma: cpu 7664.74 secs, real 6389.70 secs. Speed 628 kB/s
     
    Пока всё, дальше будет ещё результаты.
    На данный момент srep-l256+rep:256 оказывается лучше всех и по сжатию и по скорости lzma. rep:128+srep-l128+rep:128 - значительно хуже всех в плане скорости.
     
    Но в принципе, lzma дожимает так, что разница - мизерная.
    По сравнению с лучшим на данный момент srep-l256+rep:256+lzma размер больше лишь на
    589 557 байт для rep:128+srep-l128+rep:128,  
    841 486 для srep-l256x2+rep:256 и  
    3 496 020 для srep-l16kb+rep:512 .
     
    А при сжатом размере в 3141.463 Мб даже 3 Мб - 0.1%. Так что именно на размер (пока) не стоит смотреть. Скорость и время lzma - другое дело. И тут srep-l256+rep:256 рулит, обходя l128 на 33%. Как и исходный вариант без srep - rep:128+lzma (но тут ещё размер более чем в 1.5 раза меньше) - хотя вероятно тут лучше было бы использовать rep:256 или rep:512 . Впрочем, возможно тут дело не в том, что l128 особо неудачный вариант, а в том, что rep:128+srep-l128+rep:128 - перебор. Или при сжатии этого файла другие программы мешали. Посмотрим, что выйдет с двумя другими l128 ...

    Всего записей: 51 | Зарегистр. 02-01-2008 | Отправлено: 00:16 27-11-2009
    Bulat_Ziganshin

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ghost2004
    сделай для начала с дефолтными настройками: rep:512+lzma, srep:512+lzma, srep:512+rep:512+lzma

    Всего записей: 3408 | Зарегистр. 13-08-2007 | Отправлено: 00:30 27-11-2009
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106

    Компьютерный форум Ru.Board » Компьютеры » Программы » FreeArc: бесплатный open-source архиватор - Часть 3
    Widok (23-11-2010 11:37): Лимит страниц. Продолжаем здесь


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru