I THOUGHT BACKGROUND WRITING WOULD BE EASY

This commit is contained in:
Zhengyi Chen 2023-10-11 22:34:21 +01:00
parent e02b750ff0
commit 44805929f8
7 changed files with 103 additions and 2 deletions

28
tex/draft/background.bib Normal file
View file

@ -0,0 +1,28 @@
@inproceedings{!BGW.2010.CDN,
title={Distributed caching algorithms for content distribution networks},
author={Borst, Sem and Gupta, Varun and Walid, Anwar},
booktitle={2010 Proceedings IEEE INFOCOM},
pages={1--9},
year={2010},
organization={IEEE}
}
@article{KD.2002.Akamai_CoordCacheRepl,
title={Coordinated placement and replacement for large-scale distributed caches},
author={Korupolu, Madhukar R. and Dahlin, Michael},
journal={IEEE Transactions on Knowledge and Data Engineering},
volume={14},
number={6},
pages={1317--1329},
year={2002},
publisher={IEEE}
}
@misc{Z.2022.Linux_LRU_GEN,
title={Multi-Gen LRU},
url={https://www.kernel.org/doc/html/v6.6-rc5/mm/multigen_lru.html},
journal={The Linux Kernel documentation},
author={Zhao, Yu},
editor={Alumbaugh, T JEditor},
year={2022}
}

10
tex/draft/background.md Normal file
View file

@ -0,0 +1,10 @@
> A High-Performance Framework for Dynamic Cache-Replacement-Strategy-Selection in Distributed Shared Memory Systems
# Background
> Various Kinds of (Distributed) Systems (What makes a system "distributed", anyways?) $\rightarrow$
> (Distributed) Cache Replacement Algorithms (Strategies) $\rightarrow$
> Limitations to common distributed cache replacement practices in extremely time-sensitive scenarios (like ours) $\rightarrow$
> Variables that need to be accounted for in cache replacement problms $\rightarrow$
> Need for dynamic manipulation to cache replacement strategy, which implies probing & measurement & comparison, etc. $\rightarrow$
> Framework for such a thing, which is what we explore in this paper.

BIN
tex/draft/background.pdf Normal file

Binary file not shown.

63
tex/draft/background.tex Normal file
View file

@ -0,0 +1,63 @@
\documentclass{article}
\usepackage{biblatex}
\title{Thesis Background}
\author{Zhengyi Chen}
\date{\today}
\addbibresource{../main.bib}
\addbibresource{background.bib}
\begin{document}
\maketitle
% Phil Karlton's famous quote about the 2 hard problems in CS here, maybe.
The problem of cache replacement is general to computer systems of all scales and topologies:
topologically massive systems, such as cellular stations\cite{GWHSZ.2014.CacheReplAsMDP-QLearning}
and CDNs\cites{EHOFK.2020.IBM-LRUvsFIFO}{!BGW.2010.CDN}{KD.2002.Akamai_CoordCacheRepl}, and
data-path level implementations for processors\cites{QJPSE.2007.DIP}{JTSE.2010.RRIP}{SYS.2021.RLR}
alike requires good solutions to maintain and maximize application performance
to various levels of granularity. On the other hand, the set of feasible/performant solutions
(i.e., cache replacement policies) to one system may or may not be inspiring to performance
improvement on another system of different scale, objectives, tasks, constrained by a
(mostly) different context of available inputs, metadata, etc.
We propose a framework for dynamic cache-replacement-strategy selection that balances computation
cost, optimality, and working-set estimation for each strategy while incurring minimal performance
penalties for a shared-kernel cooperative Distributed Shared Memory system. (We identify \dots)
\section[1]{Existing Cache Replacement Strategies}
\subsection[1.1]{LRU-derived Algorithms}
\subsection[1.2]{FIFO-derived Algorithms}
\subsection[1.3]{Cache Replacement in Processors}
\subsection[1.4]{Machine Learning and Heuristics}
\section[2]{The Cache Replacement Problem}
\section[3]{Page Replacement in (SMP or?) Linux}
%-- But LRU_GEN is interop-ed with an array of other systems,
% how could we trivially implement alternative page replacement algorithms with maximum feature
% compliance?
%
% Cache replacement strategies local to its own resources, for example CPU cache line replacement stategies, may not optimally perform cache eviction and
% replacement for CDNs which (1) center \textit{freqency} over \textit{recency} and (2) could
% cooperate to utilize a nearby cache with small additional transfer cost\cite{KD.2002.Akamai_CoordCacheRepl}.
% Orthogonally, cache replacement strategies that perform well on one task might perform less well on
% another, as implied by \cite{SYS.2021.RLR} among others.
% this is the case for Linux's \textit{multi-gen LRU} page replacement algorithm which
% by default prioritizes memory access via page table to be stored in cache over those via file
% descriptors (though it dynamically self-adjusts)\cite{Z.2022.Linux_LRU_GEN} -- the kernel developers
% assume that the former is costlier upon page fault. This is well and good for programs with
% This is not to say that some amount of "technological transfer" from cache replacement strategies
% intended for one specific setting could not be
% A performant cache replacement strategy, relative to its hosting
% system, needs to strike balance between optimality and the necessary computation needed to make a
% replacement/eviction decision.
\printbibliography
\end{document}

Binary file not shown.

View file

@ -6,7 +6,7 @@
\author{Zhengyi Chen} % Amir? \author{Zhengyi Chen} % Amir?
\date{\today} \date{\today}
\addbibresource{w4_slides.bib} \addbibresource{../main.bib}
\begin{document} \begin{document}
% Title page % Title page