From 9ce717a313f899c2f92999e37c5c13921d186277 Mon Sep 17 00:00:00 2001 From: rubberhead Date: Wed, 8 Nov 2023 03:31:13 +0000 Subject: [PATCH] I'm fighting for my life over here! --- tex/misc/background_draft.bib | 89 +++++++++++++++++++++ tex/misc/background_draft.pdf | Bin 0 -> 119399 bytes tex/misc/background_draft.tex | 142 ++++++++++++++++++++++++++++++++++ tex/skeleton.tex | 5 ++ 4 files changed, 236 insertions(+) create mode 100644 tex/misc/background_draft.bib create mode 100644 tex/misc/background_draft.pdf create mode 100644 tex/misc/background_draft.tex diff --git a/tex/misc/background_draft.bib b/tex/misc/background_draft.bib new file mode 100644 index 0000000..e1869e9 --- /dev/null +++ b/tex/misc/background_draft.bib @@ -0,0 +1,89 @@ +@article{Jaleel_etal.RRIP.2010, + title={High performance cache replacement using re-reference interval prediction (RRIP)}, + author={Jaleel, Aamer and Theobald, Kevin B and Steely Jr, Simon C and Emer, Joel}, + journal={ACM SIGARCH computer architecture news}, + volume={38}, + number={3}, + pages={60--71}, + year={2010}, + publisher={ACM New York, NY, USA} +} + +@inproceedings{Yang_etal.FIFO-LPQD.2023, + title={FIFO can be Better than LRU: the Power of Lazy Promotion and Quick Demotion}, + author={Yang, Juncheng and Qiu, Ziyue and Zhang, Yazhuo and Yue, Yao and Rashmi, KV}, + booktitle={Proceedings of the 19th Workshop on Hot Topics in Operating Systems}, + pages={70--79}, + year={2023} +} + +@inproceedings{Shan_Tsai_Zhang.DSPM.2017, +author = {Shan, Yizhou and Tsai, Shin-Yeh and Zhang, Yiying}, +title = {Distributed Shared Persistent Memory}, +year = {2017}, +isbn = {9781450350280}, +publisher = {Association for Computing Machinery}, +address = {New York, NY, USA}, +url = {https://doi.org/10.1145/3127479.3128610}, +doi = {10.1145/3127479.3128610}, +abstract = {Next-generation non-volatile memories (NVMs) will provide byte addressability, persistence, high density, and DRAM-like performance. They have the potential to benefit many datacenter applications. However, most previous research on NVMs has focused on using them in a single machine environment. It is still unclear how to best utilize them in distributed, datacenter environments.We introduce Distributed Shared Persistent Memory (DSPM), a new framework for using persistent memories in distributed data-center environments. DSPM provides a new abstraction that allows applications to both perform traditional memory load and store instructions and to name, share, and persist their data.We built Hotpot, a kernel-level DSPM system that provides low-latency, transparent memory accesses, data persistence, data reliability, and high availability. The key ideas of Hotpot are to integrate distributed memory caching and data replication techniques and to exploit application hints. We implemented Hotpot in the Linux kernel and demonstrated its benefits by building a distributed graph engine on Hotpot and porting a NoSQL database to Hotpot. Our evaluation shows that Hotpot outperforms a recent distributed shared memory system by 1.3\texttimes{} to 3.2\texttimes{} and a recent distributed PM-based file system by 1.5\texttimes{} to 3.0\texttimes{}.}, +booktitle = {Proceedings of the 2017 Symposium on Cloud Computing}, +pages = {323–337}, +numpages = {15}, +keywords = {distributed shared memory, persistent memory}, +location = {Santa Clara, California}, +series = {SoCC '17} +} + +@article{LaRowe_Ellis.Repl_NUMA.1991, +title = {Page placement policies for NUMA multiprocessors}, +journal = {Journal of Parallel and Distributed Computing}, +volume = {11}, +number = {2}, +pages = {112-129}, +year = {1991}, +issn = {0743-7315}, +doi = {https://doi.org/10.1016/0743-7315(91)90117-R}, +url = {https://www.sciencedirect.com/science/article/pii/074373159190117R}, +author = {Richard P. LaRowe and Carla Schlatter Ellis}, +abstract = {In many parallel applications, the size of the program's data exceeds even the very large amount of main memory available on large-scale multiprocessors. Virtual memory, in the sense of a transparent management of the main/secondary memory hierarchy, is a natural solution. The replacement, fetch, and placement policies used in uniprocessor paging systems need to be reexamined in light of the differences in the behavior of parallel computations and in the memory architectures of multiprocessors. In particular, we investigate the impact of page placement in nonuniform memory access time (NUMA) shared memory MIMD machines. We experimentally evaluate several paging algorithms that incorporate different approaches to the placement issue. Under certain workload assumptions, our results show that placement algorithms that are strongly biased toward local frame allocation but are able to borrow remote frames can reduce the number of page faults over strictly local allocation. The increased cost of memory operations due to the extra remote accesses is more than compensated for by the savings resulting from the reduction in demand fetches, effectively reducing the computation completion time for these programs without having adverse effects on the performance of “typical” NUMA programs. We also discuss some early results obtained from an actual kernel implementation of one of our page placement algorithms.} +} + +@article{Aguilar_Leiss.Coherence-Replacement.2006, +author = {J. Aguilar and E.L. Leiss}, +title = {A Coherence-Replacement Protocol For Web Proxy Cache Systems}, +journal = {International Journal of Computers and Applications}, +volume = {28}, +number = {1}, +pages = {12-18}, +year = {2006}, +publisher = {Taylor & Francis}, +doi = {10.1080/1206212X.2006.11441783}, + + +URL = { + + https://doi.org/10.1080/1206212X.2006.11441783 + + + +}, +eprint = { + + https://doi.org/10.1080/1206212X.2006.11441783 + + + +} + +} + +@inproceedings{Masouros_etal.Adrias.2023, + title={Adrias: Interference-Aware Memory Orchestration for Disaggregated Cloud Infrastructures}, + author={Masouros, Dimosthenis and Pinto, Christian and Gazzetti, Michele and Xydis, Sotirios and Soudris, Dimitrios}, + booktitle={2023 IEEE International Symposium on High-Performance Computer Architecture (HPCA)}, + pages={855--869}, + year={2023}, + organization={IEEE} +} + diff --git a/tex/misc/background_draft.pdf b/tex/misc/background_draft.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a8e6831944ff47ac937cec826499ab78730b69c1 GIT binary patch literal 119399 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 B?WF(! literal 0 HcmV?d00001 diff --git a/tex/misc/background_draft.tex b/tex/misc/background_draft.tex new file mode 100644 index 0000000..672ca9b --- /dev/null +++ b/tex/misc/background_draft.tex @@ -0,0 +1,142 @@ +\documentclass{article} +\usepackage{biblatex} + +\addbibresource{background_draft.bib} + +\begin{document} +% \chapter{Backgrounds} +Recent studies has shown a reinvigorated interest in disaggregted/distributed +shared memory systems since the 1990s. While large-scale cluster systems +predominantly make up the mainstream +The interplay between (page) replacement policy and runtime performance of +distributed shared memory systems has not been properly explored. + +\section{Overview of Distributed Shared Memory} + +A striking feature in the study of distributed shared memory (DSM) systems is the +non-uniformity of the terminologies used to describe overlapping study interests. +The majority of contributions to DSM study come from the 1990s, for example +\textbf{[Treadmark, Millipede, Munin, Shiva, etc.]}. These DSM systems attempt to +leverage kernel system calls to allow for user-level DSM over ethernet NICs. While +these systems provide a strong theoretical basis for today's majority-software +DSM systems and applications that expose a \emph{(partitioned) global address space}, +they were nevertheless constrained by the limitations in NIC transfer rate and +bandwidth, and the concept of DSM failed to take off (relative to cluster computing). + +Improvement in NIC bandwidth and transfer rate allows for applications that expose +global address space, as well as RDMA technologies that leverage single-writer +protocols over hierarchical memory nodes. \textbf{[GAS and PGAS (Partitioned GAS) +technologies for example Openshmem, OpenMPI, Cray Chapel, etc. that leverage +specially-linked memory sections and \texttt{/dev/shm} to abstract away RDMA access]}. + + +Contemporary works on DSM systems focus more on leveraging hardware advancements +to provide fast and/or seamless software support. Adrias \cite{Masouros_etal.Adrias.2023}, +for example, implements a complex system for memory disaggregation over multiple +compute nodes connected via the \textit{ThymesisFlow}-based RDMA fabric, where +they observed significant performance improvements over existing data-intensive +processing frameworks, for example APACHE Spark, Memcached, and Redis, over +no-disaggregation (i.e., using node-local memory only, similar to cluster computing) +systems. + +\subsection{Move Data to Process, or Move Process to Data?} +(TBD -- The former is costly for data-intensive computation, but the latter may +be impossible for certain tasks, and greatly hardens the replacement problem.) + +\section{Replacement Policy} + +In general, three variants of replacement strategies have been proposed for either +generic cache block replacement problems, or specific use-cases where contextual +factors can facilitate more efficient cache resource allocation: +\begin{itemize} + \item General-Purpose Replacement Algorithms, for example LRU. + \item Cost-Model Analysis + \item Probabilistic and Learned Algorithms +\end{itemize} + +\subsection{General-Purpose Replacement Algorithms} +Practically speaking, in the general case of the cache replacement problem, +we desire to predict the re-reference interval of a cache block +\cite{Jaleel_etal.RRIP.2010}. This follows from the Belady's algorithm -- the +optimal case for the \emph{ideal} replacement problem occurs when, at eviction +time, the entry with the highest re-reference interval is replaced. Under this +framework, therefore, the commonly-used LRU algorithm could be seen as a heuristic +where the re-reference interval for each entry is predicted to be immediate. +Fortunately, memory access traces of real computer systems agree with this +tendency due to spatial locality \textbf{[source]}. (Real systems are complex, +however, and there are other behaviors...) On the other hand, the hypothetical +LFU algorithm is a heuristic that captures frequency. \textbf{[\dots]} While the +textbook LFU algorithm suffers from needing to maintain a priority-queue for +frequency analysis, it was nevertheless useful for keeping recurrent (though +non-recent) blocks from being evicted from the cache \textbf{[source]}. + +Derivatives from the LRU algorithm attempts to balance between frequency and +recency. \textbf{[Talk about LRU-K, LRU-2Q, LRU-MQ, LIRS, ARC here \dots]} + +Advancements in parallel/concurrent systems had led to a rediscovery of the benefits +of using FIFO-derived replacement policies over their LRU/LFU counterparts, as +book-keeping operations on the uniform LRU/LFU state proves to be (1) difficult +for synchronization and, relatedly, (2) cache-unfriendly \cite{Yang_etal.FIFO-LPQD.2023}. +\textbf{[Talk about FIFO, FIFO-CLOCK, FIFO-CAR, FIFO-QuickDemotion, and Dueling +CLOCK here \dots]} + +Finally, real-life experiences have shown the need to reduce CPU time in practical +applications, owing from one simple observation -- during the fetch-execution +cycle, all processors perform blocking I/O on the memory. A cache-unfriendly +design, despite its hypothetical optimality, could nevertheless degrade the performance +of a system during low-memory situations. In fact, this proves to be the driving +motivation behind Linux's transition away from the old LRU-2Q page replacement +algorithm into the more coarse-grained Multi-generation LRU algorithm, which has +been mainlined since v6.1. + +\subsection{Cost-Model Analysis} +The ideal case for the replacement problem fails to account for invalidation of +cache entries. It also assumes for a uniform, dual-hierarchical cache-store model +that is insufficient to capture the heterogeneity of today's massively-parallel, +distributed systems. High-speed network interfaces are capable of exposing RDMA +interfaces between computer nodes, which amount to almost twice as fast RDMA transfer +when compared to swapping over the kernel I/O stack, while software that bypass +the kernel I/O stack is capable of stretching the bandwidth advantage even more +(source). This creates an interesting network topology between RDMA-enabled nodes, +where, in addition to swapping at low-memory situations, the node may opt to ``swap'' +or simply drop the physical page in order to lessen the cost of page misses. + +\textbf{[Talk about GreedyDual, GDSF, BCL, Amortization]} + +Traditionally, replacement policies based on cost-model analysis were utilized in +content-delivery networks, which had different consistency models compared to +finer-grained systems. HTTP servers need not pertain to strong consistency models, +as out-of-date information is considered permissible, and single-writer scenarios +are common. Consequently, most replacement policies for static content servers, +while making strong distinction towards network topology, fails to concern for the +cases where an entry might become invalidated, let along multi-writer protocols. +One early paper \cite{LaRowe_Ellis.Repl_NUMA.1991} examines the efficacy of using +page fault frequency as an indicator of preference towards working set inclusion +(which I personally think is highly flawed -- to be explained). Another paper +\cite{Aguilar_Leiss.Coherence-Replacement.2006} explores the possibility of taking +page fault into consideration for eviction, but fails to go beyond the obvious +implication that pages that have been faulted \emph{must} be evicted. + +The concept of cost models for RDMA and NUMA systems are relatively underdeveloped, +too. (Expand) + +\subsection{Probabilistic and Learned Algorithms for Cache Replacement} +Finally, machine learning techniques and low-cost probabilistic approaches have +been applied on the ideal cache replacement problem with some level of success. +\textbf{[Talk about LeCaR, CACHEUS here]}. + +\section{Cache Coherence and Consistency in DSM Systems} + +(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.]} + +Consistency and communication protocols naturally affect the cost for each faulted +memory access \dots + +\textbf{[Talk about directory, transactional, scope, and library cache coherence, +which allow for multi-casted communications at page fault but all with different +levels of book-keeping.]} + +\printbibliography +\end{document} \ No newline at end of file diff --git a/tex/skeleton.tex b/tex/skeleton.tex index 72263da..d929ba8 100644 --- a/tex/skeleton.tex +++ b/tex/skeleton.tex @@ -145,6 +145,11 @@ package or the newer \texttt{biblatex} system. These examples use a numerical citation style. You may use any consistent reference style that you prefer, including ``(Author, Year)'' citations. +\chapter{Backgrounds} + +This section provides a overview into + + \chapter{Your next chapter} A dissertation usually contains several chapters.