From 3bc015f227cb3a351d03c679b35d2c08c1714d4a Mon Sep 17 00:00:00 2001 From: Akilan Date: Sun, 13 Apr 2025 23:48:37 +0100 Subject: [PATCH] added new CHERI ssh for file transfer --- docs/EuroSys/.DS_Store | Bin 10244 -> 10244 bytes docs/EuroSys/Paper/changelog.org | 71 ++++++++++++++++ docs/EuroSys/Paper/changelog.org~ | 76 +++++++++++++++++ docs/EuroSys/Paper/changelog.pdf | Bin 0 -> 98993 bytes docs/EuroSys/Paper/changelog.tex | 117 +++++++++++++++++++++++++++ docs/EuroSys/Paper/paper.aux | 6 +- docs/EuroSys/Paper/paper.fdb_latexmk | 14 ++-- docs/EuroSys/Paper/paper.log | 20 +++-- docs/EuroSys/Paper/paper.pdf | Bin 714018 -> 713986 bytes docs/EuroSys/Paper/paper.tex | 22 ++--- localpush.sh | 2 +- 11 files changed, 299 insertions(+), 29 deletions(-) create mode 100644 docs/EuroSys/Paper/changelog.org create mode 100644 docs/EuroSys/Paper/changelog.org~ create mode 100644 docs/EuroSys/Paper/changelog.pdf create mode 100644 docs/EuroSys/Paper/changelog.tex diff --git a/docs/EuroSys/.DS_Store b/docs/EuroSys/.DS_Store index 3c1ac53e324e8e2ef3069564fa2b06938c9d782a..93e598fe695cd8027751feee61e33b3ff9a78a9d 100644 GIT binary patch literal 10244 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 J|9`&!{~gJ2#m)c# diff --git a/docs/EuroSys/Paper/changelog.org b/docs/EuroSys/Paper/changelog.org new file mode 100644 index 0000000..5c8188c --- /dev/null +++ b/docs/EuroSys/Paper/changelog.org @@ -0,0 +1,71 @@ +** Changelog + +*** General +- [x] Change name (Thinking of using (Fat Address Translation) -> similar to GNU)) +- [x] Avoid words which create options +- [x] Use citation with ```~/cite{foo}``` +- [x] Clear distinction on Literature review and contribution done +- [x] Generalise capitalisation +- [x] Instead of "Leverage" -> "use" +- [ ] Remove whitespace from figures to be compressed +- [ ] Uniform font sizes in figures +- [ ] Symmetrical lines on the figure +- [x] TLB with acronym only once for the first instance in the paper + +*** Abstract (Re-read required later on) +- [x] Reduce Abstract to a single paragraph' +- [x] "Mitigate gap, capacity" -> Expand on for instance on how is it measured. +- [x] Huge pages moved to the introduction. +- [ ] Robs proposed structure (This paper presents user-space memory allocator. It uses capability-based addressing to . + +*** Introduction +- [x] "It becomes possible" expand more with baseline compressed bounds (Relook into this later on). +- [x] "This paper makes the following contribution" -. bullet points with marked sections. +- [x] Research questions removed. +- [x] "This implementation" Specify implementation +- [ ] Robs recommended Introduction structure (Expansion of the abstract, Name of the existing system, clearly describe limitation, Introduce memory allocator). + +*** 2.1 Encoding ranges as bounds +- [x] Repetition "Tracking of memory ranges using information in pointers" -> remove this +- [x] Paraphrase last sentence (To be looked into later on again). + +*** 2.2 128 bit compressed bounds +- [x] Cites Jemalloc paragraph. +- [x] Last sentence needs rewriting. (Needs re-check) + +*** 2.3 Instrumenting block based allocator +- [x] Needs citation "Which increases overhead and adds complexity" +- [x] Elaborate on "this method" +- [x] "precise" memory management (Elaborate on this and prove which aspects of the other allocator are not precise). (Todo be looked later on). + +*** Memory allocator design +- [x] Remove from heading "sample" and ":" +- [x] Remove future work paragraph +- [x] "unmapped" -> unmap +- [x] "Risks of memory leaks with metadata lookups or complex data structures" -> Elaborate on this (Commented until further notice). + +*** Evaluation +- [x] Name of the project keeps the sentence shorter. +- [x] "Such as" -> Definitive and exhaustive. +- [x] Section reference on evaluation expanded. +- [x] Remove "Providing a solid foundation for meaningful comparisons" +- [x] Decide to use Macro or instead "real world C programs" + +- [x] Experiment section typo heading +- [x] Fix Latex benchmarks structure +- [x] Change from "Diagram" to "Figure" + +- [x] Result para 2 -> too wordy +- [x] "aimed" first use of past tense (Recommendation: avoid) +- [x] Rewrite usability (Changed to Analysis) + +*** Related work +- [x] Related work lifted up after introduction based on the reflection of the feedback. + +*** Conclusion +- [x] Rewrite + + + + + diff --git a/docs/EuroSys/Paper/changelog.org~ b/docs/EuroSys/Paper/changelog.org~ new file mode 100644 index 0000000..a8b2962 --- /dev/null +++ b/docs/EuroSys/Paper/changelog.org~ @@ -0,0 +1,76 @@ +** Changelog + +*** General +- [x] Change name (Thinking of using (Fat Address Translation) -> similar to GNU)) +- [x] Avoid words which create options +- [x] Use citation with ```~/cite{foo}``` +- [x] Clear distinction on Literature review and contribution done +- [x] Generalise capitalisation +- [x] Instead of "Leverage" -> "use" +- [ ] Remove whitespace from figures to be compressed +- [ ] Uniform font sizes in figures +- [ ] Symmetrical lines on the figure +- [x] TLB with acronym only once for the first instance in the paper + +*** Abstract (Re-read required later on) +- [x] Reduce Abstract to a single paragraph' +- [x] "Mitigate gap, capacity" -> Expand on for instance on how is it measured. +- [x] Huge pages moved to the introduction. +- [ ] Robs proposed structure (This paper presents user-space memory allocator. It uses capability-based addressing to . + +*** Introduction +- [x] "It becomes possible" expand more with baseline compressed bounds (Relook into this later on). +- [x] "This paper makes the following contribution" -. bullet points with marked sections. +- [x] Research questions removed. +- [x] "This implementation" Specify implementation +- [ ] Robs recommended Introduction structure (Expansion of the abstract, Name of the existing system, clearly describe limitation, Introduce memory allocator). + +*** 2.1 Encoding ranges as bounds +- [x] Repetition "Tracking of memory ranges using information in pointers" -> remove this +- [x] Paraphrase last sentence (To be looked into later on again). + +*** 2.2 128 bit compressed bounds +- [x] Cites Jemalloc paragraph. +- [x] Last sentence needs rewriting. (Needs re-check) + +*** 2.3 Instrumenting block based allocator +- [x] Needs citation "Which increases overhead and adds complexity" +- [x] Elaborate on "this method" +- [x] "precise" memory management (Elaborate on this and prove which aspects of the other allocator are not precise). (Todo be looked later on). + +*** Memory allocator design +- [x] Remove from heading "sample" and ":" +- [x] Remove future work paragraph +- [x] "unmapped" -> unmap +- [x] "Risks of memory leaks with metadata lookups or complex data structures" -> Elaborate on this (Commented until further notice). + +*** Evaluation +- [x] Name of the project keeps the sentence shorter. +- [x] "Such as" -> Definitive and exhaustive. +- [x] Section reference on evaluation expanded. +- [x] Remove "Providing a solid foundation for meaningful comparisons" +- [x] Decide to use Macro or instead "real world C programs" + +- [x] Experiment section typo heading +- [x] Fix Latex benchmarks structure +- [x] Change from "Diagram" to "Figure" + +- [x] Result para 2 -> too wordy +- [x] "aimed" first use of past tense (Recommendation: avoid) +- [x] Rewrite usability (Changed to Analysis) + +*** Related work +- [x] Related work lifted up after introduction based on the reflection of the feedback. + +*** Conclusion +- [x] Rewrite + +*** Experiment work +- [x] 3 line switch in as mmap in Jemalloc for with sample C program. +- [x] Ported Libc ```shm_large_page``` to a kernel module to ensure multiple large scale allocators can use our implementation. +- [ ] Testing the Ported Libc kernel module (Micro benchmark for TLB stress test) +- [ ] Port this over to Jemalloc + + + + diff --git a/docs/EuroSys/Paper/changelog.pdf b/docs/EuroSys/Paper/changelog.pdf new file mode 100644 index 0000000000000000000000000000000000000000..99483717cad35f88442a8b925d8ab68032258a15 GIT binary patch literal 98993 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 z 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

O6ueCbc44Hr6d07 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

)3V7Z?Y1PZw>2%OX}id64sK=QTs| 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 similar to GNU)) +\item Avoid words which create options +\item Use citation with ```\textasciitilde{}/cite\{foo\}``` +\item Clear distinction on Literature review and contribution done +\item Generalise capitalisation +\item Instead of "Leverage" -> "use" +\item[{$\square$}] Remove whitespace from figures to be compressed +\item[{$\square$}] Uniform font sizes in figures +\item[{$\square$}] Symmetrical lines on the figure +\item TLB with acronym only once for the first instance in the paper +\end{itemize} +\subsection{Abstract (Re-read required later on)} +\label{sec:org8685c9f} +\begin{itemize} +\item Reduce Abstract to a single paragraph' +\item "Mitigate gap, capacity" -> Expand on for instance on how is it measured. +\item Huge pages moved to the introduction. +\item[{$\square$}] Robs proposed structure (This paper presents user-space memory allocator. It uses capability-based addressing to . +\end{itemize} +\subsection{Introduction} +\label{sec:org53e6522} +\begin{itemize} +\item "It becomes possible" expand more with baseline compressed bounds (Relook into this later on). +\item "This paper makes the following contribution" -. bullet points with marked sections. +\item Research questions removed. +\item "This implementation" Specify implementation +\item[{$\square$}] Robs recommended Introduction structure (Expansion of the abstract, Name of the existing system, clearly describe limitation, Introduce memory allocator). +\end{itemize} +\subsection{2.1 Encoding ranges as bounds} +\label{sec:org87f02f1} +\begin{itemize} +\item Repetition "Tracking of memory ranges using information in pointers" -> remove this +\item Paraphrase last sentence (To be looked into later on again). +\end{itemize} +\subsection{2.2 128 bit compressed bounds} +\label{sec:org767dd8c} +\begin{itemize} +\item Cites Jemalloc paragraph. +\item Last sentence needs rewriting. (Needs re-check) +\end{itemize} +\subsection{2.3 Instrumenting block based allocator} +\label{sec:org727e319} +\begin{itemize} +\item Needs citation "Which increases overhead and adds complexity" +\item Elaborate on "this method" +\item "precise" memory management (Elaborate on this and prove which aspects of the other allocator are not precise). (Todo be looked later on). +\end{itemize} +\subsection{Memory allocator design} +\label{sec:org0a7d2f0} +\begin{itemize} +\item Remove from heading "sample" and ":" +\item Remove future work paragraph +\item "unmapped" -> unmap +\item "Risks of memory leaks with metadata lookups or complex data structures" -> Elaborate on this (Commented until further notice). +\end{itemize} +\subsection{Evaluation} +\label{sec:orgfee80dd} +\begin{itemize} +\item Name of the project keeps the sentence shorter. +\item "Such as" -> Definitive and exhaustive. +\item Section reference on evaluation expanded. +\item Remove "Providing a solid foundation for meaningful comparisons" +\item Decide to use Macro or instead "real world C programs" + +\item Experiment section typo heading +\item Fix Latex benchmarks structure +\item Change from "Diagram" to "Figure" + +\item Result para 2 -> too wordy +\item "aimed" first use of past tense (Recommendation: avoid) +\item Rewrite usability (Changed to Analysis) +\end{itemize} +\subsection{Related work} +\label{sec:orgeb8e639} +\begin{itemize} +\item Related work lifted up after introduction based on the reflection of the feedback. +\end{itemize} +\subsection{Conclusion} +\label{sec:org1fae2ee} +\begin{itemize} +\item Rewrite +\end{itemize} +\end{document} diff --git a/docs/EuroSys/Paper/paper.aux b/docs/EuroSys/Paper/paper.aux index 95e25fa..139cbd5 100644 --- a/docs/EuroSys/Paper/paper.aux +++ b/docs/EuroSys/Paper/paper.aux @@ -37,8 +37,8 @@ \newlabel{fig:RangeOfMemory}{{2}{3}{Range of memory}{figure.caption.4}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {3.2}128 bit compressed bounds}{3}{subsection.3.2}\protected@file@percent } \newlabel{sec:128bitCompressedBounds}{{3.2}{3}{128 bit compressed bounds}{subsection.3.2}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces Fat-pointer Address Translations using huge pages}}{4}{figure.caption.5}\protected@file@percent } -\newlabel{fig:HugePages}{{3}{4}{Fat-pointer Address Translations using huge pages}{figure.caption.5}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces FAT Address Translations using huge pages}}{4}{figure.caption.5}\protected@file@percent } +\newlabel{fig:HugePages}{{3}{4}{FAT Address Translations using huge pages}{figure.caption.5}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Instrumenting Block-Based Allocators with Physically Contiguous Memory}{4}{subsection.3.3}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {4}Memory allocator design}{4}{section.4}\protected@file@percent } \newlabel{sec:MemoryAllocator}{{4}{4}{Memory allocator design}{section.4}{}} @@ -84,6 +84,7 @@ \bibcite{DirectSegment}{{7}{}{{}}{{}}} \bibcite{karakostas_redundant_2015}{{8}{}{{}}{{}}} \bibcite{chen_flexpointer_2023}{{9}{}{{}}{{}}} +\bibcite{jemalloc}{{10}{}{{}}{{}}} \@writefile{toc}{\contentsline {subsection}{\numberline {5.4}Analysis}{8}{subsection.5.4}\protected@file@percent } \newlabel{sec:Analysis}{{5.4}{8}{Analysis}{subsection.5.4}{}} \@writefile{toc}{\contentsline {section}{\numberline {6}Future work}{8}{section.6}\protected@file@percent } @@ -91,7 +92,6 @@ \@writefile{toc}{\contentsline {subsection}{\numberline {6.2}Hardware Modifications:}{8}{subsection.6.2}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {7}Conclusion}{8}{section.7}\protected@file@percent } \@writefile{toc}{\contentsline {section}{References}{8}{section*.10}\protected@file@percent } -\bibcite{jemalloc}{{10}{}{{}}{{}}} \bibcite{cheribsd}{{11}{}{{}}{{}}} \bibcite{Morello}{{12}{}{{}}{{}}} \bibcite{BenchmarkABI}{{13}{}{{}}{{}}} diff --git a/docs/EuroSys/Paper/paper.fdb_latexmk b/docs/EuroSys/Paper/paper.fdb_latexmk index dc8d350..dd29163 100644 --- a/docs/EuroSys/Paper/paper.fdb_latexmk +++ b/docs/EuroSys/Paper/paper.fdb_latexmk @@ -1,13 +1,13 @@ # Fdb version 4 -["bibtex paper"] 1744390568.64615 "paper.aux" "paper.bbl" "paper" 1744390570.25362 0 +["bibtex paper"] 1744455340.75803 "paper.aux" "paper.bbl" "paper" 1744456830.74161 0 "./paperReferences.bib" 1744390239.54673 46323 d7b94a445857170fc1233321d0322eaa "" "/usr/local/texlive/2025/texmf-dist/bibtex/bst/base/unsrt.bst" 1292289607 18030 1376b4b231b50c66211e47e42eda2875 "" - "paper.aux" 1744390569.9295 7959 ac3c307910c71eb8d23b97795748826d "pdflatex" + "paper.aux" 1744456830.4036 7943 3a71d8669c9ed74685c0a88ee54b183b "pdflatex" (generated) "paper.bbl" "paper.blg" (rewritten before read) -["pdflatex"] 1744390568.72948 "paper.tex" "paper.pdf" "paper" 1744390570.25376 0 +["pdflatex"] 1744456829.19242 "paper.tex" "paper.pdf" "paper" 1744456830.74178 0 "/usr/local/texlive/2025/texmf-dist/fonts/enc/dvips/inconsolata/i4-t1-4.enc" 1558214095 7693 0f2dce6d313c82989ec3a67fc24df2a0 "" "/usr/local/texlive/2025/texmf-dist/fonts/enc/dvips/libertine/lbtn_25tcsq.enc" 1490131464 2921 8ca0eb0831f9bc5da080d3697cfe67bf "" "/usr/local/texlive/2025/texmf-dist/fonts/enc/dvips/libertine/lbtn_76gpa5.enc" 1490131464 2933 9ad527ce78d7c5fa0a642dead095f172 "" @@ -219,10 +219,10 @@ "diagram/TLBAccess.drawio.png" 1744196148.80543 77522 75367f218335fe386db852966a892e9b "" "diagram/bargraph.png" 1744196148.80607 74263 65509d21744edc6c9ca02b8c67d664fb "" "diagram/kmeans.png" 1744196148.80901 94217 5d14308c169ff296bf499805b9823aa6 "" - "paper.aux" 1744390569.9295 7959 ac3c307910c71eb8d23b97795748826d "pdflatex" - "paper.bbl" 1744390568.7256 3824 3a7d4db0e425f84ef7bb98164f0eac8f "bibtex paper" - "paper.out" 1744390569.93032 3686 15f71b74083c4eefc68ea70789a0645a "pdflatex" - "paper.tex" 1744390408.3819 80741 a3601392619340c3fa4fcbc30ca1b51c "" + "paper.aux" 1744456830.4036 7943 3a71d8669c9ed74685c0a88ee54b183b "pdflatex" + "paper.bbl" 1744455340.84361 3824 3a7d4db0e425f84ef7bb98164f0eac8f "bibtex paper" + "paper.out" 1744456830.40439 3686 15f71b74083c4eefc68ea70789a0645a "pdflatex" + "paper.tex" 1744455674.22027 80592 8505b39cbc5a5d440ba01cdea5712579 "" (generated) "paper.aux" "paper.log" diff --git a/docs/EuroSys/Paper/paper.log b/docs/EuroSys/Paper/paper.log index cdc27eb..604a335 100644 --- a/docs/EuroSys/Paper/paper.log +++ b/docs/EuroSys/Paper/paper.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.27 (TeX Live 2025) (preloaded format=pdflatex 2025.4.2) 11 APR 2025 17:56 +This is pdfTeX, Version 3.141592653-2.6-1.40.27 (TeX Live 2025) (preloaded format=pdflatex 2025.4.2) 12 APR 2025 12:20 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -1347,6 +1347,12 @@ LaTeX Font Info: Font shape `T1/LinuxLibertineT-TLF/m/n' will be [4.4{/usr/local/texlive/2025/texmf-dist/fonts/enc/dvips/libertine/lbtn_ncsllp.e nc}{/usr/local/texlive/2025/texmf-dist/fonts/enc/dvips/libertine/lbtn_oexx6f.en c} <./diagram/TLBAccess.drawio.png>] +Overfull \hbox (2.40372pt too wide) in paragraph at lines 719--723 +\T1/LinuxLibertineT-TLF/m/n/9 (-20) loc [[]], Je-mal-loc is the de-fault mem-or +y al-lo-ca-tor for CHERIBSD [[]], + [] + + LaTeX Font Info: Font shape `T1/LinuxBiolinumT-TLF/m/it' will be (Font) scaled to size 9.0pt on input line 833. @@ -1454,13 +1460,13 @@ Package rerunfilecheck Info: File `paper.out' has not changed. (rerunfilecheck) Checksum: 15F71B74083C4EEFC68EA70789A0645A;3686. ) Here is how much of TeX's memory you used: - 24024 strings out of 473190 - 393754 string characters out of 5715801 - 965870 words of memory out of 5000000 + 24021 strings out of 473190 + 393679 string characters out of 5715801 + 965554 words of memory out of 5000000 46198 multiletter control sequences out of 15000+600000 - 768597 words of font info for 442 fonts, out of 8000000 for 9000 + 768332 words of font info for 440 fonts, out of 8000000 for 9000 1302 hyphenation exceptions out of 8191 - 90i,16n,131p,1002b,804s stack positions out of 10000i,1000n,20000p,200000b,200000s + 90i,16n,131p,1002b,808s stack positions out of 10000i,1000n,20000p,200000b,200000s -Output written on paper.pdf (9 pages, 714018 bytes). +Output written on paper.pdf (9 pages, 713986 bytes). PDF statistics: 310 PDF objects out of 1000 (max. 8388607) 260 compressed objects within 3 object streams diff --git a/docs/EuroSys/Paper/paper.pdf b/docs/EuroSys/Paper/paper.pdf index 42525edd719c5285b9a3ca57b58c55e16d747e56..93fdcd34f2c4ff1a5daaf773b37f13d2e7fa52c0 100644 GIT binary patch delta 49170 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

}*UdpW@^Ntd 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 delta 49220 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∈(igxg&Ko^m(%Fwx^+SipqzEz?ZoGJHOJj?0yI_G>6*4tO>Jvl{?y3km><-vi z2I(>-Hp3s55RExVHeiT3ur^RSf-IJx>%B-bMkLM@HFaro5z4&_S?o25M*NE2cd+oF zdROv2gi~Kv6<=GAd=30Ll(%4W@Ws!<3&s_As2-A;pGF4~lNTn)Xor=4^&UJcaCfj2 zv~OLdL;!NYmx>QQ<|HRobcI4HQ4f|H~Zk3SOP2sub4LGg3nvpXAq{ zhX{B5e!A&L`0OR~){^%{SDHks=k54}?08?F?2iqBo_w|shXl*X N0!KzBrXUXY{{VuL^Em(j diff --git a/docs/EuroSys/Paper/paper.tex b/docs/EuroSys/Paper/paper.tex index 0d59ca3..aff94dd 100644 --- a/docs/EuroSys/Paper/paper.tex +++ b/docs/EuroSys/Paper/paper.tex @@ -332,7 +332,7 @@ huge pages~\cite{panwar_hawkeye_2019}. Huge pages, also known as large pages, allow for the allocation of memory in significantly larger chunks compared to traditional small pages. By reducing the number of TLB entries needed to access a given amount -of memory, Huge pages offer a potential avenue for optimising TLB utilisation by reducing the number +of memory, huge pages offer a potential avenue for optimising TLB utilisation by reducing the number of entries needed to map large memory regions. This not only decreases the frequency of TLB misses but also lowers the overhead associated with address translation. By minimising these bottlenecks, huge pages can improve system performance in aspects such as speeding @@ -348,7 +348,7 @@ entries required to map extensive memory regions, thereby decreasing TLB misses Furthermore, it accelerates memory-intensive tasks by reducing the overhead associated with managing non-contiguous memory allocations. The contributions for the following paper are as follows: \begin{itemize} - \item \textbf{Fat Addresses Translations}: Introduces fat-pointers that include memory bounds, allowing + \item \textbf{FAT Addresses Translations}: Introduces FAT that include memory bounds, allowing efficient tracking and management of physically contiguous memory regions (section ~\ref{sec:FatPointerTranslations}). \item \textbf{CHERI’s Capability-based Optimization}: Demonstrates how CHERI's architecture can be @@ -495,7 +495,7 @@ in this implementation is the use of range addresses with CHERI CC~\cite{woodruf Figure \ref{fig:HighOverviewArchitecture} illustrates a comparison between standard memory allocation (malloc()) and a proposed FAT method. The standard approach involves a C program interacting with a custom allocator, utilizing 48-bit free virtual addresses and a TLB walk (L1, L2 and L3 cache) to achieve non-contiguous allocation in physical memory. This typically results in more TLB entries and increased TLB misses increasing the reasoning to have more TLB walks. -In contrast, the Fat-pointer Address Translations method employs a custom allocator leveraging +In contrast, the FAT Address Translations method employs a custom allocator leveraging physically contiguous memory by using CHERI to encode bounds within the pointers and as show in the figure \ref{fig:HighOverviewArchitecture} there is almost no reliance on walking the TLB hierarchy. @@ -533,7 +533,7 @@ Figure \ref{fig:RangeOfMemory} illustrates a straightforward use-case in which t large contiguous memory area, or huge page. Within this huge page, the orange and blue lines indicate two separate memory allocations equivalent to invoking malloc twice to allocate memory in distinct regions. This scenario simulates a block-based memory allocator operating within the confines of the huge page. -The allocations use the bounds encoded in the FAT-pointer, ensuring tracking of the allocated memory regions. +The allocations use the bounds encoded in the FAT, ensuring tracking of the allocated memory regions. By using the CHERI bounds, this method maintains the contiguity of the allocated blocks within the huge page. \subsection{128 bit compressed bounds} @@ -588,7 +588,7 @@ malloc. Offering a more flexible alternative than fixed-size TLB entries. \subsection{Instrumenting Block-Based Allocators with Physically Contiguous Memory} \begin{figure}[h] \includegraphics[width=0.4\textwidth]{diagram/TLBAccess.drawio.png} - \caption{Fat-pointer Address Translations using huge pages} + \caption{FAT Address Translations using huge pages} \label{fig:HugePages} \end{figure} To build up based on Section ~\ref{sec:RangeMemory} and ~\ref{sec:128bitCompressedBounds}. @@ -628,7 +628,7 @@ on physically contigous memory. \section{Memory allocator design} \label{sec:MemoryAllocator} This section presents a straightforward memory allocator designed and implemented based on the -principles outlined FAT ~\ref{sec:FatPointerTranslations}. The allocator consists of three core functions: InitAlloc, +principles outlined FAT (section ~\ref{sec:FatPointerTranslations}). The allocator consists of three core functions: InitAlloc, malloc, and free. The InitAlloc function initializes the memory pool, setting up the necessary data structures and metadata required for efficient memory management. The malloc function is responsible for allocating a contiguous block of memory of a specified size, while the free @@ -656,7 +656,7 @@ function deallocates the memory, returning it to the pool for future use. \end{algorithm} When the malloc function (Algorithm \ref{alg:malloc}) is invoked, the algorithm employs an eager allocation strategy for physical memory. -This is achieved through the use of the SetBounds mechanism, which constructs a FAT-pointer specialized +This is achieved through the use of the SetBounds mechanism, which constructs a FAT specialized pointer that encodes both the start and end addresses of the allocated memory region within the pointer itself. The start and end addresses correspond to the size of the memory block requested by malloc. This approach introduces a method of memory tracking, where the bounds of the allocated region are @@ -665,7 +665,7 @@ explicitly encoded in the address, enabling efficient monitoring and management Furthermore, this design uses shared huge page TLB entries to map and track memory addresses. By encoding bounds directly into the address, the algorithm ensures that memory accesses remain within the allocated region, thereby reducing the risk of out-of-bounds -errors. This use of FAT-pointers and shared TLB entries not only aligns with the principles of +errors. This use of FAT and shared TLB entries not only aligns with the principles of efficient memory management but also demonstrates a practical usecase of huge pages in CHERI. \begin{algorithm} @@ -679,9 +679,9 @@ efficient memory management but also demonstrates a practical usecase of huge pa \end{algorithmic} \end{algorithm} - The memory deallocation (Algorithm \ref{alg:free}) mechanism in the proposed allocator is facilitated by the FAT-pointer structure + The memory deallocation (Algorithm \ref{alg:free}) mechanism in the proposed allocator is facilitated by the FAT structure introduced in the malloc algorithm. When the free function is invoked, it uses the metadata - embedded within the FAT-pointer to determine the range and size of the allocated memory region. + embedded within the FAT to determine the range and size of the allocated memory region. Specifically, the start and end addresses encoded in FAT to provide the necessary information to identify the exact memory block to be deallocated. This allows the allocator to unmap the corresponding memory region from the address space. @@ -1011,7 +1011,7 @@ to minimize fragmentation. Comprehensive benchmarking demonstrates that the allocator reduces TLB misses by up to 90\%, leading to substantial performance gains in memory-intensive workloads, though the improvements are less pronounced for larger, computation-heavy applications. These results highlight the allocator's potential to advance memory management -by combining enhanced security and performance through CHERI's capability-based model with the use of huge pages. +by repurposing CHERI's capability-based model with the use of huge pages. diff --git a/localpush.sh b/localpush.sh index 495b895..bdd5d8c 100644 --- a/localpush.sh +++ b/localpush.sh @@ -2,5 +2,5 @@ files=`find . -newermt "-3600 secs" | sed 's|^./||'` for file in $files do - scp -P 35585 "$file" "akilan@217.76.63.222:/home/akilan/Alloc-Test/CHERI-Allocator/$file" + scp -P 45161 "$file" "akilan@217.76.63.222:/home/akilan/Alloc-Test/CHERI-Allocator/$file" done