Новая альфа-версия:
Опция -mc: позволяет изменить метод сжатия путем добавления/замены/удаления заданных алгоритмов
Страница сжатия: добавлена вкладка "Экспериментальные алгоритмы"
arc.ini: обновлен для совместимости с precomp042/srep3
Исполняемые файлы precomp 0.4.2 и srep 3.0 добавлены в директорию FreeArc\bin
Цитата:
Новый синтаксис опции -mc (обратно-совместимый со старым):
-mc[ГРУППЫ][:]ОПЕРАЦИЯ
где ГРУППЫ может быть пустым или содержать список групп файлов, причем '$default' означает группу по умолчанию. Примеры:
$obj
$default
$default,$obj
Опциональный символ ':' является разделителем
ОПЕРАЦИЯ может быть одна из следующих:
'-$group' или '$group-' означает "исключить $group при сжатии"
'-method' или 'method-' означает "исключить method при сжатии". RAR-совместимые команды, такие как -mca-, также поддерживаются
'+method' или 'method+' означает " добавить method в начало каждой цепочки сжатия", например -mc+precomp042:c-
'method1/method2' означает "заменить method1 на method2", например -mc:rep/srep:mem256mb
ГРУППЫ могут быть использованы для ограничения ОПЕРАЦИИ определенными группами файлов, например -mc$default,$obj:+precomp042:c-
--------------------------------------------------------------------------------------------------------------
Используя эти опции, FreeArc реализует чекбоксы "Экспериментальных алгоритмов" следующим образом:
lzma:1gb: -mc:lzma/lzma:max:512mb
exe2: -mc:exe/dispack070
srep: -mc:rep/srep:mem256mb
precomp: -mc$default,$obj:+precomp042:c-:t-j
intense: -mc$default,$obj:+precomp042:c-:intense:t-j
jpeg: -mc$default,$obj:+precomp042:c-
intense+jpeg: -mc$default,$obj:+precomp042:c-:intense
Улучшение скорости REP: REP: ускорен в 4 раза благодаря многопоточности и надежному хешированию
предложенному Евгением Шелвиным REP:c устанавливает размер хешируемых блоков (например, rep:256:c256 это более быстрая, но менее аккуратная замена rep:512)
REP: для rep:512..257/256..129/... значения по умолчанию следующие :c128/64/...
REP: по умолчанию hashsize = min(1/4,16/chunksize)*BlockSize
Цитата:
D:\>old_fazip rep:1g dll4g.dll nul
100%: 4,531,060,447 -> 3,046,406,598: 67.23% Cpu 358 mb/s, real 327 mb/s
D:\>new_fazip rep:1g:c256 dll4g.dll nul
100%: 4,531,060,447 -> 3,063,642,637: 67.61% Cpu 482 mb/s, real 1299 mb/s
D:\>old_fazip rep:1g:32 dll4g.dll nul
100%: 4,531,060,447 -> 2,245,307,773: 49.55% Cpu 117 mb/s, real 113 mb/s
D:\>new_fazip rep:1g:32:c16 dll4g.dll nul
100%: 4,531,060,447 -> 2,271,868,087: 50.14% Cpu 182 mb/s, real 274 mb/s
Улучшения методов сжатия: -m1: добавлен препроцессор REP (сжатие улучшилось на 10-20%, скорость осталась та же благодаря новому супер-быстрому движку REP)
-m1: удалена отдельная группа $exe, чтобы уменьшить кол-во перемещений головки диска при сжатии
-m2..m4: изменены настройки REP, используя возможности нового REP для улучшения скорости/сжатия
-m3t/mex3t: изменен таким образом, что сжатие идет дольше, но распаковка быстрее
Цитата:
D:\>old_arc a a -m1 MsOfficeBCJ.obj
Compressed 1 file, 810,411,321 => 435,620,877 bytes. Ratio 53.7%
Compression time: cpu 13.10 secs, real 1.76 secs. Speed 459,651 kB/s
D:\>new_arc a a -m1 MsOfficeBCJ.obj
Compressed 1 file, 810,411,321 => 369,825,442 bytes. Ratio 45.6%
Compression time: cpu 12.68 secs, real 1.84 secs. Speed 441,616 kB/s
D:\>old_arc a a -m2 MsOfficeBCJ.obj
Compressed 1 file, 810,411,321 => 354,958,875 bytes. Ratio 43.7%
Compression time: cpu 37.72 secs, real 5.41 secs. Speed 149,680 kB/s
D:\>new_arc a a -m2 MsOfficeBCJ.obj
Compressed 1 file, 810,411,321 => 353,083,639 bytes. Ratio 43.5%
Compression time: cpu 36.54 secs, real 5.11 secs. Speed 158,553 kB/s
D:\>old_arc a a -m3 MsOfficeBCJ.obj
Compressed 1 file, 810,411,321 => 340,430,540 bytes. Ratio 42.0%
Compression time: cpu 80.15 secs, real 12.00 secs. Speed 67,514 kB/s
D:\>new_arc a a -m3 MsOfficeBCJ.obj
Compressed 1 file, 810,411,321 => 338,976,484 bytes. Ratio 41.8%
Compression time: cpu 78.91 secs, real 11.33 secs. Speed 71,530 kB/s
D:\>old_arc a a -m4 MsOfficeBCJ.obj
Compressed 1 file, 810,411,321 => 326,333,902 bytes. Ratio 40.2%
Compression time: cpu 184.19 secs, real 24.19 secs. Speed 33,503 kB/s
D:\>new_arc a a -m4 MsOfficeBCJ.obj
Compressed 1 file, 810,411,321 => 324,126,352 bytes. Ratio 39.9%
Compression time: cpu 182.58 secs, real 24.01 secs. Speed 33,748 kB/s
D:\>old_arc a a -m3t -t enwik8
Compressed 1 file, 100,000,000 => 25,840,442 bytes. Ratio 25.8%
Compression time: cpu 9.02 secs, real 1.58 secs. Speed 63,488 kB/s
Testing time: cpu 12.03 secs, real 2.14 secs. Speed 46,704 kB/s
D:\>new_arc a a -m3t -t enwik8
Compressed 1 file, 100,000,000 => 25,221,121 bytes. Ratio 25.2%
Compression time: cpu 12.00 secs, real 2.18 secs. Speed 45,869 kB/s
Testing time: cpu 8.42 secs, real 1.61 secs. Speed 61,993 kB/s
Остальные изменения: CRC в arc/unarc/dll/sfx стал в 2 раза быстрее (500->1000 mb/s); для сравнения, CRC в facompress.dll имеет скорость 1600 mb/s
I/O: чтение файлов для сжатия блоками по 1мб (оптимизировано под Vista/Win7)
DICT: исправлен баг с ошибкой -6 в конце распаковки (появлялась при -m=bcj+dict -t)
i18n: НОВАЯ локализация: Португальский Стандартный от Nuno Rego!
(перевод Шегората)