Commit 6813838d authored by Celian GOSSEC's avatar Celian GOSSEC

Add transition slide for solution used in PW algorithms

parent 146fdfca
......@@ -80,7 +80,7 @@
\end{frame}
\begin{frame}
\frametitle{Objective and problems}
\frametitle{Objectives and problem}
\structure{Objective: improving our performances} \\
Improve the performances of the library through the aforementioned means.
The current short- and long-term points of interest:
......@@ -104,12 +104,33 @@
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Different possibilites}
\begin{itemize}
\item A naive solution: reimplement every algorithm
\footnote{Absolutely not viable of course}
\item A highly generic solution using advanced design patterns (Variadic template packing, Index packing, ...)
\begin{itemize}
\item Con: Difficult to implement
\item Con: Miss out on algorithm-specific optimization
\item Pro: No code repeated
\item Pro: Very C++
\end{itemize}
\item A hybrid solution: Canvas with derived algorithms
\begin{itemize}
\item Pro: Easy to implement
\item Pro: Has algorithm-specific optimization
\item Con: Code pattern is repeated
\item Con: Not using all features that C++ offers
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}[fragile]
\frametitle{The design pattern}
\begin{tikzpicture}
\tikzset{land/.style={draw}, obj/.style={draw,fill=red!20}};
\tikzstyle{inheritance}=[->, >=open triangle 90, thick]
\tikzstyle{line}=[-, thick]
\tikzstyle{class}=[draw, fill=red!30, rectangle split, rectangle split parts=2]
......@@ -145,8 +166,8 @@
\node[draw, fill=red!50] (exec) [below = 4cm of src, align=left]
{
\tiny parallel\_call(Base\* canvas) \{ \\
\tiny parallel\_for(canvas->size, *canvas) \\
\tiny parallel\_call(Base\* algo) \{ \\
\tiny parallel\_for(algo->gDomain().size, *algo) \\
\tiny \}
};
......@@ -162,7 +183,7 @@
\begin{frame}
\frametitle{Performances obtained}
for each pixel, increment value by 1 \\
Speedup negligible / no speedup (4.4G/s vs 4G/s) \footnotemark[5]
Speedup negligible / no speedup (4.4G/s vs 4G/s) \footnotemark[6]
\includegraphics[width=12cm]{figs/bench_easy.png}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment