From dbc01147fd5fc72f12edee8fc7eb27de7448a842 Mon Sep 17 00:00:00 2001 From: rubberhead Date: Thu, 29 Feb 2024 21:11:05 +0000 Subject: [PATCH] ... --- tex/misc/background_draft.bib | 19 +++++++++++++++++++ tex/misc/background_draft.pdf | Bin 164833 -> 166213 bytes tex/misc/background_draft.tex | 25 +++++++++++++++++++++++++ 3 files changed, 44 insertions(+) diff --git a/tex/misc/background_draft.bib b/tex/misc/background_draft.bib index ede3d8f..af0c4aa 100644 --- a/tex/misc/background_draft.bib +++ b/tex/misc/background_draft.bib @@ -432,3 +432,22 @@ author={Manson, Jeremy and Goetz, Brian}, year={2004} } + +@inproceedings{Pinto_etal.Thymesisflow.2020, + title={Thymesisflow: A software-defined, hw/sw co-designed interconnect stack for rack-scale memory disaggregation}, + author={Pinto, Christian and Syrivelis, Dimitris and Gazzetti, Michele and Koutsovasilis, Panos and Reale, Andrea and Katrinis, Kostas and Hofstee, H Peter}, + booktitle={2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO)}, + pages={868--880}, + year={2020}, + organization={IEEE} +} + +@inproceedings{Couceiro_etal.D2STM.2009, + title={D2STM: Dependable distributed software transactional memory}, + author={Couceiro, Maria and Romano, Paolo and Carvalho, Nuno and Rodrigues, Lu{\'\i}s}, + booktitle={2009 15th IEEE Pacific Rim International Symposium on Dependable Computing}, + pages={307--313}, + year={2009}, + organization={IEEE} +} + diff --git a/tex/misc/background_draft.pdf b/tex/misc/background_draft.pdf index 94f9a6966ebed43409dde818b5173e9f660db60d..17782b7f3b654d73708cf132d6ab3e5994504367 100644 GIT binary patch delta 40822 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�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 ULLf*Gxp-JP5vZu7l%)~=2TqsDO#lD@ delta 39443 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%0DqJW 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 diff --git a/tex/misc/background_draft.tex b/tex/misc/background_draft.tex index 1a5b3e6..892e6bd 100644 --- a/tex/misc/background_draft.tex +++ b/tex/misc/background_draft.tex @@ -487,7 +487,31 @@ parallel access to shared memory on top of program order guarantees to explicate program behavior under shared memory parallel programming across underlying implementations. +Related to the definition of a consistency model is the coherence problem, which +arises whenever multiple actors have access to multiple copies of some datum, +which needs to be synchronized across multiple actors with regards to +write-accesses \cite{Nagarajan_etal.Primer_consistency_coherence_arch.2ed.2020}. +While less relevant to programming language design, coherence must be maintained +via a coherence protocol +\cite{Nagarajan_etal.Primer_consistency_coherence_arch.2ed.2020} in systems of +both microarchitectural and network scales. For DSM systems, the design of a +correct and performant coherence protocol is of especially high priority and +is a major part of many studies in DSM systems throughout history +\cites{Carter_Bennett_Zwaenepoel.Munin.1991}{Amza_etal.Treadmarks.1996} +{Pinto_etal.Thymesisflow.2020}{Endo_Sato_Taura.MENPS_DSM.2020} +{Couceiro_etal.D2STM.2009}. + +\subsection{Common Consistency Models} +% ... should I even write this section? imo it's too basic for anyone to read +% and really just serves as a means to increase word count + \subsection{Consistency Model in DSM} +While distributed shared memory systems with node-local caching naturally +implies the existence of a corresponding memory model, only a subset of DSM +studies (cites\dots) characterize their own system to one of the few well-known memory +models + +Notably, \dots % about Munin to Spark to access-pattern vs. consistency \subsection{Coherence Protocol} @@ -497,6 +521,7 @@ implementations. + (I need to read more into this. Most of the contribution comes from CPU caches, less so for DSM systems.) \textbf{[Talk about JIAJIA and Treadmark's coherence protocol.]}