From: Dave Hansen <dave.hansen@intel.com>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: "rafael@kernel.org" <rafael@kernel.org>,
"peterz@infradead.org" <peterz@infradead.org>,
"catalin.marinas@arm.com" <catalin.marinas@arm.com>,
"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
"ast@kernel.org" <ast@kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"conor.dooley@microchip.com" <conor.dooley@microchip.com>,
"hpa@zytor.com" <hpa@zytor.com>,
"will@kernel.org" <will@kernel.org>,
Paolo Valente <paolo.valente@unimore.it>,
"mchehab+huawei@kernel.org" <mchehab+huawei@kernel.org>,
"x86@kernel.org" <x86@kernel.org>,
"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
"mingo@redhat.com" <mingo@redhat.com>,
"kuba@kernel.org" <kuba@kernel.org>,
"eugenis@google.com" <eugenis@google.com>,
"lenb@kernel.org" <lenb@kernel.org>,
"tarumizu.kohei@fujitsu.com" <tarumizu.kohei@fujitsu.com>,
"arnd@arndb.de" <arnd@arndb.de>, "bp@alien8.de" <bp@alien8.de>,
"tglx@linutronix.de" <tglx@linutronix.de>,
"pcc@google.com" <pcc@google.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"marcos@orca.pet" <marcos@orca.pet>,
"tony.luck@intel.com" <tony.luck@intel.com>,
Greg KH <gregkh@linuxfoundation.org>,
"peter.chen@kernel.org" <peter.chen@kernel.org>,
"marcan@marcan.st" <marcan@marcan.st>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH v5 0/6] Add hardware prefetch control driver for A64FX and x86
Date: Tue, 28 Jun 2022 14:01:40 -0700 [thread overview]
Message-ID: <6934b82d-db12-8a17-7dea-7bcbd4fe8566@intel.com> (raw)
In-Reply-To: <CACRpkdYTNuszctk=stB+RLr5kKwhR2ebF2MJCYQwMwYYPPReLg@mail.gmail.com>
On 6/28/22 13:20, Linus Walleij wrote:
> On Tue, Jun 28, 2022 at 5:47 PM Dave Hansen <dave.hansen@intel.com> wrote:
>> On 6/27/22 02:36, Linus Walleij wrote:
>>> The right way to solve this is to make the Linux kernel contain the
>>> necessary heuristics to identify which tasks and thus cores need this
>>> to improve efficiency and then apply it automatically.
>>
>> I agree in theory. But, I also want a pony in theory.
>>
>> Any suggestions for how to do this in the real world?
>
> Well if the knobs are exposed to userspace, how do people using
> these knobs know when to turn them? A profiler? perf? All that
> data is available to the kernel too.
They run their fortran app. Change the MSRs. Run it again. See if it
simulated the nuclear weapon blast any faster or slower. Rinse. Repeat.
One thing that is missing from the changelog and cover letter here: On
x86, there's a 'wrmsr(1)' tool. That took pokes at Model Specific
Registers (MSRs) via the /dev/cpu/X/msr interface. That interface is a
very, very thinly-veiled wrapper around the WRMSR (WRite MSR) instruction.
In other words, on x86, our current interface allows userspace programs
to arbitrarily poke at our most sensitive hardware configuration
registers. One of the most common reasons users have reported doing
this (we have pr_warn()ings about it) is controlling the prefetch hardware.
This interface would take a good chunk of the x86 wrmsr(1) audience and
convert them over to a less dangerous interface. That's a win on x86.
We don't even *remotely* have line-of-sight for a generic solution for
the kernel to figure out a single "best" value for these registers.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-06-28 21:03 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-07 12:05 [PATCH v5 0/6] Add hardware prefetch control driver for A64FX and x86 Kohei Tarumizu
2022-06-07 12:05 ` [PATCH v5 1/6] soc: fujitsu: Add hardware prefetch control driver for A64FX Kohei Tarumizu
2022-06-10 13:20 ` Greg KH
2022-06-07 12:05 ` [PATCH v5 2/6] soc: fujitsu: Add Kconfig/Makefile to build hardware prefetch control driver Kohei Tarumizu
2022-06-07 14:40 ` Randy Dunlap
2022-06-07 12:05 ` [PATCH v5 3/6] arm64: Create cache sysfs directory without ACPI PPTT for hardware prefetch control Kohei Tarumizu
2022-06-07 12:05 ` [PATCH v5 4/6] x86: Add hardware prefetch control driver for x86 Kohei Tarumizu
2022-06-07 12:05 ` [PATCH v5 5/6] x86: Add Kconfig/Makefile to build hardware prefetch control driver Kohei Tarumizu
2022-06-07 14:40 ` Randy Dunlap
2022-06-08 6:11 ` tarumizu.kohei
2022-06-07 12:05 ` [PATCH v5 6/6] docs: ABI: Add sysfs documentation interface of " Kohei Tarumizu
2022-06-10 13:07 ` [PATCH v5 0/6] Add hardware prefetch control driver for A64FX and x86 Greg KH
2022-06-14 11:55 ` tarumizu.kohei
2022-06-14 12:34 ` 'Greg KH'
2022-06-17 9:20 ` tarumizu.kohei
2022-06-27 9:36 ` Linus Walleij
2022-06-28 13:55 ` tarumizu.kohei
2022-06-28 16:39 ` Luck, Tony
2022-06-30 5:24 ` tarumizu.kohei
2022-06-28 15:46 ` Dave Hansen
2022-06-28 20:20 ` Linus Walleij
2022-06-28 21:01 ` Dave Hansen [this message]
2022-06-28 21:17 ` Linus Walleij
2022-06-30 9:43 ` tarumizu.kohei
2022-06-10 13:48 ` Linus Walleij
2022-06-17 9:06 ` tarumizu.kohei
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=6934b82d-db12-8a17-7dea-7bcbd4fe8566@intel.com \
--to=dave.hansen@intel.com \
--cc=akpm@linux-foundation.org \
--cc=arnd@arndb.de \
--cc=ast@kernel.org \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=conor.dooley@microchip.com \
--cc=dave.hansen@linux.intel.com \
--cc=eugenis@google.com \
--cc=gregkh@linuxfoundation.org \
--cc=hpa@zytor.com \
--cc=kuba@kernel.org \
--cc=lenb@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=marcan@marcan.st \
--cc=marcos@orca.pet \
--cc=mchehab+huawei@kernel.org \
--cc=mingo@redhat.com \
--cc=paolo.valente@unimore.it \
--cc=pcc@google.com \
--cc=peter.chen@kernel.org \
--cc=peterz@infradead.org \
--cc=rafael@kernel.org \
--cc=tarumizu.kohei@fujitsu.com \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
--cc=will@kernel.org \
--cc=x86@kernel.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;
as well as URLs for NNTP newsgroup(s).