From c2a06db69de7562024524a89a7b0f0f7e61c5999 Mon Sep 17 00:00:00 2001 From: Ian Wienand Date: Fri, 9 Sep 2011 20:19:35 +0200 Subject: gzip: new GZIP_BIG_MEM option Enabling the config option on my standard linux box and zipping a random 250mb file: small mem: 21.85user 0.44system 0:22.35elapsed big mem: 13.45user 0.46system 0:13.94elapsed Signed-off-by: Ian Wienand Signed-off-by: Denys Vlasenko --- archival/Config.src | 10 ++++++++++ archival/gzip.c | 6 +++++- 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'archival') diff --git a/archival/Config.src b/archival/Config.src index 81788ecd9..9f4908178 100644 --- a/archival/Config.src +++ b/archival/Config.src @@ -187,6 +187,16 @@ config FEATURE_GZIP_LONG_OPTIONS help Enable use of long options, increases size by about 106 Bytes +config GZIP_BIG_MEM + bool "Trade memory for gzip speed" + default n + depends on GZIP + help + Enable big memory options for gzip, including larger I/O + buffers and bigger hash tables. Faster, but uses at least + twice as much memory. Select if speed is more important than + memory use. + config LZOP bool "lzop" default y diff --git a/archival/gzip.c b/archival/gzip.c index 403eb4dcb..0e0b68142 100644 --- a/archival/gzip.c +++ b/archival/gzip.c @@ -81,7 +81,11 @@ aa: 85.1% -- replaced with aa.gz /* =========================================================================== */ -#define SMALL_MEM +#if ENABLE_GZIP_BIG_MEM +# define BIG_MEM +#else +# define SMALL_MEM +#endif #ifndef INBUFSIZ # ifdef SMALL_MEM -- cgit v1.2.3