public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Alexey Budankov <alexey.budankov@linux.intel.com>
Cc: Ingo Molnar <mingo@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Jiri Olsa <jolsa@redhat.com>, Namhyung Kim <namhyung@kernel.org>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Andi Kleen <ak@linux.intel.com>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 0/4] perf: enable compression of record mode trace to save storage space
Date: Tue, 29 Jan 2019 13:13:32 +0100	[thread overview]
Message-ID: <20190129121332.GL4344@kernel.org> (raw)
In-Reply-To: <de604869-4d2e-689c-39ba-368d444c809a@linux.intel.com>

Em Tue, Jan 29, 2019 at 02:39:00PM +0300, Alexey Budankov escreveu:
> Hi,
> On 29.01.2019 13:53, Arnaldo Carvalho de Melo wrote:
> > Em Tue, Jan 29, 2019 at 11:45:43AM +0100, Arnaldo Carvalho de Melo escreveu:
> >> Em Mon, Jan 28, 2019 at 09:40:28AM +0300, Alexey Budankov escreveu:
> >>> The patch set implements runtime trace compression for record mode and 
> >>> trace file decompression for report mode. Zstandard API [1] is used for 
> >>> compression/decompression of data that come from perf_events kernel 
> >>
> >> Interesting, wasn't aware of this zstd library, I wonder if we can add
> >> it and switch the other compression libraries we link against, so that
> >> we're not adding one more library to the dep list of perf but removing
> >> some instead, do you think this would be possible?
> 
> Replacing of incorporated compression APIs was not evaluated or tested in 
> the scope of this patch set work. However according to their numbers in the 
> docs and the numbers that we have got during testing Zstd API outperforms 
> the exiting compression libraries as in terms of speed as in terms of 
> compression ratio (at least libz). Backward compatibility needs to be taken
> into account so that old perf files would open by newer perf tool versions.

Right, I'm not talking in the scope of this patch, its just that while
looking at it, I notice that we're adding yet another compression
library and its description seemed to imply it would support the other
compression formats, which I've learned its not the case, so nevermind.

I'm not talking about using just zstd, as what we mostly do with the
compression libraries is to decompress, not compress, for instance, we
need to uncompress kernel modules to get to its symbols, do annotation
with it, etc.

- Arnaldo
 
> -Alexey
> 
> >>
> >>   $ ldd ~/bin/perf | wc -l
> >>   30
> >>   $ ldd ~/bin/perf | grep z
> >> 	liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f3dcc356000)
> >> 	libz.so.1 => /lib64/libz.so.1 (0x00007f3dcb2aa000)
> >> 	libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f3dcb218000)
> >>   $
> >>
> >> Humm, from the github page it says:
> >>
> >> -----
> >> The project is provided as an open-source dual BSD and GPLv2 licensed C
> >> library, and a command line utility producing and decoding .zst, .gz,
> >> .xz and .lz4 files. Should your project require another programming
> >> language, a list of known ports and bindings is provided on Zstandard
> >> homepage.
> >> -----
> >>
> >> So it would cover just liblzma and libz, right?
> > 
> > Nevermind;
> > 
> > [acme@quaco perf]$ zstdcat ~/git/perf/perf-5.0.0-rc2.tar.xz
> > zstd: /home/acme/git/perf/perf-5.0.0-rc2.tar.xz: xz/lzma file cannot be uncompressed (zstd compiled without HAVE_LZMA) -- ignored
> > 
> > So it handles those formats, _if_ linked with those libraries, duh.
> > 
> > - Arnaldo
> > 

-- 

- Arnaldo

  reply	other threads:[~2019-01-29 12:13 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <b834df0e-26b5-3f8c-7a43-18f675fb7434@linux.intel.com>
2019-01-29 10:45 ` [PATCH v2 0/4] perf: enable compression of record mode trace to save storage space Arnaldo Carvalho de Melo
2019-01-29 10:53   ` Arnaldo Carvalho de Melo
2019-01-29 11:39     ` Alexey Budankov
2019-01-29 12:13       ` Arnaldo Carvalho de Melo [this message]
2019-01-29 16:39         ` Alexey Budankov
2019-01-29 17:25   ` Andi Kleen
2019-02-11 20:17 Alexey Budankov
2019-02-12 12:27 ` Arnaldo Carvalho de Melo
2019-02-12 14:06   ` Alexey Budankov
  -- strict thread matches above, loose matches on Subject: below --
2019-01-28  7:02 Alexey Budankov
2019-02-11 13:52 ` Jiri Olsa
2019-02-11 13:59   ` Alexey Budankov

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=20190129121332.GL4344@kernel.org \
    --to=acme@kernel.org \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=alexey.budankov@linux.intel.com \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox