Index | Thread | Search

From:
Jonathan Gray <jsg@jsg.id.au>
Subject:
Re: mtx_enter() fix for huge systems
To:
Mark Kettenis <mark.kettenis@xs4all.nl>
Cc:
tech@openbsd.org
Date:
Tue, 20 May 2025 10:07:30 +1000

Download raw body.

Thread
On Mon, May 19, 2025 at 10:55:21PM +0200, Mark Kettenis wrote:
> Or it may end up as a NOP anyway.  For example on arm64 we use the
> YIELD instruction, but that instruction might only do something on SMT
> systems.  And those don't do actually exist in arm64 land.

"As an SMT core, the Cortex‑A65 core supports two execution threads
on each core."
https://developer.arm.com/documentation/100439/0102/Introduction-to-the-Cortex-A65-core/About-the-core

"As an SMT core, the Cortex-A65AE core supports two execution threads on
each core."
https://developer.arm.com/documentation/101385/0101/Functional-description/Introduction/About-
the-core

"As an SMT core, the Neoverse E1 core supports two execution threads on
each core."
https://developer.arm.com/documentation/101560/0102/Introduction-to-the-Neoverse-E1-core/About-the-core

Cavium/Marvell ThunderX2 also has SMT.