All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Masover <ninja@slaphack.com>
To: Nigel Cunningham <ncunningham@linuxmail.org>
Cc: Jan Engelhardt <jengelh@linux01.gwdg.de>,
	Edward Shishkin <edward@namesys.com>,
	Stefan Traby <stefan@hello-penguin.com>,
	Hans Reiser <reiser@namesys.com>,
	Alexey Dobriyan <adobriyan@gmail.com>,
	reiserfs-list@namesys.com, linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@osdl.org>
Subject: Re: Reiser4 und LZO compression
Date: Tue, 29 Aug 2006 03:23:47 -0500	[thread overview]
Message-ID: <44F3F993.3000907@slaphack.com> (raw)
In-Reply-To: <1156830102.3790.15.camel@nigel.suspend2.net>

Nigel Cunningham wrote:
> Hi.
> 
> On Tue, 2006-08-29 at 06:05 +0200, Jan Engelhardt wrote:
>>>>>> Hmm.  LZO is the best compression algorithm for the task as measured by
>>>>>> the objectives of good compression effectiveness while still having very
>>>>>> low CPU usage (the best of those written and GPL'd, there is a slightly
>>>>>> better one which is proprietary and uses more CPU, LZRW if I remember
>>>>>> right.  The gzip code base uses too much CPU, though I think Edward made
>>>>> I don't think that LZO beats LZF in both speed and compression ratio.
>>>>>
>>>>> LZF is also available under GPL (dual-licensed BSD) and was choosen in favor
>>>>> of LZO for the next generation suspend-to-disk code of the Linux kernel.
>>>>>
>>>>> see: http://www.goof.com/pcg/marc/liblzf.html
>>>> thanks for the info, we will compare them
>>> For Suspend2, we ended up converting the LZF support to a cryptoapi
>>> plugin. Is there any chance that you could use cryptoapi modules? We
>>> could then have a hope of sharing the support.
>> I am throwing in gzip: would it be meaningful to use that instead? The 
>> decoder (inflate.c) is already there.
>>
>> 06:04 shanghai:~/liblzf-1.6 > l configure*
>> -rwxr-xr-x  1 jengelh users 154894 Mar  3  2005 configure
>> -rwxr-xr-x  1 jengelh users  26810 Mar  3  2005 configure.bz2
>> -rw-r--r--  1 jengelh users  30611 Aug 28 20:32 configure.gz-z9
>> -rw-r--r--  1 jengelh users  30693 Aug 28 20:32 configure.gz-z6
>> -rw-r--r--  1 jengelh users  53077 Aug 28 20:32 configure.lzf
> 
> We used gzip when we first implemented compression support, and found it
> to be far too slow. Even with the fastest compression options, we were
> only getting a few megabytes per second. Perhaps I did something wrong
> in configuring it, but there's not that many things to get wrong!

All that comes to mind is the speed/quality setting -- the number from 1 
to 9.  Recently, I backed up someone's hard drive using -1, and I 
believe I was still able to saturate... the _network_.  Definitely try 
again if you haven't changed this, but I can't imagine I'm the first 
persson to think of it.

 From what I remember, gzip -1 wasn't faster than the disk.  But at 
least for (very) repetitive data, I was wrong:

eve:~ sanity$ time bash -c 'dd if=/dev/zero of=test bs=10m count=10; sync'
10+0 records in
10+0 records out
104857600 bytes transferred in 3.261990 secs (32145287 bytes/sec)

real    0m3.746s
user    0m0.005s
sys     0m0.627s
eve:~ sanity$ time bash -c 'dd if=/dev/zero bs=10m count=10 | gzip -v1 > 
test; sync'
10+0 records in
10+0 records out
104857600 bytes transferred in 2.404093 secs (43616282 bytes/sec)
  99.5%

real    0m2.558s
user    0m1.554s
sys     0m0.680s
eve:~ sanity$



This was on OS X, but I think it's still valid -- this is a slightly 
older Powerbook, with a 5400 RPM drive, 1.6 ghz G4.

-1 is still worlds better than nothing.  The backup was over 15 gigs, 
down to about 6 -- loads of repetitive data, I'm sure, but that's where 
you win with compression anyway.

Well, you use cryptoapi anyway, so it should be easy to just let the 
user pick a plugin, right?

  reply	other threads:[~2006-08-29  8:23 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-27  0:34 Reiser4 und LZO compression Alexey Dobriyan
2006-08-27  8:04 ` Andrew Morton
2006-08-27  8:49   ` Ray Lee
2006-08-27  9:42   ` David Masover
2006-08-28 17:34     ` Jindrich Makovicka
2006-08-28 18:05       ` Edward Shishkin
2006-08-28 12:42   ` Jörn Engel
2006-08-29 13:14   ` PFC
2006-08-29 17:38     ` David Masover
2006-08-28 17:06 ` Hans Reiser
2006-08-28 17:37   ` Stefan Traby
2006-08-28 18:15     ` Edward Shishkin
2006-08-28 21:48       ` Nigel Cunningham
2006-08-28 23:32         ` Hans Reiser
2006-08-29  4:05         ` Jan Engelhardt
2006-08-29  5:41           ` Nigel Cunningham
2006-08-29  8:23             ` David Masover [this message]
2006-08-29  9:57               ` Nigel Cunningham
2006-08-29 11:09                 ` Ray Lee
2006-08-29 11:38                 ` Edward Shishkin
2006-08-29 22:03                   ` Nigel Cunningham
2006-08-29  4:59         ` Paul Mundt
2006-08-29  5:47           ` Nigel Cunningham
2006-08-29 13:45           ` PFC
2006-08-29 14:38             ` Stefan Traby
2006-08-29 15:55               ` PFC
2006-08-29 17:56                 ` Hans Reiser
2006-08-29 18:31                   ` David Masover
2006-08-29 18:36                     ` Gregory Maxwell
2006-08-29 19:11                       ` David Masover
2006-08-29 19:38                         ` Hans Reiser
2006-08-29 20:03                           ` David Masover
2006-08-29 22:15                             ` Toby Thain
2006-08-29 22:42                               ` David Masover
2006-08-30  9:17                                 ` PFC
2006-08-30 10:45                                   ` David Masover
2006-08-30 16:50                                   ` Edward Shishkin
2006-08-30 16:55                                     ` Hans Reiser
2006-08-31  9:32                                       ` Clemens Eisserer
2006-08-31 12:00                                         ` Edward Shishkin
2006-08-31 15:14                                           ` Clemens Eisserer
2006-08-31 16:55                                           ` Hans Reiser
2006-08-31 18:08                                             ` Edward Shishkin
2006-08-31 19:22                                         ` David Masover
2006-08-29 15:41             ` Gregory Maxwell
2006-08-29 17:42             ` Hans Reiser
2006-08-29  9:29         ` Edward Shishkin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44F3F993.3000907@slaphack.com \
    --to=ninja@slaphack.com \
    --cc=adobriyan@gmail.com \
    --cc=akpm@osdl.org \
    --cc=edward@namesys.com \
    --cc=jengelh@linux01.gwdg.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ncunningham@linuxmail.org \
    --cc=reiser@namesys.com \
    --cc=reiserfs-list@namesys.com \
    --cc=stefan@hello-penguin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.