182 lines
5.2 KiB
TeX
182 lines
5.2 KiB
TeX
\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}
|