Compare commits

...

2 commits

3 changed files with 65 additions and 0 deletions

View file

@ -228,6 +228,7 @@ int fibo(int* F, int n) {
\begin{frame}{Evaluation: coverage} \begin{frame}{Evaluation: coverage}
\begin{itemize} \begin{itemize}
\item Baseline: instrumentation (extract deps at runtime) \item Baseline: instrumentation (extract deps at runtime)
\item Filter \textit{long-distance dependencies} ($> \card{\text{ROB}}$)
\item On all \cesasme{} benchmarks \item On all \cesasme{} benchmarks
\end{itemize} \end{itemize}
\begin{minipage}{0.4\textwidth} \begin{minipage}{0.4\textwidth}
@ -257,6 +258,27 @@ int fibo(int* F, int n) {
\end{center} \end{center}
\end{frame} \end{frame}
\begin{frame}{Evaluation: \textit{points-to} analysis}
\begin{itemize}
\item Quantify whether $\exists p, q \in \text{context}$ pointing to
the \alert{same memory region} (``points-to'')
\item Proxy: if $i_0 \to i_1$, then $q \in i_1$ aliases $p \in i_0$
\item If $p = q$, we should catch it
\item If not: either \emph{long-distance} with $p=q$, or \alert{$p \neq
q$}!
\item[$\leadsto$] Keep long-distance dependencies; evaluate coverage on this
\end{itemize}
\begin{center}
\begin{tabular}{r r}
\toprule
$\cov_u$ (\%) & $\cov_w$ (\%) \\
\midrule
\alert{95.0} & \alert{93.7} \\
\bottomrule
\end{tabular}
\end{center}
\end{frame}
\begin{frame}{Evaluation: use in \uica} \begin{frame}{Evaluation: use in \uica}
\begin{columns} \begin{columns}
\column{\dimexpr\paperwidth-8pt} \column{\dimexpr\paperwidth-8pt}

View file

@ -1 +1,3 @@
\input{85_supplementary/results_tables.tex} \input{85_supplementary/results_tables.tex}
\input{85_supplementary/misc.tex}

View file

@ -0,0 +1,41 @@
\section{Misc supplementary material}
\begin{frame}[fragile]{\cesasme{} and control flow}
\begin{center}
\textbf{Straight-line code:} hypothesis of code analysers, but
also\ldots{}
\end{center}
\begin{minipage}[c]{0.35\textwidth}
\begin{lstlisting}[language=C]
for(i) {
if(A[i] % 2 == 0)
A[i] *= 2;
A[i] += B[i];
}
\end{lstlisting}
\end{minipage}
\hfill
\begin{minipage}[c]{0.60\textwidth}
\begin{itemize}
\item If not taken: map
\item If taken: \alert{dependency} in \lstc{A[i]}!
\item Performance varies depending on branch
\item Performance \alert{strongly depends} on \alert{input data}
\end{itemize}
\end{minipage}
\end{frame}
\begin{frame}{\staticdeps: lack of context}
\begin{minipage}[t]{0.48\textwidth}
\begin{block}{Context-dependent stride}
\todo{λ\lstc{F, k: F[i] += F[i+k]}}
\end{block}
\end{minipage}
\hfill
\begin{minipage}[t]{0.48\textwidth}
\begin{block}{Graphs algorithms}
\todo{Adjacency list as pointers to vertices}
\end{block}
\end{minipage}
\end{frame}