X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/ThesisAhmed.git/blobdiff_plain/adc90dd4355e95417b713b836614fd9a4edd3dd1..68ca79118192b40ef64bacc059bad602c13c82ba:/thesis-presentation/AhmedSlides.tex diff --git a/thesis-presentation/AhmedSlides.tex b/thesis-presentation/AhmedSlides.tex index 7e7d97b..b9ac39c 100644 --- a/thesis-presentation/AhmedSlides.tex +++ b/thesis-presentation/AhmedSlides.tex @@ -22,7 +22,7 @@ \usepackage{fixltx2e} %% used to put some subscripts lower, and make them more legible \newcommand{\fxheight}[1]{\ifx#1\relax\relax\else\rule{0pt}{1.52ex}#1\fi} - +\usepackage{ragged2e} \newcommand{\CL}{\Xsub{C}{L}} \newcommand{\Dist}{\mathit{Dist}} \newcommand{\EdNew}{\Xsub{E}{dNew}} @@ -75,8 +75,8 @@ %Iterations using CPU Frequency Scaling} \vspace{2cm} -\title{ \textbf{Energy Consumption Optimization of Parallel Applications with Iterations using CPU Frequency Scaling} \\ \vspace{0.2cm} \hspace{1.8cm}\textbf{\textcolor{cyan}{\small PhD Dissertation Defense}}}\vspace{-1cm} -\author{ \textbf{Ahmed Badri Muslim Fanfakh} \\ \vspace{0.5cm}\small Under Supervision: \textcolor{cyan}{\small Raphaël COUTURIER and Jean-Claude CHARR} \\\vspace{0.1cm} \textcolor{blue}{ University of Bourgogne Franche-Comté - FEMTO-ST - DISC Dept. - AND Team} \\ ~~~~~~~~~~~~~~~~~~~~~ \textbf{\textcolor{blue}{ 17 October 2016 }}} +\title{ \textbf{Energy Consumption Optimization of Parallel Applications with Iterations using CPU Frequency Scaling} \\ \vspace{0.2cm} \hspace{1.8cm}\textbf{\textcolor{cyan}{\small PhD Dissertation Defense}}}\vspace{-0.5cm} +\author{ \textbf{Ahmed Badri Muslim Fanfakh} \\ \vspace{0.5cm}\small Under the supervision of: \\ \textcolor{cyan}{\small Raphaël COUTURIER and Jean-Claude CHARR} \\\vspace{0.1cm} \textcolor{blue}{ UBFC - FEMTO-ST - DISC Dept. - AND Team} \\ ~~~~~~~~~~~~~~~~~~~~~ \textbf{\textcolor{blue}{ 17 October 2016 }}} \date{} \vspace{-3cm} @@ -115,9 +115,9 @@ %%%%%%%%%%%%%%%%%%%% \begin{frame}{Introduction and problem definition} \section{\small {Introduction and Problem definition}} - \bf \textcolor{blue}{Approaches to increase the computing power of the parallel platform :} + \bf \textcolor{blue}{To get more computing power:} \begin{minipage}{0.5\textwidth} - \textcolor{blue}{1)} \small \bf \textcolor{black}{Increasing the frequency of a processor.} + \textcolor{blue}{1)} \small \bf \textcolor{black}{Increase the frequency of a processor.\\ (limited due to overheating)} \end{minipage}% \begin{minipage}{0.6\textwidth} @@ -128,9 +128,9 @@ \end{minipage}% \vspace{0.2cm} \begin{minipage}{0.5\textwidth} - \textcolor{blue}{2)} \small \bf \textcolor{black}{Increasing the number of nodes.} + \textcolor{blue}{2)} \small \bf \textcolor{black}{Use more nodes.} - \tiny \textcolor{blue}{Recently, Tianhe-2 supercomputer had more than 3 million cores while consuming around 17.8 megawatts.} + \textcolor{black}{The supercomputer Tianhe-2 has more than 3 million cores and consumes around 17.8 megawatts.} \end{minipage}% \begin{minipage}{0.6\textwidth} @@ -146,10 +146,8 @@ %%%%%%%%%%%%%%%%%%% %% SLIDE 04 %% %%%%%%%%%%%%%%%%%%%% -\begin{frame}{Introduction and problem definition} - \vspace{0.1cm} - \bf \textcolor{blue}{Techniques for energy consumption reduction} - +\begin{frame}{Techniques for energy consumption reduction} + \textcolor{blue}{1)} \bf \textcolor{black}{Switch-off idle nodes method} \vspace{-0.9cm} \begin{figure} @@ -159,12 +157,12 @@ \end{frame} %%%%%%%%%%%%%%%%%%%% -%% SLIDE 06 %% +%% SLIDE 05 %% %%%%%%%%%%%%%%%%%%%% \begin{frame}{Techniques for energy consumption reduction} - \textcolor{blue}{2)} \bf \textcolor{black}{Dynamic voltage and frequency Scaling (DVFS)} - \vspace{-0.5cm} + \textcolor{blue}{2)} \bf \textcolor{black}{Dynamic Voltage and Frequency Scaling (DVFS)} + \vspace{-0.9cm} \begin{figure} \animategraphics[autopause,controls,scale=0.25,buttonsize=0.2cm]{10}{DVFS-meq/a-}{0}{109} %\includegraphics[width=0.6\textwidth]{DVFS-meq/a-109} @@ -174,17 +172,17 @@ %%%%%%%%%%%%%%%%%%%% -%% SLIDE 07 %% +%% SLIDE 06 %% %%%%%%%%%%%%%%%%%%%% \begin{frame}{Motivations} \vspace{0.05cm} \section{\small {Motivations}} -\textcolor{blue}{Why we used DVFS method:} +\textcolor{blue}{Why we used the DVFS method:} \vspace{-0.49cm} \begin{minipage}{0.5\textwidth} \vspace{-0.49cm} \begin{itemize} - \item \small \textcolor{black}{The biggest power consumption is consumed by the processor \textsuperscript{1}. } + \item \small \textcolor{black}{ The CPU is the component that consumes the highest amount of energy in a node \textsuperscript{1}. } \end{itemize} @@ -197,14 +195,15 @@ \end{figure} \end{minipage}% - \begin{itemize} \item \small \textcolor{black}{It uses to reduce the energy consumption while keeping all the nodes working, thus it is more adapted to parallel computing.} - \item \small \textcolor{black}{It has a very small overhead compared to switching-off the idle nodes method.} \end{itemize} + \begin{itemize} \item \small \textcolor{black}{DVFS reduces the energy consumption while + keeping all the nodes working.} + \item \small \textcolor{black}{It has a very small overhead compared to switching-off the idle nodes.} \end{itemize} \vspace{-0.12cm} \begin{block}{\textcolor{white}{Challenge and Objective}} - \small \textcolor{blue}{Challenge:} \textcolor{black}{DVFS is used to reduce the energy consumption, \textcolor{blue}{but} it degrades the performance simultaneously.} + \small \textcolor{blue}{Challenge:} \textcolor{black}{DVFS is used to reduce the energy consumption, \textcolor{blue}{but} it also degrades the performance of the CPU.} \vspace{0.1cm} \small \textcolor{blue}{Objective:} \textcolor{black}{Applying the DVFS to minimize the energy consumption while maintaining the performance of the parallel application.} @@ -222,9 +221,12 @@ for a warehouse-sized computer. %%%%%%%%%%%%%%%%%%%% -\begin{frame}{Contribution} +\begin{frame}{The first contribution} + +\section{\small {Energy optimization of a homogeneous platform}} +%\vspace{-3cm} + % \includegraphics[width=0.6\textwidth]{white.pdf} -\section{\small {Energy optimization of homogeneous platform}} \begin{center} \bf \Large \textcolor{blue}{Energy optimization of a parallel application with iterations running over a homogeneous platform} \end{center} @@ -237,22 +239,22 @@ for a warehouse-sized computer. %%%%%%%%%%%%%%%%%%%% \begin{frame}{Objectives} - \begin{femtoBlock}{} \vspace{-12 mm} - \begin{itemize} \small - \item Study the effect of the scaling factor $S$ on \textbf{energy consumption and performance } of parallel applications with iterations such as NAS - Benchmarks. \includegraphics[width=.06\textwidth]{c1/nasa.pdf} \medskip + + \begin{itemize} \small \justifying + + \item Study the effect of the scaling factor on the \textbf{energy consumption and performance } of parallel applications with iterations. \medskip - \item Discovering the \textbf{energy-performance trade-off relation} when changing the frequency of the processor.\medskip - \item Proposing an algorithm for selecting the scaling factor $S$ producing \textbf {the optimal trade-off} between the energy consumption and the performance. \medskip - \item Comparing the proposed algorithm to existing methods. + \item Discovering the \textbf{energy-performance trade-off relation} when changing the frequency of the processor.\medskip + \item Proposing an algorithm for selecting the scaling factor that produces \textbf {the optimal trade-off} between the energy consumption and the performance. \medskip + \item Comparing the proposed algorithm to existing methods. %\footnote{\tiny Thomas Rauber and Gudula Rünger. Analytical modeling and simulation of the %energy consumption \\ \quad ~ ~\quad of independent tasks. In Proceedings of the Winter Simulation Conference, 2012.} method that our method best on. \end{itemize} %\let\thefootnote\relax\footnote{} - \vspace{-10 mm} - \end{femtoBlock} + + \end{frame} @@ -266,9 +268,9 @@ for a warehouse-sized computer. \vspace{-0.5 cm} \begin{figure} \centering - \subfloat[Sync. imbalanced communications]{% + \subfloat[Synchronous imbalanced communications]{% \includegraphics[scale=0.49]{c1/commtasks}\label{fig:h1}} - \subfloat[Sync. imbalanced computations]{% + \subfloat[Synchronous imbalanced computations]{% \includegraphics[scale=0.49]{c1/compt}\label{fig:h2}} % \caption{Parallel tasks on homogeneous platform} \label{fig:homo} @@ -282,7 +284,7 @@ for a warehouse-sized computer. %%%%%%%%%%%%%%%%%%%% %% SLIDE 11 %% %%%%%%%%%%%%%%%%%%%% -\begin{frame}{Energy model for homogeneous platform} +\begin{frame}{Energy model for a homogeneous platform} The power consumed by a processor divided into two power metrics: the dynamic (\textcolor{red}{$P_d$}) and static (\textcolor{red}{$P_s$}) power. \begin{equation} @@ -291,7 +293,7 @@ for a warehouse-sized computer. \end{equation} \scriptsize \underline{Where}: \\ \scriptsize {\textcolor{blue}{$\alpha$}: switching activity \hspace{15 mm} \textcolor{blue}{$CL$}: load capacitance\\ - \textcolor{blue}{$V$} the supply voltage \hspace{14 mm} \textcolor{blue}{$F$}: operational frequency} + \textcolor{blue}{$V$}: the supply voltage \hspace{14 mm} \textcolor{blue}{$F$}: operational frequency} \begin{equation} \label{eq:ps} \small \textcolor{red}{P_s} = \textcolor{blue}{V \cdot N_{trans} \cdot K_{design} \cdot I_{Leak}} @@ -306,7 +308,7 @@ for a warehouse-sized computer. %% SLIDE 12 %% %%%%%%%%%%%%%%%%%%%% -\begin{frame}{Energy model for homogeneous platform} +\begin{frame}{Energy model for a homogeneous platform} The frequency scaling factor is the ratio between the maximum and the new frequency, \textcolor{blue}{$S = \frac{F_{max}}{F_{new}}$}. \medskip @@ -317,12 +319,12 @@ for a warehouse-sized computer. \left( T_1 + \sum_{i=2}^{N} \frac{T_i^3}{T_1^2} \right) + P_{s} \cdot S_1 \cdot T_1 \cdot N$ \end{block} - \textcolor{blue}{$S_1$}: the max. scaling factor\\ - \textcolor{blue}{$P_{d}$}: the dynamic power\\ - \textcolor{blue}{$P_{s}$}: the static power\\ - \textcolor{blue}{$T_I$}: the time of the slower task\\ - \textcolor{blue}{$T_i$}: the time of the other tasks\\ - \textcolor{blue}{$N$}: the number of nodes + \textcolor{blue}{$S_1$}: the maximum scaling factor.\\ + \textcolor{blue}{$P_{d}$}: the dynamic power.\\ + \textcolor{blue}{$P_{s}$}: the static power.\\ + \textcolor{blue}{$T_I$}: the execution time of the slower task.\\ + \textcolor{blue}{$T_i$}: the execution time of task i.\\ + \textcolor{blue}{$N$}: the number of nodes. \end{frame} @@ -413,7 +415,7 @@ for a warehouse-sized computer. \item The experiments were executed on the simulator SimGrid/SMPI v3.10.\medskip \item The proposed algorithm was applied to the NAS parallel benchmarks.\medskip \item Each node in the cluster has 18 frequency values from \textbf{2.5$GHz$} to \textbf{800$MHz$}.\medskip - \item The proposed algorithm was evaluated over the A, B, C classes of the benchmarks using 4, 8 or 9 and 16 nodes respectively. \medskip + \item The proposed algorithm was evaluated over the A, B and C classes of the benchmarks using 4, 8 or 9 and 16 nodes respectively. \medskip \item $P_d=20W$, $P_s=4W$. \end{itemize} \end{femtoBlock} @@ -443,13 +445,15 @@ for a warehouse-sized computer. $S_{opt} = \sqrt[3]{\frac{2}{N} \cdot \frac{P_{dyn}}{P_{static}} \cdot \left( 1 + \sum_{i=2}^{N} \frac{T_i^3}{T_1^3}\right) } $ \end{block} + + \centering { %\includegraphics[width=.33\textwidth]{c1/c1.pdf} %\qquad %\includegraphics[width=.33\textwidth]{c1/c2.pdf}} - \includegraphics[width=.55\textwidth]{c1/compare_c.pdf}} + \includegraphics[width=.55\textwidth]{c1/compare-c.pdf}} \end{frame} @@ -469,7 +473,7 @@ for a warehouse-sized computer. %%%%%%%%%%%%%%%%%%%% %% SLIDE 21 %% %%%%%%%%%%%%%%%%%%%% -\begin{frame}{Comparing the new model with Rauber model } +\begin{frame}{\large Comparing the new model with Rauber's model } \vspace{0.1cm} \centering \includegraphics[width=.45\textwidth]{c1/energy_con} @@ -502,9 +506,9 @@ for a warehouse-sized computer. %%%%%%%%%%%%%%%%%%%% -\begin{frame}{Contribution} +\begin{frame}{The second contribution} -\section{\small {Energy optimization of heterogeneous platform}} +\section{\small {Energy optimization of a heterogeneous platform}} \begin{center} @@ -522,7 +526,7 @@ for a warehouse-sized computer. \begin{femtoBlock}{} \vspace{-12 mm} \begin{itemize} \small \item Proposing \textcolor{blue}{new energy and performance models} for message passing applications with iterations running - over a heterogeneous platform (cluster and Grid). \medskip + over a heterogeneous platform (cluster or Grid). \medskip \item Studying the effect of the scaling factor $S$ on both the \textcolor{blue}{energy consumption and the performance} of message passing iterative applications. \medskip @@ -646,11 +650,11 @@ for a warehouse-sized computer. \begin{frame}{Experiments over a heterogeneous cluster } \begin{itemize} \small - \item The experiments executed on the simulator SimGrid/SMPI v3.10.\medskip + \item The experiments were executed on the simulator SimGrid/SMPI v3.10.\medskip \item The scaling algorithm was applied to the NAS parallel benchmarks class C.\medskip \item Four types of processors with different computing powers were used.\medskip - \item We ran the benchmarks on different number of nodes ranging from 4 to 144 nodes.\medskip - \item The total power consumption of the chosen CPUs assumed to be composed of $80\%$ for the dynamic power and $20\%$ for the static power. + \item The benchmarks were executed with different number of nodes ranging from 4 to 144 nodes.\medskip + \item It was assumed that the total power consumption of the CPU consist of 80\% dynamic power and 20\% static power. \medskip \end{itemize} @@ -784,19 +788,21 @@ for a warehouse-sized computer. %% SLIDE 37 %% %%%%%%%%%%%%%%%%%%%% \begin{frame}{Experiments over Grid'5000} - \centering - + + \textcolor{blue}{The experiments were conducted using three + clusters distributed over one or two sites.} + \vspace{-7 mm} + \begin{center} \includegraphics[width=.5\textwidth]{c2/grid5000-2.pdf} - - \vspace{-3 mm} - \textcolor{blue}{Two experiments were conducted: over one site and two sites - each one with three clusters } - - \vspace{1mm} - + \end{center} + \vspace{-10 mm} + \textcolor{blue}{Grid'5000 power measurement tools were used.} + \vspace{-9 mm} + \begin{center} \includegraphics[width=.5\textwidth]{c2/power_consumption.pdf} + \end{center} - \textcolor{blue}{Grid'5000 power measurement tools were used} + \end{frame} @@ -810,7 +816,7 @@ for a warehouse-sized computer. \begin{minipage}{0.4\textwidth} %\textcolor{blue}{Execution the NAS class D on 16 nodes saves the energy by %\textcolor{red}{30\%}} - \textcolor{blue}{The energy saving = \textcolor{red}{30\%}} + \small \textcolor{blue}{The average energy saving = \textcolor{red}{30\%}} \end{minipage} \begin{minipage}{0.55\textwidth} \begin{figure}[h!] @@ -821,7 +827,7 @@ for a warehouse-sized computer. \begin{minipage}{0.4\textwidth} %\textcolor{blue}{Execution the NAS class D on 16 nodes degrades the %performance by \textcolor{red}{3.2\%}} - \textcolor{blue}{The performance degradation = \textcolor{red}{3.2\%}} + \small \textcolor{blue}{The average performance degradation = \textcolor{red}{3.2\%}} \end{minipage} \begin{minipage}{0.55\textwidth} \begin{figure}[h!] @@ -872,7 +878,7 @@ for a warehouse-sized computer. %%%%%%%%%%%%%%%%%%%% %% SLIDE 40 %% %%%%%%%%%%%%%%%%%%%% -\begin{frame}{Contribution} +\begin{frame}{The third contribution} \section{\small {Energy optimization of asynchronous applications}} \begin{center} \bf \Large \textcolor{blue}{Energy optimization of asynchronous iterative message passing applications} @@ -1028,7 +1034,7 @@ for a warehouse-sized computer. \centering \includegraphics[scale=0.42]{c3/energy_saving.eps} - \centering The average of energy saving = \textcolor{red}{22\%} + \centering The average energy saving = \textcolor{red}{22\%} \end{frame} @@ -1058,8 +1064,8 @@ for a warehouse-sized computer. \includegraphics[width=0.53\textwidth]{c3/perf-deg-compare.eps} \end{figure} \vspace{-5 mm} - \centering -The energy saving = \textcolor{red}{26.93\%}, the average speed-up = \textcolor{red}{21.48\%} + \centering \footnotesize +The average energy saving = \textcolor{red}{26.93\%}, the average speed-up = \textcolor{red}{21.48\%} \end{frame} @@ -1083,8 +1089,8 @@ The energy saving = \textcolor{red}{26.93\%}, the average speed-up = \textcolor \section{Conclusions and Perspectives} \begin{itemize} -\small \barrow Three \textcolor{blue}{ new energy consumption and performance} models were proposed for synchronous and asynchronous parallel applications with iterations running over -\textcolor{blue}{homogeneous and heterogeneous clusters and grids}. +\small \barrow Three \textcolor{blue}{ new energy consumption and performance} models were proposed for synchronous or asynchronous parallel applications with iterations running over +\textcolor{blue}{homogeneous and heterogeneous clusters or grids}. @@ -1095,9 +1101,9 @@ The energy saving = \textcolor{red}{26.93\%}, the average speed-up = \textcolor \small \barrow The proposed algorithms were applied to the \textcolor{blue}{NAS parallel benchmarks} and \textcolor{blue}{the Multi-splitting} method. -\small \barrow The proposed algorithms were evaluated over the \textcolor{blue}{SimGrid simulator} and over \textcolor{blue}{Grid'5000 testbed}. +\small \barrow The proposed algorithms were evaluated over the \textcolor{blue}{SimGrid simulator} and over the \textcolor{blue}{Grid'5000 testbed}. -\small \barrow All the proposed methods were compared to either \textcolor{blue}{Rauber and Rünger's method} or \textcolor{blue}{the EDP objective function}. +\small \barrow All the proposed methods were compared to either \textcolor{blue}{Rauber and Rünger's method} or to the \textcolor{blue}{EDP objective function}. \end{itemize} @@ -1169,7 +1175,7 @@ Multi-splitting} method. %%%%%%%%%%%%%%%%%%%% \begin{frame}{Fin} \vspace{-10 mm} - \centering \Large \textcolor{blue}{Thank you for your listening} + \centering \Large \textcolor{blue}{Thank you for your attention} \vspace{2cm} \centering \textcolor{blue}{ {\Large Questions?}}