FreeArc (Win32)

FreeArc (Win32) 0.67

Нет прав для скачивания

vint56

Ветеран
Проверенный
Pipocooling, вот с этими настройками я сжимал Far Cry 3 распаковка памяти 900 мигов установка по времени 2 минуты 37 секунд на просто жесткий диск

http://freearc.org/download/research/fazip03.zip

[External compressor:lzma]
header = 0
packcmd = fazip -i0 compress:{compressor}{:option} $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = fazip -i0 decompress:{compressor}{:option} $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

arc.exe a -ep1 -r -ed -s; -lc1024 -ld1024 -w.\temp -mrep:16mb:a99+srep+4x4:b100mb:lzma:ultra:400m:a1:mfbt4:fb1024:mc10000:lc8 data-1.arc "pack\*"

if not ISExec( 0, 0, 0, ExpandConstant('{tmp}\unarc.exe'), ExpandConstant('x -o+ -ld640 -cfg"{tmp}\arc.ini" -w"{app}" -pPassword -dp"{app}" "{src}\Pack.arc"'), ExpandConstant('{tmp}'), 'Распаковка временных файлов',false) then break;


FAZip 0.3 это пофайловый упаковщик (аналогично gzip/bzip2), поддерживающий все алгоритмы сжатия FreeArc, включая CLS dll-ки, 4x4 и цепочки методов (например rep:512m+delta+4x4:lzma). Однако, у него нет развитого набора опций и сохранения контрольных сумм в сжатом файле, так что пока я не могу рекомендовать использовать его как замену вышеупомянутым программам.

FAZip может быть интересен для бенчмаркинга и поиска ошибок в алгоритмах сжатия FreeArc, и как внешний упаковщик, заменяющий встроенные в FreeArc алгоритмы. Включенный в поставку файл arc-fazip.ini показывает как использовать FAZip чтобы полностью заменить встроенные алгоритмы LZMA и REP, сохраняя полную совместимость по данным (т.е. данные, сжатые FAZip, будут распаковываться встроенными алгоритмами, и наоборот).

FAZip заменяет FreeArc-LZMA-x64.exe, Delta.exe и другие упаковщики, откомпилированные из библиотеки сжатия FreeArc.

Что новенького:
  • Windows: 32-битный exe и facompress*.dll откомпилированы ICL 2011
  • Windows: 64-битный exe откомпилирован MSVC 2013
  • Linux: 32/64-битные динамически/статически-слинкованные программы откомпилированы GCC 4.6.3 под Ubuntu 12.04 (отсутствует поддержка CLS)
  • работает с чистым потоком сжатых данных при использовании синтаксиса "compress:метод" и "decompress:метод" (используется в arc-fazip.ini)
  • автоматически использует все ядра ЦПУ, но не уменьшает отывчивость системы
  • отображает зелёненький индикатор прогресса в таскбаре Win7
  • по умолчанию: использует большие страницы памяти (2МБ/4МБ) если они доступны; -slp-: никогда их не использовать; -slp+: использовать только их, при недоступности/нехватке выходить с ошибкой (ага, для бенчмарков)
  • опция -i0 отключает вывод программы (хотя сообщения об ошибках и ^Break всё же печатаются)
  • обновляет индикатор прогресса не чаще раза в 0.2 секунды (иначе на это может уходить слишком много времени)
  • печатает "\n" перед выходом и выдаёт расшифровки сообщений об ошибке вместо их цифровых кодов
  • удаляет частично созданный выходной файл при выходе по Ctrl-Break или ошибке

LZMA:
  • словарь до 2 ГБ в BT4, до 4000 МБ в HT4/HC4
  • улучшено сжатие со словарём в 1 ГБ
  • предвыборка памяти в BT4/HT4 - до 20% быстрее
  • по умолчанию MaxChain :)mc) в HT4 теперь равен FastBytes/2 :)fb/2)

