diff --git a/src/aarch64-linux-flush-dcache/visualizer/var_alloc_size.pdf b/src/aarch64-linux-flush-dcache/visualizer/var_alloc_size.pdf index 106b445..74e4949 100644 Binary files a/src/aarch64-linux-flush-dcache/visualizer/var_alloc_size.pdf and b/src/aarch64-linux-flush-dcache/visualizer/var_alloc_size.pdf differ diff --git a/src/aarch64-linux-flush-dcache/visualizer/var_alloc_size.plt b/src/aarch64-linux-flush-dcache/visualizer/var_alloc_size.plt index f1d7b20..436bcd8 100644 --- a/src/aarch64-linux-flush-dcache/visualizer/var_alloc_size.plt +++ b/src/aarch64-linux-flush-dcache/visualizer/var_alloc_size.plt @@ -4,10 +4,13 @@ set output "var_alloc_size.pdf" set style data linespoints + set autoscale set logscale y 10 set xrange [-1:11] +set yrange[10:2000] set xlabel "Order" set ylabel "Avg. Latency (μs)" +set grid ytics -plot "var_alloc_size.dat" \ No newline at end of file +plot "var_alloc_size.dat" notitle \ No newline at end of file diff --git a/tex/.gitignore b/tex/.gitignore index 707efab..407b60e 100644 --- a/tex/.gitignore +++ b/tex/.gitignore @@ -302,3 +302,4 @@ TSWLatexianTemp* # minted **/_minted-skeleton +**/pyenv diff --git a/tex/draft/graphics/var_alloc_size.pdf b/tex/draft/graphics/var_alloc_size.pdf new file mode 100644 index 0000000..74e4949 Binary files /dev/null and b/tex/draft/graphics/var_alloc_size.pdf differ diff --git a/tex/draft/skeleton.pdf b/tex/draft/skeleton.pdf index 3df56f2..c3b8974 100644 Binary files a/tex/draft/skeleton.pdf and b/tex/draft/skeleton.pdf differ diff --git a/tex/draft/skeleton.tex b/tex/draft/skeleton.tex index 5858334..1f8fd70 100644 --- a/tex/draft/skeleton.tex +++ b/tex/draft/skeleton.tex @@ -1052,6 +1052,12 @@ Finally, two simple userspace programs are written to invoke the corresponding k \subsection{Controlled Page Count; Variable Allocation Size} \textcolor{red}{[TODO] Didn't make the graphs yet\dots Run some bcc-tools capture and draw a gnuplot.} +\begin{figure}[h] + \centering + \includegraphics[width=.8\textwidth]{graphics/var_alloc_size.pdf} + \caption{Average coherency op latency of variable-order contiguous allocation} +\end{figure} + \section{Discussion}\label{sec:sw-coherency-discuss} % - you should also measure the access latency after coherency operation, though this is impl-specific (e.g., one vendor can have a simple PoC mechanism where e.g. you have a shared L2-cache that is snooped by DMA engine, hence flush to L2-cache and call it a day for PoC; but another can just as well call main mem the PoC, dep. on impl.)