[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180914085409.GA27886@tassilo.jf.intel.com>
Date: Fri, 14 Sep 2018 01:54:09 -0700
From: Andi Kleen <ak@...ux.intel.com>
To: Alexey Budankov <alexey.budankov@...ux.intel.com>
Cc: linux-kernel-owner@...r.kernel.org, peterz@...radead.org,
tglx@...utronix.de, acme@...nel.org, mingo@...hat.com,
linux-kernel@...r.kernel.org, jolsa@...hat.com,
namhyung@...nel.org, Kan Liang <kan.liang@...ux.intel.com>
Subject: Re: [PATCH] perf/x86/intel/lbr: Optimize context switches for LBR
> > In principle the LBRs need to be flushed between threads. So does
> > current code.
>
> IMHO, ideally, LBRs stack would be preserved and restored when
> switching between execution stacks. That would allow implementing
> per-thread statistical call graph view in Perf tools, fully based
> on HW capabilities. It could be advantageous for some cases, in
> comparison with traditional dwarf based call graph.
This is already supported when you use LBR call stack mode
(perf record --call-graph lbr)
This change is only optimizing the case when call stack mode is not used.
Of course in call stack mode the context switch overhead is even higher,
because it not only writes, but also reads.
-Andi
Powered by blists - more mailing lists