Другие алгоритмы:
  • FAZip поддерживает все алгоритмы FreeArc, включая "tempfile" и cls-*.dll, за исключением только внешних алгоритмов, определяемых в arc.ini
  • 64-битные версии алгоритмов ppmd/grzip/tta на самом деле пока не работают
  • REP: стал до 2 раз быстрее при больших :l/:c (потому что для хеширования теперь используются все ядра ЦПУ)
  • Delta: стало в 1.7 раз быстрее


Планы на будущие версии FAZip, в порядке приоритета:
  • 32/64-битные версии, откомпилированные MSVC 2010/2012/2013, ICL 2011/2013/2014 и GCC 4.8
  • подробное описание использования и параметров каждого алгоритма сжатия
  • полноценный формат сжатых файлов - с идентификатором формата и контрольной суммой
  • 64-битные версии ppmd/grzip/tta
  • значительное ускорение HT4/BT4 (хотя при этом мы упрёмся в другую часть LZMA - Оптимальный Парсер)
  • упереть драйвер командной строки из bzip2 или tornado - где хуже лежит
  • 64-битный MemSize (lzma:h4g)
  • не выводить сообщений об ошибках при -i0?




FAZip 0.3 is a single-file compression utility (like gzip/bzip2), that supports all
the FreeArc compression algorithms, including CLS dlls, 4x4, and method chaining
(like rep:512m+delta+4x4:lzma). It lacks feature-rich command line and data checksums,
though, so i can't yet recommend to use it as general-purpose compressor.

FAZip may be useful for benchmarking and bug-hunting FreeArc compression algorithms,
and as external compressor replacing built-in FreeArc methods. The provided arc-fazip.ini
demonstrates how to use FAZip to completely replace built-in LZMA and REP algorithms
while retaining full data format compatiblity (i.e data compressed by FAZip may be extracted
by built-in methods and vice versa).

FAZip replaces FreeArc-LZMA-x64.exe, Delta.exe and other standalone compression tools
compiled from the FreeArc library.

What's new:
  • Windows: 32-bit executable and facompress*.dll compiled by ICL 2011
  • Windows: 64-bit executable compiled by MSVC 2013
  • Linux: 32/64-bit dynamic/static-linked executables produced by GCC 4.6.3 on Ubuntu 12.04 (no CLS support)
  • raw compressed stream produced by "compress:method" and extracted by "decompress:method" syntax (employed by arc-fazip.ini)
  • automatically employs all cpu cores, while keeping the computer responsive
  • Win7 taskbar progress indicator (the green bar)
  • default: use Large Memory Pages (2MB/4MB) if possible; -slp-: never use LP; -slp+: use only LP, abort if there aren't enough LP available (just for benchmarking)
  • -i0 option disables program output (although error/^Break messages are still displayed)
  • updates progress indicator only once per 0.2 seconds (otherwise it may need too much time)
  • prints "\n" before exiting and shows error descriptions instead of numeric codes
  • removes unfinished outfile on Ctrl-Break or error

LZMA:
  • dictionary up to 2 gb in BT4, up to 4000 mb in HT4/HC4
  • improved compression with 1 GB dictionary
  • prefetching in BT4/HT4 matchfinders - up to 20% faster
  • default MaxChain :)mc) for HT4 now is FastBytes/2 :)fb/2)

Other compressors:
  • FAZip supports all FreeArc algorithms, including "tempfile" and cls-*.dll, except only of external compressors defined in arc*.ini
  • 64-bit versions of ppmd/grzip/tta don't really work yet
  • REP: made up to 2x faster with large :l/:c (since now it uses all CPU cores for hashing)
  • Delta: made 1.7x faster


Plans for future FAZip versions, in order of priority:
  • 32/64-bit executables compiled by MSVC 2010/2012/2013, ICL 2011/2013/2014 and GCC 4.8
  • document usage and parameters for all compression algorithms
  • compressed file format with fileid and checksum
  • 64-bit versions of ppmd/grzip/tta
  • much faster HT4/BT4 matchfinders (so that LZMA speed will be limited only by the Optimal Parser)
  • steal cmdline processing from bzip2 or tornado
  • 64-bit MemSize (lzma:h4g)
  • no error messages on -i0?
 
