mirror of
https://github.com/ckolivas/lrzip.git
synced 2025-12-06 07:12:00 +01:00
Bump version number up to 0.530.
Update all documentation. Minor fixes by Jari Aalto for build and docs.
This commit is contained in:
parent
6e4fdc97f8
commit
1637598c3f
22
ChangeLog
22
ChangeLog
|
|
@ -1,4 +1,26 @@
|
||||||
lrzip ChangeLog
|
lrzip ChangeLog
|
||||||
|
NOVEMBER 2010, version 0.530 Con Kolivas
|
||||||
|
* Massive rewrite of backend compression phase. Now the stream is split up
|
||||||
|
into as many chunks as there are CPUs, of at least 10MB in size, that are
|
||||||
|
still mallocable. Once the stream has reached a chunk of this size, its buffer
|
||||||
|
is handed to a new backend compression thread which works while the rzip stream
|
||||||
|
continues processing. This has the effect of parallelising workloads almost
|
||||||
|
linearly up to the number of CPUs on the slower compression backends. ZPAQ,
|
||||||
|
in particular, is effectively 4x faster on quad core now. Decompression is
|
||||||
|
unchanged.
|
||||||
|
* Added the -p option to allow the number of processors to be specified to
|
||||||
|
override the detected number.
|
||||||
|
* Changed the default level back to 7 as 9 wasn't offering significanly more
|
||||||
|
compression but was adding time.
|
||||||
|
* Increased the size of all the buffers to other backends now as well, since
|
||||||
|
each block adds overhead with its header.
|
||||||
|
* Numerous alterations to screen output to cope with new threaded compression
|
||||||
|
phase.
|
||||||
|
* Deprecated the -P option since not setting the file permissions only
|
||||||
|
generates a warning now, not a failure.
|
||||||
|
* Updated docs and benchmarks.
|
||||||
|
|
||||||
|
|
||||||
NOVEMBER 2010, version 0.520 Con Kolivas
|
NOVEMBER 2010, version 0.520 Con Kolivas
|
||||||
* Distros don't like 3 point version numbering so just repackaged as 0.520.
|
* Distros don't like 3 point version numbering so just repackaged as 0.520.
|
||||||
|
|
||||||
|
|
|
||||||
10
Makefile.in
10
Makefile.in
|
|
@ -6,7 +6,8 @@
|
||||||
prefix=@prefix@
|
prefix=@prefix@
|
||||||
exec_prefix=@exec_prefix@
|
exec_prefix=@exec_prefix@
|
||||||
datarootdir=@datarootdir@
|
datarootdir=@datarootdir@
|
||||||
ASM_OBJ=@ASM_OBJ@
|
#ASM_OBJ=@ASM_OBJ@
|
||||||
|
ASM_OBJ=7zCrc.o
|
||||||
PACKAGE_TARNAME=@PACKAGE_TARNAME@
|
PACKAGE_TARNAME=@PACKAGE_TARNAME@
|
||||||
INSTALL_BIN=$(exec_prefix)/bin
|
INSTALL_BIN=$(exec_prefix)/bin
|
||||||
INSTALL_MAN1=@mandir@/man1
|
INSTALL_MAN1=@mandir@/man1
|
||||||
|
|
@ -24,7 +25,12 @@ LZMA_CFLAGS=-I@top_srcdir@/lzma/C -DCOMPRESS_MF_MT -D_REENTRANT
|
||||||
INSTALLCMD=@INSTALL@
|
INSTALLCMD=@INSTALL@
|
||||||
LN_S=@LN_S@
|
LN_S=@LN_S@
|
||||||
RM=rm -f
|
RM=rm -f
|
||||||
|
|
||||||
|
ifneq ($(NO_ASSEMBLER),)
|
||||||
ASM=@ASM@
|
ASM=@ASM@
|
||||||
|
else
|
||||||
|
ASM=7zCrc.o
|
||||||
|
endif
|
||||||
|
|
||||||
VPATH=@srcdir@
|
VPATH=@srcdir@
|
||||||
srcdir=@srcdir@
|
srcdir=@srcdir@
|
||||||
|
|
@ -34,7 +40,7 @@ SHELL=/bin/sh
|
||||||
.SUFFIXES: .c .o
|
.SUFFIXES: .c .o
|
||||||
|
|
||||||
OBJS= main.o rzip.o runzip.o stream.o util.o \
|
OBJS= main.o rzip.o runzip.o stream.o util.o \
|
||||||
@ASM_OBJ@ \
|
7zCrc.o \
|
||||||
zpipe.o \
|
zpipe.o \
|
||||||
Threads.o \
|
Threads.o \
|
||||||
LzFind.o \
|
LzFind.o \
|
||||||
|
|
|
||||||
26
README
26
README
|
|
@ -106,6 +106,10 @@ compression, and even use a compression window larger than you have ram.
|
||||||
Expect serious swapping to occur if your file is larger than your ram and for
|
Expect serious swapping to occur if your file is larger than your ram and for
|
||||||
it to take many times longer.
|
it to take many times longer.
|
||||||
|
|
||||||
|
Q. I want the absolute fastest decent compression I can possibly get.
|
||||||
|
A. Try the command line options -Ml. This will use the maximum possible
|
||||||
|
memory, lzo backend compression, and level 7 compression (1 isn't much faster).
|
||||||
|
|
||||||
Q. How much slower is the unlimited mode?
|
Q. How much slower is the unlimited mode?
|
||||||
A. It depends on 2 things. First, just how much larger than your ram the file
|
A. It depends on 2 things. First, just how much larger than your ram the file
|
||||||
is, as the bigger the difference, the slower it will be. The second is how much
|
is, as the bigger the difference, the slower it will be. The second is how much
|
||||||
|
|
@ -161,12 +165,11 @@ lrzip source code. Libraries with functions similar to compress() and
|
||||||
decompress() functions of zlib would make the process most painless. Please
|
decompress() functions of zlib would make the process most painless. Please
|
||||||
tell me if you have such a library so I can include it :)
|
tell me if you have such a library so I can include it :)
|
||||||
|
|
||||||
Q. What's this "Progress percentage pausing during lzma compression" message?
|
Q. What's this "Starting lzma back end compression thread..." message?
|
||||||
A. While I'm a big fan of progress percentage being visible, unfortunately
|
A. While I'm a big fan of progress percentage being visible, unfortunately
|
||||||
lzma compression can't currently be tracked when handing over 100+MB chunks
|
lzma compression can't currently be tracked when handing over 100+MB chunks
|
||||||
over to the lzma library. Therefore you'll see progress percentage until
|
over to the lzma library. Therefore you'll see progress percentage until
|
||||||
each chunk is handed over to the lzma library. lzo, bzip2 or no compression
|
each chunk is handed over to the lzma library.
|
||||||
doesn't have this problem and shows progress continuously.
|
|
||||||
|
|
||||||
Q. What's this "lzo testing for incompressible data" message?
|
Q. What's this "lzo testing for incompressible data" message?
|
||||||
A. Other compression is much slower, and lzo is the fastest. To help speed up
|
A. Other compression is much slower, and lzo is the fastest. To help speed up
|
||||||
|
|
@ -189,10 +192,6 @@ option with lzma and are never anywhere near as large as the compression
|
||||||
requirements. However if you're on 64bit and you use a compression window
|
requirements. However if you're on 64bit and you use a compression window
|
||||||
greater than 2GB, it might not be possible to decompress it on 32bit machines.
|
greater than 2GB, it might not be possible to decompress it on 32bit machines.
|
||||||
|
|
||||||
Q. I've changed the compression level with -L in combination with -l or -z and
|
|
||||||
the file size doesn't vary?
|
|
||||||
A. That's right, -l and -z only has one compression level.
|
|
||||||
|
|
||||||
Q. Why are you including bzip2 compression?
|
Q. Why are you including bzip2 compression?
|
||||||
A. To maintain a similar compression format to the original rzip (although the
|
A. To maintain a similar compression format to the original rzip (although the
|
||||||
other modes are more useful).
|
other modes are more useful).
|
||||||
|
|
@ -211,11 +210,14 @@ the only compression format that can do any significant compression of
|
||||||
multimedia.
|
multimedia.
|
||||||
|
|
||||||
Q. Is this multithreaded?
|
Q. Is this multithreaded?
|
||||||
A. As of version 0.21, the answer is yes for lzma compression only thanks to a
|
A. As of version 0.530, it is HEAVILY multithreaded with the back end
|
||||||
multithreaded lzma library. However I have not found the gains to scale well
|
compression phase, and will continue to process the rzip pre-processing phase
|
||||||
with number of cpus, but there are definite performance gains with more cpus.
|
so when using one of the more CPU intensive backend compressions like lzma or
|
||||||
It is important to note that the mulithreading actually decreases the
|
zpaq, SMP machines will show massive speed improvements. Lrzip will detect the
|
||||||
compression somewhat. It's a tradeoff either way.
|
number of CPUs to use, but it can be overridden with the -p option if the
|
||||||
|
slightly better compression is desired more than speed. Decompression at the
|
||||||
|
moment is not multithreaded, but is already much faster than the compression
|
||||||
|
phase (except for zpaq), but enhancements for decompression are planned.
|
||||||
|
|
||||||
Q. This uses heaps of memory, can I make it use less?
|
Q. This uses heaps of memory, can I make it use less?
|
||||||
A. Well you can by setting -w to the lowest value (1) but the huge use of
|
A. Well you can by setting -w to the lowest value (1) but the huge use of
|
||||||
|
|
|
||||||
2
TODO
2
TODO
|
|
@ -17,7 +17,7 @@ Get the ASM working on 64bit.
|
||||||
|
|
||||||
Clean up the config system since it's a mystery to me.
|
Clean up the config system since it's a mystery to me.
|
||||||
|
|
||||||
Increased multi-threading.
|
Multi-threading on decompression.
|
||||||
|
|
||||||
Make stdout work without a temporary file.
|
Make stdout work without a temporary file.
|
||||||
|
|
||||||
|
|
|
||||||
15
WHATS-NEW
15
WHATS-NEW
|
|
@ -1,3 +1,18 @@
|
||||||
|
lrzip-0.530
|
||||||
|
|
||||||
|
MASSIVE MULTITHREADING on the compression phase. Lrzip will now use as many
|
||||||
|
threads as you have CPU cores for the back end compression, and even continue
|
||||||
|
doing the rzip preprocessing stage as long as it can which the other threads
|
||||||
|
continue. This makes the slower compression algorithms (lzma and zpaq) much
|
||||||
|
faster on multicore machines, to the point of making zpaq compression almost
|
||||||
|
as fast as single threaded lzma compression.
|
||||||
|
-p option added to allow you to specify number of processors to override the
|
||||||
|
built-in test, or if you wish to disable threading.
|
||||||
|
-P option to not set permissions has now been removed since failing to set
|
||||||
|
permissions is only a warning now and not a failure.
|
||||||
|
Further improvements to the progress output.
|
||||||
|
Updated benchmarks and docs.
|
||||||
|
|
||||||
lrzip-0.520
|
lrzip-0.520
|
||||||
|
|
||||||
Just changed version numbering back to 2 point.
|
Just changed version numbering back to 2 point.
|
||||||
|
|
|
||||||
22
configure
vendored
22
configure
vendored
|
|
@ -1,6 +1,6 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.67 for lrzip 0.520.
|
# Generated by GNU Autoconf 2.67 for lrzip 0.530.
|
||||||
#
|
#
|
||||||
# Report bugs to <kernel@kolivas.org>.
|
# Report bugs to <kernel@kolivas.org>.
|
||||||
#
|
#
|
||||||
|
|
@ -551,9 +551,9 @@ MAKEFLAGS=
|
||||||
|
|
||||||
# Identity of this package.
|
# Identity of this package.
|
||||||
PACKAGE_NAME='lrzip'
|
PACKAGE_NAME='lrzip'
|
||||||
PACKAGE_TARNAME='lrzip-0.520'
|
PACKAGE_TARNAME='lrzip-0.530'
|
||||||
PACKAGE_VERSION='0.520'
|
PACKAGE_VERSION='0.530'
|
||||||
PACKAGE_STRING='lrzip 0.520'
|
PACKAGE_STRING='lrzip 0.530'
|
||||||
PACKAGE_BUGREPORT='kernel@kolivas.org'
|
PACKAGE_BUGREPORT='kernel@kolivas.org'
|
||||||
PACKAGE_URL=''
|
PACKAGE_URL=''
|
||||||
|
|
||||||
|
|
@ -1221,7 +1221,7 @@ if test "$ac_init_help" = "long"; then
|
||||||
# Omit some internal or obsolete options to make the list less imposing.
|
# Omit some internal or obsolete options to make the list less imposing.
|
||||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||||
cat <<_ACEOF
|
cat <<_ACEOF
|
||||||
\`configure' configures lrzip 0.520 to adapt to many kinds of systems.
|
\`configure' configures lrzip 0.530 to adapt to many kinds of systems.
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||||
|
|
||||||
|
|
@ -1269,7 +1269,7 @@ Fine tuning of the installation directories:
|
||||||
--infodir=DIR info documentation [DATAROOTDIR/info]
|
--infodir=DIR info documentation [DATAROOTDIR/info]
|
||||||
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
|
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
|
||||||
--mandir=DIR man documentation [DATAROOTDIR/man]
|
--mandir=DIR man documentation [DATAROOTDIR/man]
|
||||||
--docdir=DIR documentation root [DATAROOTDIR/doc/lrzip-0.520]
|
--docdir=DIR documentation root [DATAROOTDIR/doc/lrzip-0.530]
|
||||||
--htmldir=DIR html documentation [DOCDIR]
|
--htmldir=DIR html documentation [DOCDIR]
|
||||||
--dvidir=DIR dvi documentation [DOCDIR]
|
--dvidir=DIR dvi documentation [DOCDIR]
|
||||||
--pdfdir=DIR pdf documentation [DOCDIR]
|
--pdfdir=DIR pdf documentation [DOCDIR]
|
||||||
|
|
@ -1286,7 +1286,7 @@ fi
|
||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
if test -n "$ac_init_help"; then
|
||||||
case $ac_init_help in
|
case $ac_init_help in
|
||||||
short | recursive ) echo "Configuration of lrzip 0.520:";;
|
short | recursive ) echo "Configuration of lrzip 0.530:";;
|
||||||
esac
|
esac
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
|
|
||||||
|
|
@ -1375,7 +1375,7 @@ fi
|
||||||
test -n "$ac_init_help" && exit $ac_status
|
test -n "$ac_init_help" && exit $ac_status
|
||||||
if $ac_init_version; then
|
if $ac_init_version; then
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
lrzip configure 0.520
|
lrzip configure 0.530
|
||||||
generated by GNU Autoconf 2.67
|
generated by GNU Autoconf 2.67
|
||||||
|
|
||||||
Copyright (C) 2010 Free Software Foundation, Inc.
|
Copyright (C) 2010 Free Software Foundation, Inc.
|
||||||
|
|
@ -2014,7 +2014,7 @@ cat >config.log <<_ACEOF
|
||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
It was created by lrzip $as_me 0.520, which was
|
It was created by lrzip $as_me 0.530, which was
|
||||||
generated by GNU Autoconf 2.67. Invocation command line was
|
generated by GNU Autoconf 2.67. Invocation command line was
|
||||||
|
|
||||||
$ $0 $@
|
$ $0 $@
|
||||||
|
|
@ -5324,7 +5324,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||||
# report actual input values of CONFIG_FILES etc. instead of their
|
# report actual input values of CONFIG_FILES etc. instead of their
|
||||||
# values after options handling.
|
# values after options handling.
|
||||||
ac_log="
|
ac_log="
|
||||||
This file was extended by lrzip $as_me 0.520, which was
|
This file was extended by lrzip $as_me 0.530, which was
|
||||||
generated by GNU Autoconf 2.67. Invocation command line was
|
generated by GNU Autoconf 2.67. Invocation command line was
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
CONFIG_FILES = $CONFIG_FILES
|
||||||
|
|
@ -5386,7 +5386,7 @@ _ACEOF
|
||||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||||
ac_cs_version="\\
|
ac_cs_version="\\
|
||||||
lrzip config.status 0.520
|
lrzip config.status 0.530
|
||||||
configured by $0, generated by GNU Autoconf 2.67,
|
configured by $0, generated by GNU Autoconf 2.67,
|
||||||
with options \\"\$ac_cs_config\\"
|
with options \\"\$ac_cs_config\\"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
dnl Process this file with autoconf to produce a configure script.
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
AC_INIT([lrzip],[0.520],[kernel@kolivas.org],[lrzip-0.520])
|
AC_INIT([lrzip],[0.530],[kernel@kolivas.org],[lrzip-0.530])
|
||||||
AC_CONFIG_HEADER(config.h)
|
AC_CONFIG_HEADER(config.h)
|
||||||
# see what our system is!
|
# see what our system is!
|
||||||
AC_CANONICAL_HOST
|
AC_CANONICAL_HOST
|
||||||
|
|
|
||||||
|
|
@ -13,28 +13,26 @@ backend.
|
||||||
linux-2.6.31.tar
|
linux-2.6.31.tar
|
||||||
|
|
||||||
These are benchmarks performed on a 3GHz quad core Intel Core2 with 8GB ram
|
These are benchmarks performed on a 3GHz quad core Intel Core2 with 8GB ram
|
||||||
using lrzip v0.42.
|
using lrzip v0.530
|
||||||
|
|
||||||
Compression Size Percentage Compress Decompress
|
Compression Size Percentage Compress Decompress
|
||||||
None 365711360 100
|
None 365711360 100
|
||||||
7z 53315279 14.6 2m4s 0m5.4s
|
7z 53315279 14.6 1m58s 0m5.6s
|
||||||
lrzip 52372722 14.3 2m48s 0m8.3s
|
lrzip 52724172 14.4 1m33s 0m15.6s
|
||||||
lrzip -z 43455498 11.9 10m11s 10m14s
|
lrzip -z 43223954 11.8 3m42s 10m14s
|
||||||
lrzip -l 112151676 30.7 0m14s 0m5.1s
|
lrzip -l 110893724 30.3 0m21s 0m13.4s
|
||||||
lrzip -g 73476127 20.1 0m29s 0m5.6s
|
lrzip -g 72746424 19.9 0m25s 0m13.8s
|
||||||
lrzip -b 60851152 16.6 0m43s 0m12.2s
|
lrzip -b 60774043 16.6 0m29s 0m19.8s
|
||||||
bzip2 62416571 17.1 0m44s 0m9.8s
|
bzip2 62416571 17.1 0m44s 0m10.5s
|
||||||
gzip 80563601 22.0 0m14s 0m2.8s
|
gzip 80563601 22.0 0m14s 0m3.0s
|
||||||
|
|
||||||
|
|
||||||
These results are interesting to note the compression of lrzip by default is
|
These results are interesting to note the compression of lrzip by default is
|
||||||
only slightly better than lzma, but at some cost in time at the compress and
|
only slightly better than lzma, but it's significantly faster thanks to its
|
||||||
decompress end of the spectrum. Clearly zpaq compression is much better than any
|
heavily multithreaded nature. Decompression is slower but I'm working on that.
|
||||||
other compression algorithm by far, but the speed cost on both compression and
|
Zpaq offers by far the best compression but at the cost of extra time. However
|
||||||
decompression is extreme. At this size compression, lzo is interesting because
|
with the heavily threaded nature of lrzip, it's not a lot longer given how
|
||||||
it's faster than simply copying the file but only offers modest compression.
|
much better its compression is.
|
||||||
What lrzip offers at this end of the spectrum is extreme compression if
|
|
||||||
desired.
|
|
||||||
|
|
||||||
|
|
||||||
Let's take six kernel trees one version apart as a tarball, linux-2.6.31 to
|
Let's take six kernel trees one version apart as a tarball, linux-2.6.31 to
|
||||||
|
|
@ -96,7 +94,7 @@ system and some basic working software on it. The default options on the
|
||||||
|
|
||||||
10GB Virtual image:
|
10GB Virtual image:
|
||||||
|
|
||||||
These benchmarks were done on the quad core with version 0.5.1
|
These benchmarks were done on the quad core with version 0.530
|
||||||
|
|
||||||
Compression Size Percentage Compress Time Decompress Time
|
Compression Size Percentage Compress Time Decompress Time
|
||||||
None 10737418240 100.0
|
None 10737418240 100.0
|
||||||
|
|
@ -104,24 +102,26 @@ gzip 2772899756 25.8 05m47s 2m46s
|
||||||
bzip2 2704781700 25.2 16m15s 6m19s
|
bzip2 2704781700 25.2 16m15s 6m19s
|
||||||
xz 2272322208 21.2 50m58s 3m52s
|
xz 2272322208 21.2 50m58s 3m52s
|
||||||
7z 2242897134 20.9 26m36s 5m41s
|
7z 2242897134 20.9 26m36s 5m41s
|
||||||
lrzip 1354237684 12.6 29m13s 6m55s
|
lrzip 1299228155 12.1 16m12s 4m32s
|
||||||
lrzip -M 1079528708 10.1 23m44s 4m05s
|
lrzip -M 1079682231 10.1 12m03s 4m05s
|
||||||
lrzip -l 1793312108 16.7 05m13s 3m12s
|
lrzip -l 1754694010 16.3 05m30s 3m12s
|
||||||
lrzip -lM 1413268368 13.2 04m18s 2m54s
|
lrzip -lM 1414958844 13.2 05m15s 2m57s
|
||||||
lrzip -z 1299844906 12.1 04h32m14s 04h33m
|
lrzip -zM 1066902006 9.9 71m20s 04h08m
|
||||||
lrzip -zM 1066902006 9.9 04h07m14s 04h08m
|
|
||||||
|
|
||||||
|
|
||||||
At this end of the spectrum things really start to heat up. The compression
|
At this end of the spectrum things really start to heat up. The compression
|
||||||
advantage is massive, with the lzo backend even giving much better results than
|
advantage is massive, with the lzo backend even giving much better results than
|
||||||
7z, and over a ridiculously short time. The default lzma backend is slightly
|
7z, and over a ridiculously short time. The improvements in version 0.530 in
|
||||||
slower than 7z, but provides a lot more compression. What appears to be a big
|
scalability with multiple CPUs has a huge impact on compression time here,
|
||||||
disappointment is actually zpaq here which takes more than 8 times longer than
|
with zpaq almost being as fast on quad core as xz is, yet producing a file
|
||||||
lzma for a measly .2% improvement. The reason is that most of the advantage here
|
less than half the size. Note that decompression was not multithreaded on
|
||||||
is achieved by the rzip first stage since there's a lot of redundant space over
|
v0.530, hence why zpaq decompression was so slow.
|
||||||
huge distances on a virtual image. The -M option which works the memory
|
What appears to be a big disappointment is actually zpaq here which takes more
|
||||||
subsystem rather hard making noticeable impact on the rest of the machine also
|
than 6 times longer than lzma for a measly .2% improvement. The reason is that
|
||||||
does further wonders for the compression and times.
|
most of the advantage here is achieved by the rzip first stage since there's a
|
||||||
|
lot of redundant space over huge distances on a virtual image. The -M option
|
||||||
|
which works the memory subsystem rather hard making noticeable impact on the
|
||||||
|
rest of the machine also does further wonders for the compression and times.
|
||||||
|
|
||||||
This should help govern what compression you choose. Small files are nicely
|
This should help govern what compression you choose. Small files are nicely
|
||||||
compressed with zpaq. Intermediate files are nicely compressed with lzma.
|
compressed with zpaq. Intermediate files are nicely compressed with lzma.
|
||||||
|
|
@ -131,4 +131,4 @@ Or, to make things easier, just use the default settings all the time and be
|
||||||
happy as lzma gives good results. :D
|
happy as lzma gives good results. :D
|
||||||
|
|
||||||
Con Kolivas
|
Con Kolivas
|
||||||
Tue, 7th Nov 2010
|
Tue, 13th Nov 2010
|
||||||
|
|
|
||||||
3
main.c
3
main.c
|
|
@ -708,8 +708,9 @@ int main(int argc, char *argv[])
|
||||||
print_verbose("Threading is %s. Number of CPUs detected: %d\n", control.threads > 1? "ENABLED" : "DISABLED",
|
print_verbose("Threading is %s. Number of CPUs detected: %d\n", control.threads > 1? "ENABLED" : "DISABLED",
|
||||||
control.threads);
|
control.threads);
|
||||||
print_verbose("Detected %lld bytes ram\n", control.ramsize);
|
print_verbose("Detected %lld bytes ram\n", control.ramsize);
|
||||||
|
print_verbose("Comrpession level %d\n", control.compression_level);
|
||||||
print_verbose("Nice Value: %d\n", control.nice_val);
|
print_verbose("Nice Value: %d\n", control.nice_val);
|
||||||
print_progress("Show Progress\n");
|
print_verbose("Show Progress\n");
|
||||||
print_maxverbose("Max ");
|
print_maxverbose("Max ");
|
||||||
print_verbose("Verbose\n");
|
print_verbose("Verbose\n");
|
||||||
if (FORCE_REPLACE)
|
if (FORCE_REPLACE)
|
||||||
|
|
|
||||||
|
|
@ -103,8 +103,8 @@ does not fit into the available ram, lrzip will use a moving second buffer as a
|
||||||
possible compression in the first rzip stage which can improve the compression
|
possible compression in the first rzip stage which can improve the compression
|
||||||
of ultra large files when they're bigger than the available ram. However it runs
|
of ultra large files when they're bigger than the available ram. However it runs
|
||||||
progressively slower the larger the difference between ram and the file size so
|
progressively slower the larger the difference between ram and the file size so
|
||||||
it is worth trying the -M option first to see if the whole file can be accessed
|
it is worth trying the \-M option first to see if the whole file can be accessed
|
||||||
in one pass, and then if not, it should be used together with the -M option (if
|
in one pass, and then if not, it should be used together with the \-M option (if
|
||||||
at all).
|
at all).
|
||||||
.IP
|
.IP
|
||||||
.IP "\fB-T 0\&.\&.10\fP"
|
.IP "\fB-T 0\&.\&.10\fP"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue