\selectlanguage{french}

\section{Introduction (en français)}

\begin{frame}
    \centering
    \includegraphics[width=\textwidth]{fugaku.jpg}

    \emph{Le supercalculateur \emph{Fugaku}}\\
    \licence{© RIKEN}
\end{frame}

\begin{frame}
    \centering
    \includegraphics[height=0.9\textheight]{fugaku-outside.jpg}

    \emph{Le bâtiment du supercalculateur \emph{Fugaku}}\\
    \licence{© RIKEN}
\end{frame}

\begin{frame}[c]{}
    \centering
    \includegraphics[height=0.9\textheight]{fugaku_rack.jpg}\\
    \emph{Une ``baie'' de \emph{Fugaku}}\\
    \licence{Raysonho CC-BY-SA-4.0}
\end{frame}

\begin{frame}
    \centering
    \only<1>{\includegraphics[height=0.9\textheight]{serveur_supermicro.png}}
    \only<2>{\includegraphics[height=0.9\textheight]{serveur_supermicro-mask.png}}
    \\
    \emph{Un serveur}\\
    \licence{© Supermicro}
\end{frame}

\begin{frame}
    \centering
    \includegraphics[width=0.8\textwidth]{cpu.jpg}

    \emph{Un processeur}
\end{frame}

\begin{frame}{À quoi ces supercalculateurs servent~?}
    \begin{itemize}
        \item{} Calcul scientifique
            \begin{itemize}
                \item Simulations de fluides (océans, aérodynamique, \ldots)
                \item Modélisations en chimie, biologie, \ldots{}
                \item Études du climat
            \end{itemize}
        \item Prévisions météo
            \begin{itemize}
                \item[$\rightarrow$] Météo-France~: 29\up{e} plus puissant supercalculateur en
                    2020
            \end{itemize}
        \item Développement de modèles IA
        \item \ldots
    \end{itemize}
\end{frame}

\begin{frame}{Quelques ordres de grandeur}
    \begin{center}
        {\Large\emph{Fugaku}~: 158,976 CPUs}
    \end{center}

    \begin{columns}
        \begin{column}{0.48\textwidth}
            \begin{block}{Coût}
                \begin{itemize}
                    \item{} Un processeur~: $\sim$~100--1\,000\,€
                    \item{} \textit{Fugaku}~: 1 milliard~\$
                \end{itemize}
            \end{block}
        \end{column}\hfill
        \begin{column}{0.48\textwidth}
            \begin{block}{Consommation}
                \begin{itemize}
                    \item{} \textit{Fugaku}~: 30--40\,MW
                    \item{} $\sim$~5\,\% d'un réacteur nucléaire
                \end{itemize}
            \end{block}
        \end{column}
    \end{columns}

    \hfill
    \begin{center}
        \textbf{$\rightarrow$ gagner quelques \% de performance, c'est très
        rentable~!}
    \end{center}
\end{frame}

\begin{frame}{Comment optimise-t-on~?}
    \begin{itemize}
        \item Méthodes ``classiques'' \alert{déjà appliquées} (algorithmique,
            parallélisation, \ldots)
        \item \alert{Sections critiques}~: petit morceau de programme répété
            massivement
        \item Optimiser pour \alert{un processeur spécifique} connu
    \end{itemize}

    \vfill

    \begin{center}
        \textbf{\alert{Chercher où et pourquoi le processeur perd du temps.}}
    \end{center}
\end{frame}

\begin{frame}{Trois goulots d'étranglement étudiés}
    \begin{tightitemize}{1em}
    \pause
    \begin{columns}[T]
        %\column{\dimexpr\paperwidth-7pt}
        \begin{column}{0.32\textwidth}
            \begin{block}{\alert{Backend}}
                \begin{itemize}
                    \item Les ouvriers de l'atelier
                    \item Ouvriers surchargés~: impossible d'aller plus vite
                    \item Possiblement un seul métier
                \end{itemize}
            \end{block}
        \end{column}
        \hfill\pause
        \begin{column}{0.32\textwidth}
            \begin{block}{\alert{Frontend}}
                \begin{itemize}
                    \item Manager
                    \item Surchargé
                        $\implies$ \\
                        ouvriers sous-utilisés
                \end{itemize}
            \end{block}
        \end{column}
        \hfill\pause
        \begin{column}{0.32\textwidth}
            \begin{block}{\alert{Dépendances}}
                \begin{itemize}
                    \item Tâches blocantes
                    \item Tout l'atelier attend qu'un ouvrier ait fini
                \end{itemize}
            \end{block}
        \end{column}
    \end{columns}
    \end{tightitemize}
\end{frame}

\begin{frame}{Analyseurs de code}
    \begin{itemize}
        \item Analyser la situation~:
            \begin{itemize}
                \item Quel goulot d'étranglement~?
                \item Où~?
                \item Pourquoi~?
            \end{itemize}
        \pause{}

        \item CPU~: ``boite noire''
        \item $\sim$ 1 milliard instructions / seconde
    \end{itemize}

    \pause
    \begin{center}
        $\rightarrow$ On modélise pour analyser~!
        \textbf{\alert{``Analyseurs de code''}}
    \end{center}
\end{frame}

\selectlanguage{english}

\begin{frame}{Summary}
    \begin{itemize}
        \item Performance prediction for \alert{computational microkernels}
        \item Approach based on \alert{bottlenecks}
        \item Requires \alert{microarchitectural models}
    \end{itemize}

    \vfill{}

    \begin{center}
        \textbf{Works centered on developing parts of these models}
    \end{center}
\end{frame}