Последнее редактирование:

Carlos

Участник
Модератор
vint56, Возможно объединить распаковку с pZLib?

pZLib то распаковываю через:
if not ISArcExtract ( 0, 0, ExpandConstant('{src}\Setup-2a.bin'), ExpandConstant('{app}\'), '', false, 'password', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}\Temp'), notPCFonFLY{PCFonFLY}) then break;

а FAZip через:
if not ISExec( 0, 0, 0, ExpandConstant('{tmp}\unarc.exe'), ExpandConstant('x -o+ -ld640 -cfg"{tmp}\arc.ini" -w"{app}" -pPassword -dp"{app}" "{src}\Pack.arc"'), ExpandConstant('{tmp}'), 'Распаковка временных файлов',false) then break;
 

vint56

Ветеран
Проверенный
Carlos, arc.ini напиши что надо распаковать но пока pZLib не пользуюсь и за ошибок
 

Pipocooling

Участник
vint56, Carlos,, для распаковки с 4x4 надо еще что-то добавить в скрипт ?

попробовал сжать через -mpzlib+srep+4x4:b100mb:lzma:a1:mfbt4:d250m:fb273:mc10000:lc8 (использовал FreeArc-LZMA-x64)
при распаковке просто застревает, ошибок не выдает никаких, тупо стоит на месте, сжимаю без 4x4:b100mb все нормально распаковывается, в чем может быть проблема ?
 

Pipocooling

Участник
А нахрена?
Есть же fazip64.
для того чтоб можно было распаковывать не через if not ISExec а через if not ISArcExtract, поскольку через if not ISExec на системах которые послабее, установка застревает на долгое время на определенном проценте, а потом продолжается рывками.
 

nik1967

Old Men
Проверенный

Pipocooling

Участник
nik1967, в том что при добавлении 4x4:b100mb: перед lzma, ингалятор не распаковывает архив, сжимаю через тот же батник без 4x4:b100mb: все нормально распаковывается :hmm:
 

Pipocooling

Участник
Булат Зиганшин, пытаюсь выкинуть, и не морочу никому голову! Суть проблемы описал, что архив не распаковывается, и тут проблема не в fazip или FreeArc-LZMA-x64, а в настройке 4x4:b100mb, по вашему мне делать нечего кроме как придумывать проблемы и постить ?

был бы очень признателен если бы помогли распаковать такой конфиг
Код:
arc.exe a -ep1 -r -ed -s; -lc1024 -ld1024 -w.\temp -mrep:16mb:a99+srep+4x4:b100mb:lzma:ultra:400m:a1:mfbt4:fb1024:mc10000:lc8 data-1.arc "pack\*"
через if not ISArcExtract
 
Последнее редактирование:

Timick

Старожил
Pipocooling, попробуй распаковывать тоже с FaZip?. Выгрузи в TMP "FaZip.exe" и "Arc.ini" и вперёд)
Код:
if not ISArcExtract ( 0, 0, ExpandConstant('{src}\Data-1.bin'), ExpandConstant('{app}'), '', False, '{#Password}', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}'), notPCFonFLY {PCFonFLY} ) then Break;
 

vint56

Ветеран
Проверенный
Я тоже распаковывал на unarc.dll но только требуется больше памяти а если увеличить блок у 4x4 больше 100 то 150 ~ 200 выходило сообщение не хватает памяти на распаковку
if not ISArcExtract ( 0, 0, ExpandConstant('{src}\data-1.arc'), ExpandConstant('{app}\'), '', false, '', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}'), notPCFonFLY{PCFonFLY}) then break;

 

Pipocooling

Участник
Булат Зиганшин, a как убить процесс FAZip при ошибке и отмене установки ? во время распаковки если нажимаю отменить идет пауза а в процессах остается FAZip
 

zapsip

Участник
Что означает знак равенства по пути :
команды :
информация об архиве :
солид-блоки :
метод.
Там
srep+lzma:d=512m:mf=bt4:fb=128:mc=100000
Меня смутил символ знака равенства.
Что он означает ?
 
Сверху