Re:Red Hat ported OpenJDK to 64-bit ARM: A community history
by monocasa on Monday February 01, 2021 @04:50PM
(#25994493)
PowerPC has pretty much the same memory model as the ARM variants, so it's a more or less solved problem thankfully.
[ Parent
| on HN ]
Re:Red Hat ported OpenJDK to 64-bit ARM: A community history
by dralley on Monday February 01, 2021 @06:26PM
(#25995551)
On that subject, as someone that knows nothing about either POWER (or Aarch64), I'm curious if anyone could describe the ways in which they are different?
Re:Red Hat ported OpenJDK to 64-bit ARM: A community history
by aph_at_redhat on Sunday February 14, 2021 @07:10AM
(#26131706)
The most important practical difference is that Power PC is not multi-copy atomic. That is to say, "[the PPC] memory system does not guarantee that a write becomes visible to all other hardware threads at the same time point." AArch64 does guarantee this property, although it was not documented as doing so in the first release of its specification. For this reason PPC has to emit some extra StoreLoad memory fences.
(See "A Tutorial Introduction to the ARM and POWER Relaxed Memory Models" by Luc Maranget, Susmit Sarkar and Peter Sewell, but be aware that the AArch64 specification has changed since that paper was written. Our work has resulted in Arm clarifying the AArch64 specification in a couple of places, for which I'm grateful.)
Re:Red Hat ported OpenJDK to 64-bit ARM: A community history
by aph_at_redhat on Sunday February 14, 2021 @07:11AM
(#26131716)
Well, maybe PPC doesn't strictly have to do this, but the PPC maintainers decided it would be surprising if it didn't.
Re:Red Hat ported OpenJDK to 64-bit ARM: A community history
by monocasa on Monday February 01, 2021 @06:41PM
(#25995680)
Different from each other, or from x86?
Re:Red Hat ported OpenJDK to 64-bit ARM: A community history
by dralley on Monday February 01, 2021 @08:51PM
(#25996607)
From each other.
Re:Red Hat ported OpenJDK to 64-bit ARM: A community history
by monocasa on Tuesday February 02, 2021 @05:00PM
(#26007467)
There's not a whole lot different practically. The big thing being that PowerPC32 is basically free for a PowerPC64 design, but 32 mode is pretty costly for an arm64 design.
Oh, and the PowerPC MMU format is famously terrible, and even the new fixed version is somehow still awful.