From: "Jonathan Schwender" <schwenderjonathan@gmail.com>
To: "'Alison Chaiken'" <achaiken@aurora.tech>,
"'linux-rt-users'" <linux-rt-users@vger.kernel.org>
Cc: "'Daniel Wagner'" <dwagner@suse.de>
Subject: AW: hyperthreading and RT latency
Date: Tue, 10 Aug 2021 07:10:43 +0200 [thread overview]
Message-ID: <002901d78da6$129f8250$37de86f0$@gmail.com> (raw)
In-Reply-To: <CAFzL-7sj+Y79UC-CnB+6qDRe7EgPnjb0be63CwEJOfkdCvJYVw@mail.gmail.com>
Hi Alison,
> Is the advice still current? Should we RT-users all still turn hyperthreading off?
I ran some tests as a part of my master's thesis in the beginning of this year with the 5.10-rt kernel on an Intel Broadwell-EP 2-socket server.
If you are interested, I can dig up the graphs I made, but the jist regarding wake-up latencies measured by _cyclictest_ (24 hours each) is:
1. Task-isolation (placing the RT-task on a dedicated core) + Cache allocation + disabled Hyperthreading yields the best latencies. Something around 4-5us worst-case latencies were possibly with some optimizations.
2. Placing a load (rteval) together with cyclictest increases the latencies, but worst-case latencies of I think 16us are still okay for many applications
3. Isolating a task on a dedicated CPU and placing a load (rteval) on the neighbor CPU sharing the same core yields strictly worse latencies compared to 2). I think it was around 50us worst-case.
4. Isolating a task on a dedicated core (hyperthreading disabled), but enabling hyperthreading for the non-critical cores seems to have a rather small negative impact, as long as CAT is used to reserve cache for the isolated core. I'd have to look up the details though.
I don't think the situation has improved on more modern hardware, since AFAIK the SMT hardware has no knowledge of your tasks priority.
>Thanks,
>Alison Chaiken
Best Regards,
Jonathan Schwender
next prev parent reply other threads:[~2021-08-10 5:10 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-05 20:16 hyperthreading and RT latency Alison Chaiken
2021-08-06 7:00 ` Daniel Wagner
2021-08-06 15:39 ` John Kacur
2021-08-10 5:10 ` Jonathan Schwender [this message]
2021-08-10 7:41 ` Jack Winch
2021-08-10 7:43 ` Jack Winch
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='002901d78da6$129f8250$37de86f0$@gmail.com' \
--to=schwenderjonathan@gmail.com \
--cc=achaiken@aurora.tech \
--cc=dwagner@suse.de \
--cc=linux-rt-users@vger.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 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.