diff --git a/docs/EuroSys/Paper/.DS_Store b/docs/EuroSys/Paper/.DS_Store index 584feca..87e97f3 100644 Binary files a/docs/EuroSys/Paper/.DS_Store and b/docs/EuroSys/Paper/.DS_Store differ diff --git a/docs/EuroSys/Paper/changes.pdf b/docs/EuroSys/Paper/changes.pdf new file mode 100644 index 0000000..e3de7f6 Binary files /dev/null and b/docs/EuroSys/Paper/changes.pdf differ diff --git a/docs/EuroSys/Paper/paper.aux b/docs/EuroSys/Paper/paper.aux index 5dfb67f..b701933 100644 --- a/docs/EuroSys/Paper/paper.aux +++ b/docs/EuroSys/Paper/paper.aux @@ -38,17 +38,19 @@ \newlabel{sec:RangeMemory}{{3.1}{3}{Encoding Ranges as Bounds to the Pointer}{subsection.3.1}{}} \@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Range of memory}}{3}{figure.caption.4}\protected@file@percent } \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{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}128 bit compressed bounds}{3}{section.4}\protected@file@percent } +\newlabel{sec:128bitCompressedBounds}{{4}{3}{128 bit compressed bounds}{section.4}{}} \@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 {section}{\numberline {4}Memory allocator design}{4}{section.4}\protected@file@percent } -\newlabel{sec:MemoryAllocator}{{4}{4}{Memory allocator design}{section.4}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Instrumenting Block-Based Allocators with Physically Contiguous Memory}{4}{subsection.4.1}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {5}Memory allocator design}{4}{section.5}\protected@file@percent } +\newlabel{sec:MemoryAllocator}{{5}{4}{Memory allocator design}{section.5}{}} \@writefile{loa}{\contentsline {algorithm}{\numberline {1}{\ignorespaces Malloc implementation}}{4}{algorithm.1}\protected@file@percent } \newlabel{alg:malloc}{{1}{4}{Malloc implementation}{algorithm.1}{}} \@writefile{loa}{\contentsline {algorithm}{\numberline {2}{\ignorespaces Free implementation}}{4}{algorithm.2}\protected@file@percent } \newlabel{alg:free}{{2}{4}{Free implementation}{algorithm.2}{}} +\@writefile{loa}{\contentsline {algorithm}{\numberline {3}{\ignorespaces Init alloc function to create a initial 1 GB huge page}}{4}{algorithm.3}\protected@file@percent } +\newlabel{alg:initAlloc}{{3}{4}{Init alloc function to create a initial 1 GB huge page}{algorithm.3}{}} \citation{jemalloc} \citation{cheribsd} \citation{Morello} @@ -57,25 +59,25 @@ \citation{Benchmark} \citation{singh1993} \citation{holt1995} -\@writefile{loa}{\contentsline {algorithm}{\numberline {3}{\ignorespaces Init alloc function to create a initial 1 GB huge page}}{5}{algorithm.3}\protected@file@percent } -\newlabel{alg:initAlloc}{{3}{5}{Init alloc function to create a initial 1 GB huge page}{algorithm.3}{}} -\@writefile{toc}{\contentsline {section}{\numberline {5}Evaluation}{5}{section.5}\protected@file@percent } -\newlabel{sec:Evaluation}{{5}{5}{Evaluation}{section.5}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Experiment setup}{5}{subsection.5.1}\protected@file@percent } -\newlabel{sec:Experiment}{{5.1}{5}{Experiment setup}{subsection.5.1}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Benchmarks}{5}{subsection.5.2}\protected@file@percent } -\newlabel{sec:Micro}{{5.2.1}{5}{Micro benchmark}{subsubsection.5.2.1}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.1}Micro benchmark}{5}{subsubsection.5.2.1}\protected@file@percent } -\newlabel{sec:Macro}{{5.2.2}{5}{Macro benchmark}{subsubsection.5.2.2}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.2.2}Macro benchmark}{5}{subsubsection.5.2.2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.3}Results}{6}{subsection.5.3}\protected@file@percent } -\newlabel{sec:Results}{{5.3}{6}{Results}{subsection.5.3}{}} +\@writefile{toc}{\contentsline {section}{\numberline {6}Evaluation}{5}{section.6}\protected@file@percent } +\newlabel{sec:Evaluation}{{6}{5}{Evaluation}{section.6}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}Experiment setup}{5}{subsection.6.1}\protected@file@percent } +\newlabel{sec:Experiment}{{6.1}{5}{Experiment setup}{subsection.6.1}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2}Benchmarks}{5}{subsection.6.2}\protected@file@percent } +\newlabel{sec:Micro}{{6.2.1}{5}{Micro benchmark}{subsubsection.6.2.1}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.1}Micro benchmark}{5}{subsubsection.6.2.1}\protected@file@percent } +\newlabel{sec:Macro}{{6.2.2}{5}{Macro benchmark}{subsubsection.6.2.2}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.2}Macro benchmark}{5}{subsubsection.6.2.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.3}Results}{5}{subsection.6.3}\protected@file@percent } +\newlabel{sec:Results}{{6.3}{5}{Results}{subsection.6.3}{}} \@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces ARM performance counters}}{6}{table.caption.6}\protected@file@percent } \newlabel{tab:org246a883}{{1}{6}{ARM performance counters}{table.caption.6}{}} \@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces Percentage difference between the modified memory allocator against the default system memory allocator}}{7}{figure.caption.7}\protected@file@percent } \newlabel{fig:bargraph}{{4}{7}{Percentage difference between the modified memory allocator against the default system memory allocator}{figure.caption.7}{}} \@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Kmeans COZ benchmark executed against various cluster sizes}}{7}{figure.caption.8}\protected@file@percent } \newlabel{fig:org8683315}{{5}{7}{Kmeans COZ benchmark executed against various cluster sizes}{figure.caption.8}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.4}Analysis}{7}{subsection.6.4}\protected@file@percent } +\newlabel{sec:Analysis}{{6.4}{7}{Analysis}{subsection.6.4}{}} \bibstyle{unsrt} \bibdata{paperReferences} \bibcite{mittal_survey_2017}{{1}{}{{}}{{}}} @@ -104,9 +106,7 @@ \newlabel{tocindent4}{0pt} \newlabel{tocindent5}{0pt} \providecommand\NAT@force@numbers{}\NAT@force@numbers -\@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}Conclusion}{8}{section.6}\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 } \newlabel{TotPages}{{8}{8}{}{page.8}{}} \gdef \@abspage@last{8} diff --git a/docs/EuroSys/Paper/paper.fdb_latexmk b/docs/EuroSys/Paper/paper.fdb_latexmk index 94b17e0..a1ba3ab 100644 --- a/docs/EuroSys/Paper/paper.fdb_latexmk +++ b/docs/EuroSys/Paper/paper.fdb_latexmk @@ -1,13 +1,13 @@ # Fdb version 4 -["bibtex paper"] 1745224532.08591 "paper.aux" "paper.bbl" "paper" 1745224533.70736 0 +["bibtex paper"] 1745226088.13548 "paper.aux" "paper.bbl" "paper" 1745226887.34445 0 "./paperReferences.bib" 1745154876.64218 46828 b3c7e70331098da6a7fbd68e2a4277a3 "" "/usr/local/texlive/2025/texmf-dist/bibtex/bst/base/unsrt.bst" 1292289607 18030 1376b4b231b50c66211e47e42eda2875 "" - "paper.aux" 1745224533.40044 7767 c3c79e09db5ac00f42873e8ffbd9b68a "pdflatex" + "paper.aux" 1745226887.03248 7750 1497cb0b90f6a69d43cefe86a839a1cf "pdflatex" (generated) "paper.bbl" "paper.blg" (rewritten before read) -["pdflatex"] 1745224532.17335 "paper.tex" "paper.pdf" "paper" 1745224533.70749 0 +["pdflatex"] 1745226885.83453 "paper.tex" "paper.pdf" "paper" 1745226887.34458 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" 1745224533.40044 7767 c3c79e09db5ac00f42873e8ffbd9b68a "pdflatex" - "paper.bbl" 1745224532.17051 4124 00c91189ca7ebb5f2c50a354246b9795 "bibtex paper" - "paper.out" 1745224533.40129 3243 8666c5d883f1c403037236be395fbf0f "pdflatex" - "paper.tex" 1745224518.39528 84132 33b106b0947466adbb9bc7c72ae34180 "" + "paper.aux" 1745226887.03248 7750 1497cb0b90f6a69d43cefe86a839a1cf "pdflatex" + "paper.bbl" 1745226088.21937 4124 00c91189ca7ebb5f2c50a354246b9795 "bibtex paper" + "paper.out" 1745226887.0343 3219 ff23a20e7f9cd62748c922bd1981ad35 "pdflatex" + "paper.tex" 1745226861.93669 84069 24e852831cdd5c77cb63a6d7ba0879e7 "" (generated) "paper.aux" "paper.log" diff --git a/docs/EuroSys/Paper/paper.log b/docs/EuroSys/Paper/paper.log index 0a69393..0b8492b 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) 21 APR 2025 09:35 +This is pdfTeX, Version 3.141592653-2.6-1.40.27 (TeX Live 2025) (preloaded format=pdflatex 2025.4.2) 21 APR 2025 10:14 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -1313,6 +1313,9 @@ Package pdftex.def Info: diagram/TLBAccess.drawio.png used on input line 616. Class acmart Warning: A possible image without description on input line 619. +LaTeX Warning: `h' float specifier changed to `ht'. + + Underfull \vbox (badness 10000) has occurred while \output is active [] @@ -1354,7 +1357,7 @@ Package microtype Info: Loading generic protrusion settings for font family (microtype) `zi4' (encoding: T1). (microtype) For optimal results, create family-specific settings. (microtype) See the microtype manual for details. - + File: diagram/bargraph.png Graphic file (type png) Package pdftex.def Info: diagram/bargraph.png used on input line 911. @@ -1367,23 +1370,11 @@ Class acmart Warning: A possible image without description on input line 913. LaTeX Warning: `h' float specifier changed to `ht'. -Underfull \vbox (badness 2088) has occurred while \output is active [] - - [5.5{/usr/local/texlive/2025/texmf-dist/fonts/enc/dvips/inconsolata/i4-t1-4.enc }] -Underfull \vbox (badness 10000) has occurred while \output is active [] - - - -Underfull \vbox (badness 10000) has occurred while \output is active [] - - - -[6.6] -<./diagram/kmeans.png, id=207, 1011.78pt x 578.16pt> +<./diagram/kmeans.png, id=201, 1011.78pt x 578.16pt> File: ./diagram/kmeans.png Graphic file (type png) Package pdftex.def Info: ./diagram/kmeans.png used on input line 961. @@ -1397,16 +1388,21 @@ Overfull \hbox (24.11621pt too wide) in paragraph at lines 961--962 Class acmart Warning: A possible image without description on input line 963. -Underfull \vbox (badness 2096) has occurred while \output is active [] - - - - Underfull \vbox (badness 10000) has occurred while \output is active [] +[6.6] + + +Underfull \vbox (badness 1769) has occurred while \output is active [] + + + [7.7 <./diagram/bargraph.png> <./diagram/kmeans.png>] (./paper.bbl +Underfull \vbox (badness 3428) has occurred while \output is active [] + + Underfull \hbox (badness 2443) in paragraph at lines 91--93 @@ -1442,16 +1438,16 @@ LaTeX2e <2024-11-01> patch level 2 L3 programming layer <2025-01-18> *********** Package rerunfilecheck Info: File `paper.out' has not changed. -(rerunfilecheck) Checksum: 8666C5D883F1C403037236BE395FBF0F;3243. +(rerunfilecheck) Checksum: FF23A20E7F9CD62748C922BD1981AD35;3219. ) Here is how much of TeX's memory you used: - 24043 strings out of 473190 - 394298 string characters out of 5715801 - 968614 words of memory out of 5000000 + 24046 strings out of 473190 + 394363 string characters out of 5715801 + 967839 words of memory out of 5000000 46201 multiletter control sequences out of 15000+600000 - 775822 words of font info for 454 fonts, out of 8000000 for 9000 + 776193 words of font info for 456 fonts, out of 8000000 for 9000 1302 hyphenation exceptions out of 8191 - 90i,16n,131p,1002b,645s stack positions out of 10000i,1000n,20000p,200000b,200000s + 90i,16n,131p,1002b,639s stack positions out of 10000i,1000n,20000p,200000b,200000s -Output written on paper.pdf (8 pages, 710646 bytes). +Output written on paper.pdf (8 pages, 710565 bytes). PDF statistics: - 293 PDF objects out of 1000 (max. 8388607) - 244 compressed objects within 3 object streams + 292 PDF objects out of 1000 (max. 8388607) + 243 compressed objects within 3 object streams 60 named destinations out of 1000 (max. 500000) 119498 words of extra memory for PDF output out of 128383 (max. 10000000) diff --git a/docs/EuroSys/Paper/paper.pdf b/docs/EuroSys/Paper/paper.pdf index e55fda2..76d4f53 100644 Binary files a/docs/EuroSys/Paper/paper.pdf and b/docs/EuroSys/Paper/paper.pdf differ diff --git a/docs/EuroSys/Paper/paper.tex b/docs/EuroSys/Paper/paper.tex index e767def..6413453 100644 --- a/docs/EuroSys/Paper/paper.tex +++ b/docs/EuroSys/Paper/paper.tex @@ -334,25 +334,25 @@ memory address translations. A TLB is a specialised cache in the memory manageme It reduces the time required to convert virtual addresses to physical addresses. When a program accesses data in memory, the MMU first checks the TLB for a matching entry and avoids the slow process of accessing the page tables situated in memory. However, as applications grow more complex, the fixed size of -TLBs often cannot keep up, leading to more TLB misses and performance slowdowns~\cite{mittal_survey_2017}. +TLBs often cannot keep up leading to more TLB misses and performance slowdowns~\cite{mittal_survey_2017}. To tackle this issue, researchers have explored new solutions, including the use of huge pages~\cite{panwar_hawkeye_2019}. -Huge pages, also known as large pages, allow for the allocation of memory in significantly larger chunks +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 TLBs which are used by reducing the number +of memory. Huge pages offer a potential avenue for optimising TLBs which are used 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 -up memory-intensive applications, reducing latency in data access, and enhancing throughput for +up memory-intensive applications, reducing latency in data access and enhancing throughput for workloads that rely heavily on large datasets. Simultaneously, advancements in hardware-level security, such as the Capability Hardware Enhanced RISC Instructions (CHERI) ~\cite{woodruff_cheri_2014} architecture presents additional opportunities for performance enhancement. CHERI's capability-based addressing approach not only strengthens system security by tightly controlling memory access but also opens avenues for optimising memory management -operations. By integrating CHERI's compressed encoded bounds~\cite{woodruff_cheri_2019} with the use of huge pages, We have shown it is possible to track and manage -large, physically contiguous memory blocks without requiring numerous TLB entries. This combination reduces the TLB pressure by minimising the number of -entries required to map extensive memory regions, thereby decreasing TLB misses and improving address translation performance. +operations. By integrating CHERI's compressed encoded bounds~\cite{woodruff_cheri_2019} with the use of huge pages, We have shown it is possible to track, manage +large and physically contiguous memory blocks without requiring numerous TLB entries. This combination reduces the TLB pressure by minimising the number of +entries required to map extensive memory regions thereby decreasing TLB misses and improving address translation performance. Furthermore, we introduce FAT which 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} @@ -470,7 +470,7 @@ for scalable software compartmentalisation. \subsection{CHERI CC} CHERI Concentrate: Practical Compressed Capabilities\cite{woodruff_cheri_2019} introduces a compression scheme for CHERI that aims to address the performance and compatibility challenges associated with capability pointers. Capability pointers enhance memory safety by embedding bounds and permissions directly -within pointers. Traditional implementations of CHERI double their size—leading in bounds to increased memory usage. CHERI CC +within pointers. Traditional implementations of CHERI double their size leading in bounds to increased memory usage. CHERI CC proposes a compression strategy that preserves security while reducing size and inefficiencies. Key contributions include a floating-point bound encoding technique with an internal exponent mechanism that offers greater precision for smaller objects and optimised space usage for larger ones. @@ -517,9 +517,9 @@ 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 (\textit{malloc()}) and the proposed FAT method. The standard approach involves a C program interacting with a custom allocator which uses 48-bit virtual addresses and a TLB walker (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 Address Translations method employs a custom allocator leveraging +In contrast, the FAT method employs a custom allocator leveraging physically contiguous memory by using CHERI to encode -bounds within the pointers and as shown in the figure \ref{fig:HighOverviewArchitecture} (there is almost no reliance on walking the TLB hierarchy). +bounds within the pointers and as shown in the figure \ref{fig:HighOverviewArchitecture}. There is almost no reliance on walking the TLB hierarchy. % Figure \ref{fig:HighOverviewArchitecture} illustrates % the methodology employed to use the CHERI @@ -558,7 +558,7 @@ This scenario simulates a block-based memory allocator operating within the conf The allocations use the bounds encoded in FAT which ensures 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} +\section{128 bit compressed bounds} \label{sec:128bitCompressedBounds} % We use CHERI CC (Compressed bounds) to track regions of memory used in physically % contigous space. CHERI CC consists of bounds which are compressed and represent a @@ -855,8 +855,8 @@ the proposed changes. \end{table*} \subsection{Benchmarks} -We elaborate here on the two classes of benchmarks~\cite{Benchmark}. Micro benchmarks (Section~\ref{sec:Micro}). -focused on particular allocation and deallocation patterns such as sequential and +We elaborate here on the two classes of benchmarks~\cite{Benchmark}. Micro benchmarks +focus on particular allocation, deallocation patterns such as sequential and random memory accesses. This is to stress-test the allocator under controlled conditions. Macro benchmarks involves real-world applications offering insights into how the allocator performs with complex memory allocation demands such as large datasets with varying execution contexts. diff --git a/docs/EuroSys/Paper/todo.org b/docs/EuroSys/Paper/todo.org index b37308a..0cba078 100644 --- a/docs/EuroSys/Paper/todo.org +++ b/docs/EuroSys/Paper/todo.org @@ -1,9 +1,10 @@ Recheck require read of the paper -- [x] Captilisation fixes (Recheck) -- [ ] Check for unessary commas (Requires read through paper) (Recheck) -- [ ] Check references (Last priority) -- [x] Unify english grammer (emphasize -> Check british english spelling) (Recheck) +** General changes +- [x] Captilisation fixes +- [x] Check for unessary commas (Requires read through paper) +- [x] Check references (Last priority) +- [x] Unify english grammer (emphasize -> Check british english spellings) - [x] Text make to italics (For function calls) - [x] Space missing from bracket - [x] Utlizing to using @@ -12,15 +13,15 @@ Recheck require read of the paper - [x] Comment out future work section - [x] Section with always captial S - [x] RMM fix reference - - ** Literature review + +** Literature review - [x] TLB reach needs defining - [x] PTE acronym - [x] Citation (HP Tunable page table) - [x] CHERI standardise bullet points into a paragraph. - ** FAT address range table +** FAT address range table - [x] Sentence 1 remove "talks about" - [x] "Lesser pressure" FAT leverages to reduce pressure on the TLB - [x] Fix "as show" to "as shown" @@ -38,16 +39,15 @@ Recheck require read of the paper - [x] "To build up based on Section 3.1 and 3.2." Remove this setence - - [x] "As demonstrated -384 with the allocator implementation in section 4" + - [x] "As demonstrated with the allocator implementation in section 4" Remove this sentence - [x] "repcrecated" to "replicated" - ** Malloc implementation +** Malloc implementation - [x] "Specifically, the start and end addresses encoded in FAT to provide the necessary information to identify the exact memory block to be deallocated." Rewrite this sentence - ** Evaluation +** Evaluation - [x] 2nd para move to benchmarks section - [x] "The results (section 5.3)... (comment out) - [x] "The expirement setup" comment out @@ -55,12 +55,6 @@ Recheck require read of the paper - [x] "This observation highlights the importance" Comment out - ** Conclusion +** Conclusion - [x] "This approach has helped reduce" -> "This approach reduces" - [x] "Remove comprehensive" - - - ** Read 1 - - *** Introduction - - [ ] Check if Rob mentioned paraphrasing setence 1. diff --git a/docs/EuroSys/Paper/todo.tex b/docs/EuroSys/Paper/todo.tex new file mode 100644 index 0000000..37ebe57 --- /dev/null +++ b/docs/EuroSys/Paper/todo.tex @@ -0,0 +1,101 @@ +% Created 2025-04-21 Mon 10:25 +% Intended LaTeX compiler: pdflatex +\documentclass[11pt]{article} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} +\usepackage{longtable} +\usepackage{wrapfig} +\usepackage{rotating} +\usepackage[normalem]{ulem} +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage{capt-of} +\usepackage{hyperref} +\author{Akilan} +\date{\today} +\title{} +\hypersetup{ + pdfauthor={Akilan}, + pdftitle={}, + pdfkeywords={}, + pdfsubject={}, + pdfcreator={Emacs 30.1 (Org mode 9.7.11)}, + pdflang={English}} +\begin{document} + +\tableofcontents + +Recheck require read of the paper +\section{General changes} +\label{sec:org525fa77} +\begin{itemize} +\item Captilisation fixes +\item Check for unessary commas (Requires read through paper) +\item Check references (Last priority) +\item Unify english grammer (emphasize -> Check british english spellings) +\item Text make to italics (For function calls) +\item Space missing from bracket +\item Utlizing to using +\item Small number use word +\item Make all past tense to present tense (Recheck) +\item Comment out future work section +\item Section with always captial S +\item RMM fix reference +\end{itemize} +\section{Literature review} +\label{sec:org5f6e72b} +\begin{itemize} +\item TLB reach needs defining +\item PTE acronym +\item Citation (HP Tunable page table) +\item CHERI standardise bullet points into a +paragraph. +\end{itemize} +\section{FAT address range table} +\label{sec:orgc1556d2} +\begin{itemize} +\item Sentence 1 remove "talks about" +\item "Lesser pressure" FAT leverages to reduce pressure on the TLB +\item Fix "as show" to "as shown" +\item Remove "CHERI CC [4] as referred in section 3.2." +to "CHERI CC [4] (section 3.2)" +\item Explain Cheri CC in the literature review +\item Move Cheri CC reference to it has been observed +\item "With FAT rather than using fixed size TLB entries page sizes" +Rephrase this sentence. +\item "We use CHERI CC bounds to 344 be dynamic in +size to be defined based on the size provided when +345 calling malloc. Offering a more flexible +alternative than fixed-size 346 TLB entries." +Make this into 1 sentence. + +\item "To build up based on Section 3.1 and 3.2." +Remove this setence +\item "As demonstrated with the allocator implementation in section 4" +Remove this sentence +\item "repcrecated" to "replicated" +\end{itemize} +\section{Malloc implementation} +\label{sec:org8098e0d} +\begin{itemize} +\item "Specifically, the start and end addresses encoded in FAT to provide the necessary information to identify the exact memory block to be deallocated." +Rewrite this sentence +\end{itemize} +\section{Evaluation} +\label{sec:org67b48c5} +\begin{itemize} +\item 2nd para move to benchmarks section +\item "The results (section 5.3)\ldots{} (comment out) +\item "The expirement setup" comment out +\item Replace "lesser" with fewer +\item "This observation highlights the importance" +Comment out +\end{itemize} +\section{Conclusion} +\label{sec:orge940240} +\begin{itemize} +\item "This approach has helped reduce" -> "This approach reduces" +\item "Remove comprehensive" +\end{itemize} +\end{document}