Skip to contentSkip to conversation

memorder: Add a brief description of the use of multicopy atomicity

PATCH Applied Junchang Wang 2 participants 2 messages Nov 8, 2018

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 memorder: Add a brief description of the use of multicopy atomicity

Subsection Multicopy Atomicity is ahead of Subsection Hardware Specifics where implementation detail of multicopy atomicity in mainstream architectures is presented. So we add (1) a brief description of the use of multicopy atomicity in representative architectures and (2) a reference to Table Summary of Memory Ordering, in subsection Multicopy Atomicity.

The description is borrowed from a nice discussion with Paul, which can be found at https://www.spinics.net/lists/perfbook/msg01952.html.

---
 memorder/memorder.tex | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
memorder/memorder.tex +5 -1
index fba49b7..69ce196 100644
@@ -1901,7 +1901,11 @@ Most CPU vendors interested in providing multicopy atomicity have therefore
 instead provided the slightly weaker
 \emph{other-multicopy atomicity}~\cite[Section B2.3]{ARMv8A:2017},
 which excludes the CPU doing a given store from the requirement that all
-CPUs agree on the order of all stores.
+CPUs agree on the order of all stores.\footnote{
+	As of late 2018, ARMv8 and x86 provide other-multicopy atomicity,
+	IBM mainframe provides fully multicopy atomicity, and PPC does
+	not provide multicopy atomicity at all. More detail is shown in
+	Figure~\ref{tab:memorder:Summary of Memory Ordering}.}
 This means that if only a subset of CPUs are doing stores, the
 other CPUs will agree on the order of stores, hence the ``other''
 in ``other-multicopy atomicity''.
Signature · 1 line
2.7.4
#1 lore raw
Quoted 10 lines · Junchang Wang

Subsection Multicopy Atomicity is ahead of Subsection Hardware Specifics where implementation detail of multicopy atomicity in mainstream architectures is presented. So we add (1) a brief description of the use of multicopy atomicity in representative architectures and (2) a reference to Table Summary of Memory Ordering, in subsection Multicopy Atomicity.

The description is borrowed from a nice discussion with Paul, which can be found at https://www.spinics.net/lists/perfbook/msg01952.html.

Queued and pushed, thank you, Junchang!

Thanx, Paul

Quoted 24 lines
---
 memorder/memorder.tex | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
memorder/memorder.tex +5 -1
index fba49b7..69ce196 100644
@@ -1901,7 +1901,11 @@ Most CPU vendors interested in providing multicopy atomicity have therefore
 instead provided the slightly weaker
 \emph{other-multicopy atomicity}~\cite[Section B2.3]{ARMv8A:2017},
 which excludes the CPU doing a given store from the requirement that all
-CPUs agree on the order of all stores.
+CPUs agree on the order of all stores.\footnote{
+	As of late 2018, ARMv8 and x86 provide other-multicopy atomicity,
+	IBM mainframe provides fully multicopy atomicity, and PPC does
+	not provide multicopy atomicity at all. More detail is shown in
+	Figure~\ref{tab:memorder:Summary of Memory Ordering}.}
 This means that if only a subset of CPUs are doing stores, the
 other CPUs will agree on the order of stores, hence the ``other''
 in ``other-multicopy atomicity''.
Signature · 1 line
2.7.4