News for hackers. Stuff that matters.
Re:AMD Killed the Itanium by _a_a_a_ on Sunday February 05, 2023 @07:41PM (#34671677)
IIRC alpha-model memory barriers are still used in the linux kernel. That said, I can't find a clear statement of that.

> These barriers also meant that correct multi-threaded alpha code was no longer particularly fast, because you have to insert expensive memory barriers basically everywhere.

I don't buy it. MBs are for multi-core code, and in such code you typically do much work on a single core then have a quick chat with another core. So the MBs are there for the inter-core chatter only. In that case having fast monocore code is a big win.

Re:AMD Killed the Itanium by jabl on Monday February 06, 2023 @03:11AM (#34674657)
> IIRC alpha-model memory barriers are still used in the linux kernel. That said, I can't find a clear statement of that so I don't know if it is true or was, or just my own memory.

The various memory barriers and locking primitives are arch-specific code, and at least smp_read_barrier_depends() is a no-op on all architectures except Alpha. Apparently around the 4.15-4.16 kernels there was a bit of de-Alphafication going on which entailed removing much Alpha-specific code from core kernel code. Further in 5.9 {smp_,}read_barrier_depends() were removed from the core barriers, at the cost of making some of the remaining memory barriers on Alpha needlessly strong.

For more info, search for Alpha e.g. in

https://www.kernel.org/doc/Documentation/memory-barriers.txt

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin...

https://open-std.org/JTC1/SC22/WG21/docs/papers/2020/p0124r7...

https://mirrors.edge.kernel.org/pub/linux/kernel/people/paul...

Re:AMD Killed the Itanium by _a_a_a_ on Monday February 06, 2023 @03:42AM (#34674890)
Another cracking answer, I'll have a dive in this evening, thanks.