Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Если речь про компрессию lzma2 с помощью XTool - то в версии 0.7 она активируется параметром -l10Подскажите как использовать izma2.dll?. И как вообще она работает?
Update available
Changes
- fixed issues with fast-lzma2 being unable to set correct compression level
- updated deflate stream scanner
который: 2> xtool.log (не работает тоже)пишутся в stderr
это через гуи? а к батнику его можно присобачить?там же есть свой лог
оно конечно работает, лог пишется, подробный... только вот нужной информации там нету))используй --verbose, -v
извращуга!- - <test.dat >test.xtl
xtool.exe precomp -mzlib -c32mb -t100p-1 -v test.dat test.xtl 2>log.txt
Действительно работает, мне показалось, что так не писалось. Правда общая статистика не пишется, что значит, где-то да накосяченопроще же
procedure EncodeStats;
var
FHandle: THandle;
SBInfo: TConsoleScreenBufferInfo;
CLine: Integer;
SL: TStringList;
Coords: TCoord;
ulLength: Cardinal;
procedure Update;
var
I: Integer;
TS: TTimeSpan;
CreationTime, ExitTime, KernelTime, UserTime: TFileTime;
TT: TSystemTime;
I64: Int64;
begin
GetProcessTimes(GetCurrentProcess, CreationTime, ExitTime, KernelTime,
UserTime);
FileTimeToSystemTime(TFileTime(Int64(UserTime) + Int64(KernelTime)), TT);
SL[0] := 'Streams: ' + EncInfo.Processed.ToString + ' / ' +
EncInfo.Count.ToString;
TS := Stopwatch.Elapsed;
SL[1] := 'Time: ' + Format('%0:.2d:%1:.2d:%2:.2d',
[TS.Hours + TS.Days * 24, TS.Minutes, TS.Seconds]) + ' (CPU ' +
Format('%0:.2d:%1:.2d:%2:.2d', [TT.wHour + Pred(TT.wDay) * 24, TT.wMinute,
TT.wSecond]) + ')';
I64 := EncInfo.DecMem0 + EncInfo.DecMem1;
I64 := I64 div 1024;
if StoreDD > -2 then
begin
I := 4;
SL[2] := 'Duplicates: ' + EncInfo.DupCount.ToString + ' (' +
ConvertKB2TB(EncInfo.DecMem2 div 1024) + ') [' +
ConvertKB2TB(EncInfo.DupSize1 div 1024) + ' >> ' +
ConvertKB2TB(EncInfo.DupSize2 div 1024) + '] ';
if StoreDD > 0 then
begin
I := 5;
SL[3] := 'Srep decompression memory: ' +
ConvertKB2TB(EncInfo.SrepMem * 1024) + ' [' +
ConvertKB2TB((EncInfo.SrepMem * 1024) + (EncInfo.DecMem3 div 1024)) +
IfThen(EncInfo.DecMem3 > 0, '*', '') + '] ';
end;
end
else
I := 3;
SL[I] := 'Size: ' + ConvertKB2TB(EncInfo.InSize div 1024) +
IfThen(StoreDD > -2,
' >> ' + ConvertKB2TB((EncInfo.InflSize + EncInfo.DupSize2) div 1024), '')
+ ' >> ' + ConvertKB2TB(EncInfo.InflSize div 1024) +
IfThen(StoreDD > 0, ' >> ' + ConvertKB2TB((EncInfo.SrepSize) div 1024),
'') + IfThen(COMPRESS, ' >> ' + ConvertKB2TB((EncInfo.CompSize) div 1024),
'') + ' ';
SetConsoleCursorPosition(FHandle, Coords);
WriteConsole(FHandle, PChar(SL.Text), Length(SL.Text), ulLength, nil);
end;
begin
FHandle := GetStdHandle(STD_ERROR_HANDLE);
GetConsoleScreenBufferInfo(FHandle, SBInfo);
Coords.X := 0;
Coords.Y := SBInfo.dwCursorPosition.Y;
SL := TStringList.Create;
SL.Add('Streams: 0 / 0');
SL.Add('Time: 00:00:00');
if StoreDD > -2 then
begin
SL.Add('Duplicates: 0 (0.00 MB) [0.00 MB >> 0.00 MB]');
if StoreDD > 0 then
SL.Add('Srep decompression memory: 0.00 MB [0.00MB]');
end;
SL.Add('');
SL.Add('Size: ');
SL.Add('');
while Stopwatch.IsRunning do
begin
Update;
Sleep(500);
end;
Update;
SL.Free;
end;
Update available
Changes
- memory usage optimizations
Notes
Resources utilised by zlib, lzo, zstd and some other codecs have been made to initialize only when used, this was down to reduce memory usage and allocation.
If you're users like shazzla however, who want to utilise features of xtool before they are tested and ready for, there's a new parameter introduced in this release which makes xtool utilise the GPU's VRAM to improve precompression speed and reduce...