From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: speck@linutronix.de
Subject: [MODERATED] Re: [RFC][PATCH] performance walnuts
Date: Mon, 11 Feb 2019 15:17:36 -0500 [thread overview]
Message-ID: <20190211201735.GC11758@char.us.oracle.com> (raw)
In-Reply-To: <alpine.DEB.2.21.1902111429200.3197@nanos.tec.linutronix.de>
On Mon, Feb 11, 2019 at 03:06:52PM +0100, speck for Thomas Gleixner wrote:
> On Mon, 11 Feb 2019, speck for Peter Zijlstra wrote:
> > On Fri, Feb 08, 2019 at 10:07:53AM -0800, speck for Andi Kleen wrote:
> > > On Fri, Feb 08, 2019 at 11:53:18AM +0100, speck for Peter Zijlstra wrote:
> >
> > > > * From here on, the constraint is dynamic.
> > > > @@ -3345,6 +3387,26 @@ glp_get_event_constraints(struct cpu_hw_events *cpuc, int idx,
> > > > return c;
> > > > }
> > > >
> > > > +static bool allow_tsx_force_abort = true;
> > >
> > > The default needs more discussion.
> >
> > This is what Thomas wants and makes sense to me. I'm done talking about
> > this.
>
> Again. The broken functionality is TSX. As the cure for TSX requires to
> steal a performance counter, the ucode default of preferring TSX causes a
> regression on the perf side for no good reason. This is already bad enough
> for updates where the ucode comes independent of the kernel update.
>
> But with the kernel we surely have no reason to follow the Intel marketing
> decision and make the same unreasonable default. There is one known
> workload which depends on TSX and it's very reasonable to make this one add
> the command line option and not punish everyone else.
>
> > > > + /*
> > > > + * Without TFA we must not use PMC3.
> > > > + */
> > > > + if (!allow_tsx_force_abort && test_bit(3, c->idxmsk)) {
> > >
> > > This still needs the extra changes in my patchkit to allow user/kvm opt-in/out.
> >
> > It needs no such thing. Userspace has the one knob.
> >
> > And I want to hear from Thomas and Paolo on what KVM wants; Andrew
> > already said he doesn't want this crap exposed to virt. And the less I
> > have to worry about virt the happier I am.
>
> For virt the issue is even worse because letting the guest enable TSX
> causes the host to have a counter stolen. So it's a host decision in the
> first place. If the host decides that TSX has to abort, then the guest has
> no choice whatsoever. If the host already decided to lose the counter then
> it can allow the guest to fiddle with the abort state. Whether we want to
> go there is a different question. Paolo?
One extra wrinkle - if TSX aborting is enabled should KVM not expose any perf
counters at all to the guest? That would make this a whole lot more simpler.
And also not expose the TSX functionality (aka mask the CPUID) to the guest?
next prev parent reply other threads:[~2019-02-11 20:17 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-07 23:41 [MODERATED] [PATCH v3 0/6] PERFv3 Andi Kleen
2019-02-07 23:41 ` [MODERATED] [PATCH v3 1/6] PERFv3 Andi Kleen
2019-02-08 8:45 ` [MODERATED] " Peter Zijlstra
2019-02-07 23:41 ` [MODERATED] [PATCH v3 2/6] PERFv3 Andi Kleen
2019-02-08 0:51 ` [MODERATED] Re: [SUSPECTED SPAM][PATCH " Andrew Cooper
2019-02-08 9:01 ` Peter Zijlstra
2019-02-08 9:31 ` [MODERATED] Re: [PATCH " Andrew Cooper
2019-02-08 9:39 ` [MODERATED] Re: [SUSPECTED SPAM][PATCH " Peter Zijlstra
2019-02-08 10:53 ` [MODERATED] [RFC][PATCH] performance walnuts Peter Zijlstra
2019-02-08 18:07 ` [MODERATED] " Andi Kleen
2019-02-11 10:40 ` Peter Zijlstra
2019-02-11 14:06 ` Thomas Gleixner
2019-02-11 20:17 ` Konrad Rzeszutek Wilk [this message]
2019-02-11 23:39 ` Thomas Gleixner
2019-02-09 0:28 ` [MODERATED] " Linus Torvalds
2019-02-09 4:34 ` Andi Kleen
2019-02-09 8:57 ` Peter Zijlstra
2019-02-13 2:56 ` mark gross
2019-02-15 17:32 ` mark gross
2019-02-15 17:44 ` Peter Zijlstra
2019-02-15 20:47 ` mark gross
2019-02-15 21:33 ` Thomas Gleixner
2019-02-19 13:35 ` [MODERATED] [RFC][PATCH v2] " Peter Zijlstra
2019-02-15 23:45 ` [MODERATED] Encrypted Message Jon Masters
2019-02-08 8:50 ` [MODERATED] Re: [PATCH v3 2/6] PERFv3 Peter Zijlstra
2019-02-08 17:26 ` Andi Kleen
2019-02-07 23:41 ` [MODERATED] [PATCH v3 3/6] PERFv3 Andi Kleen
2019-02-08 9:02 ` [MODERATED] " Peter Zijlstra
2019-02-07 23:41 ` [MODERATED] [PATCH v3 4/6] PERFv3 Andi Kleen
2019-02-07 23:41 ` [MODERATED] [PATCH v3 5/6] PERFv3 Andi Kleen
2019-02-08 0:54 ` [MODERATED] " Andrew Cooper
2019-02-07 23:41 ` [MODERATED] [PATCH v3 6/6] PERFv3 Andi Kleen
2019-02-08 9:07 ` [MODERATED] " Peter Zijlstra
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=20190211201735.GC11758@char.us.oracle.com \
--to=konrad.wilk@oracle.com \
--cc=speck@linutronix.de \
/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.