All of lore.kernel.org
 help / color / mirror / Atom feed
From: Emil Lenngren <emil.lenngren@gmail.com>
To: Richard Weinberger <richard@sigma-star.at>
Cc: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>,
	linux-mtd@lists.infradead.org,
	David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Subject: Re: [PATCH v2] mkfs.ubifs: Add ZSTD compression
Date: Mon, 10 Jun 2019 19:34:53 +0200	[thread overview]
Message-ID: <CAO1O6sc4RfdrDGiJgXYZaDeZ2e46Rr=PFhqFYYWB9Gqd8XH8NQ@mail.gmail.com> (raw)
In-Reply-To: <1380627689.233779.1559939049026.JavaMail.zimbra@sigma-star.at>

Hi all,

Den fre 7 juni 2019 kl 22:24 skrev Richard Weinberger <richard@sigma-star.at>:
>
> Emil,
>
> ----- Ursprüngliche Mail -----
> > The new mtd-utils with this patch doesn't compile on Ubuntu 18.04 LTS
> > since it uses a slightly older version of zstd (1.3.3) that didn't
> > have the macro ZSTD_CLEVEL_DEFAULT defined, which was introduced in
> > version 1.3.5. Could you maybe consider adding the following lines in
> > compr.c:
> >
> > #ifndef ZSTD_CLEVEL_DEFAULT
> > #define ZSTD_CLEVEL_DEFAULT 3
> > #endif
> >
> > or similar, which make it compile on slightly older distributions?
>
> If I read the docs correctly, we can just pass 0 as compression level,
> which will default to ZSTD_CLEVEL_DEFAULT.
> https://github.com/facebook/zstd/pull/1174/commits/e34c000e44444b9f8bd62e5af0a355ee186eb21f
>
> This should work on all zstd versions.

After some more investigations, although increasing compression level
certainly increases compression time, decompression time does not seem
to be increased by increasing compression level. See
http://www.open-zfs.org/w/images/b/b3/03-OpenZFS_2017_-_ZStandard_in_ZFS.pdf
page 9 for a benchmark. The benchmark even shows this seems to apply
to gz as well...

SquashFS has also added support for zstd and squashfs-tools uses level
15 as the default level (see
https://git.kernel.org/pub/scm/fs/squashfs/squashfs-tools.git/commit/?id=e38956b92f738518c29734399629e7cdb33072d3
at the bottom).

While the kernel compression level should maybe stay at 3, for
mkfs.ubifs where speed doesn't matter that much, a higher level such
as 15 might not be bad after all. So I have two different proposals:
either just set level 15 OR set level 15 and also provide an option
for mkfs.ubifs to override it if one for some reason wants to generate
the image faster.

What do you think?

/Emil

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

  reply	other threads:[~2019-06-10 17:35 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-01 10:43 [PATCH v2] mkfs.ubifs: Add ZSTD compression Sebastian Andrzej Siewior
2019-06-02 21:37 ` David Oberhollenzer
2019-06-07 14:20 ` Emil Lenngren
2019-06-07 20:24   ` Richard Weinberger
2019-06-10 17:34     ` Emil Lenngren [this message]
2019-06-11 17:21       ` Sebastian Andrzej Siewior

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='CAO1O6sc4RfdrDGiJgXYZaDeZ2e46Rr=PFhqFYYWB9Gqd8XH8NQ@mail.gmail.com' \
    --to=emil.lenngren@gmail.com \
    --cc=david.oberhollenzer@sigma-star.at \
    --cc=linux-mtd@lists.infradead.org \
    --cc=richard@sigma-star.at \
    --cc=sebastian@breakpoint.cc \
    /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.