X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/mpi-energy.git/blobdiff_plain/1f61e74e038befe7db3d062a959140ef6fb6badf..243f7b658f537226cfc68f4b1c5465c2c4cc094b:/paper.tex diff --git a/paper.tex b/paper.tex index 9ab93a9..bec8af6 100644 --- a/paper.tex +++ b/paper.tex @@ -67,7 +67,7 @@ kW). This large increase in number of computing cores has led to large energy consumption by these architectures. Moreover, the price of energy is expected to continue its ascent according to the demand. For all these reasons energy reduction became an important topic in the high performance computing field. To -tackle this problem, many researchers used DVFS (Dynamic Voltage Frequency +tackle this problem, many researchers used DVFS (Dynamic Voltage and Frequency Scaling) operations which reduce dynamically the frequency and voltage of cores and thus their energy consumption. However, this operation also degrades the performance of computation. Therefore researchers try to reduce the frequency to @@ -101,7 +101,7 @@ algorithm gives better energy-time trade off. This paper is organized as follows: Section~\ref{sec.relwork} presents the works from other authors. Section~\ref{sec.exe} shows the execution of parallel -tasks and sources of idle times. It resumes the energy +tasks and sources of idle times. Also, it resumes the energy model of homogeneous platform. Section~\ref{sec.mpip} evaluates the performance of MPI program. Section~\ref{sec.compet} presents the energy-performance trade offs objective function. Section~\ref{sec.optim} demonstrates the proposed @@ -231,7 +231,7 @@ consumption~\cite{37}. The operational frequency \emph f depends linearly on the supply voltage $V$, i.e., $V = \beta \cdot f$ with some constant $\beta$. This equation is used to study the change of the dynamic voltage with respect to various frequency values in~\cite{3}. The reduction process of the frequency are -expressed by the scaling factor \emph S. The scale \emph S is the ratio between the +expressed by the scaling factor \emph S. This scaling factor is the ratio between the maximum and the new frequency as in EQ~(\ref{eq:s}). \begin{equation} \label{eq:s} @@ -240,8 +240,8 @@ maximum and the new frequency as in EQ~(\ref{eq:s}). The value of the scale $S$ is greater than 1 when changing the frequency to any new frequency value~(\emph {P-state}) in governor, the CPU governor is an interface driver supplied by the operating system kernel (e.g. Linux) to -lowering core's frequency. The scaling factor is equal to 1 when the frequency -set is to the maximum frequency. The energy consumption model for parallel +lowering core's frequency. The scaling factor is equal to 1 when the new frequency is +set to the maximum frequency. The energy consumption model for parallel homogeneous platform depends on the scaling factor \emph S. This factor reduces quadratically the dynamic power. Also, this factor increases the static energy linearly because the execution time is increased~\cite{36}. The energy model @@ -310,7 +310,7 @@ these times are used to predict the execution time for any MPI program as a func the new scaling factor as in EQ~(\ref{eq:tnew}). \begin{equation} \label{eq:tnew} - \textit T_\textit{new} = T_\textit{Max Comp Old} \cdot S + T_{\textit{Max Comm Old}} + \textit T_\textit{New} = T_\textit{Max Comp Old} \cdot S + T_{\textit{Max Comm Old}} \end{equation} The above equation shows that the scaling factor \emph S has linear relation with the computation time without affecting the communication time. The @@ -362,7 +362,7 @@ simultaneously. But the main objective is to produce maximum energy reduction with minimum performance reduction. Many researchers used different strategies to solve this nonlinear problem for example see~\cite{19,42}, their methods add big overhead to the algorithm for selecting the suitable frequency. In this -paper we are present a method to find the optimal scaling factor \emph S for +paper we present a method to find the optimal scaling factor \emph S for optimize both energy and performance simultaneously without adding big overheads. Our solution for this problem is to make the optimization process have the same direction. Therefore, we inverse the equation of normalize @@ -381,7 +381,7 @@ performance as follows: \subfloat[Real Relation.]{% \includegraphics[width=.4\textwidth]{file3.eps}\label{fig:r2}} \label{fig:rel} - \caption{The Energy and Performance Relation} + \caption{The Relation of Energy and Performance } \end{figure*} Then, we can modelize our objective function as finding the maximum distance between the energy curve EQ~(\ref{eq:enorm}) and the inverse of performance @@ -408,7 +408,7 @@ reasons that mentioned before. In the previous section we described the objective function that satisfy our goal in discovering optimal scaling factor for both performance and energy at the same time. Therefore, we develop an energy to performance scaling algorithm -($EPSA$). This algorithm is simple and has a direct way to calculate the optimal +(EPSA). This algorithm is simple and has a direct way to calculate the optimal scaling factor for both energy and performance at the same time. \begin{algorithm}[tp] \caption{EPSA} @@ -454,14 +454,14 @@ in the MPI program. \caption{DVFS} \label{dvfs} \begin{algorithmic}[1] - \For {$J:=1$ to $Some-Iterations \; $} + \For {$J=1$ to $Some-Iterations \; $} \State -Computations Section. \State -Communications Section. \If {$(J=1)$} \State -Gather all times of computation and\par\hspace{13 pt} communication from each node. \State -Call EPSA with these times. \State -Calculate the new frequency from optimal scale. - \State -Set the new frequency to the system. + \State -Change the new frequency of the system. \EndIf \EndFor \end{algorithmic} @@ -494,7 +494,7 @@ frequencies. We increased this range to verify the EPSA algorithm takes small ex time while it has a big number of available frequencies. The simulated network link is 1 GB Ethernet (TCP/IP). The backbone of the cluster simulates a high performance switch. \begin{table}[htb] - \caption{Platform File Parameters} + \caption{SimGrid Platform File Parameters} % title of Table \centering \begin{tabular}{|*{7}{l|}} @@ -530,7 +530,7 @@ This lead to 18 run states for each program. We use seven MPI programs of the NAS parallel benchmarks: CG, MG, EP, FT, BT, LU and SP. The average normalized errors between the predicted execution time and the real time (SimGrid time) for all programs is between 0.0032 to 0.0133. AS an -example, we are present the execution times of the NAS benchmarks as in the +example, we present the execution times of the NAS benchmarks as in the figure~(\ref{fig:pred}). \subsection{The EPSA Results} @@ -569,7 +569,7 @@ same time over all available scales. \includegraphics[width=.33\textwidth]{lu.eps}\hfill% \includegraphics[width=.33\textwidth]{bt.eps}\hfill% \includegraphics[width=.33\textwidth]{ft.eps} - \caption{Optimal scaling factors for The NAS MPI Programs} + \caption{The Discovered scaling factors for NAS MPI Programs} \label{fig:nas} \end{figure*} \begin{table}[htb] @@ -737,7 +737,7 @@ NAS benchmarks programs for classes A,B and C. \end{table} As shown in these tables our scaling factor is not optimal for energy saving such as Rauber and Rünger scaling factor EQ~(\ref{eq:sopt}), but it is optimal for both -the energy and the performance simultaneously. Our $EPSA$ optimal scaling factors +the energy and the performance simultaneously. Our EPSA optimal scaling factors has better simultaneous optimization for both the energy and the performance compared to Rauber and Rünger energy-performance method ($R_{E-P}$). Also, in ($R_{E-P}$) method when setting the frequency to maximum value for the @@ -761,12 +761,12 @@ than the first. \includegraphics[width=.33\textwidth]{compare_class_A.pdf} \includegraphics[width=.33\textwidth]{compare_class_B.pdf} \includegraphics[width=.33\textwidth]{compare_class_c.pdf} - \caption{Comparing Our EPSA with Rauber and Rünger Methods} + \caption {Comparing Our EPSA with Rauber and Rünger Methods} \label{fig:compare} \end{figure} \section{Conclusion} \label{sec.concl} -In this paper we develop the simultaneous energy-performance algorithm. It works based on the trade off relation between the energy and performance. The results showed that when the scaling factor is big value refer to more energy saving. Also, when the scaling factor is smaller value, Then it has bigger impact on performance than energy. The algorithm optimizes the energy saving and performance in the same time to have positive trade off. The optimal trade off represents the maximum distance between the energy and the inversed performance curves. Also, the results explained when setting the slowest task to maximum frequency usually not have a big improvement on performance. In future, we will apply the EPSA algorithm on heterogeneous platform. +In this paper we developed the simultaneous energy-performance algorithm. It works based on the trade off relation between the energy and performance. The results showed that when the scaling factor is big value refer to more energy saving. Also, when the scaling factor is smaller value, then it has bigger impact on performance than energy. The algorithm optimizes the energy saving and performance in the same time to have positive trade off. The optimal trade off represents the maximum distance between the energy and the inversed performance curves. Also, the results explained when setting the slowest task to maximum frequency usually not have a big improvement on performance. In future, we will apply the EPSA algorithm on heterogeneous platform. \section*{Acknowledgment} Computations have been performed on the supercomputer facilities of the