\usepackage{listings}
\usepackage{colortbl}
\usepackage{amsmath}
- % \usepackage{sectsty}
- % \usepackage{titlesec}
- % \usepackage{secdot}
- %\usepackage[font={footnotesize,bt}]{caption}
- %\usepackage[font=scriptsize,labelfont=bf]{caption}
+
+ \usepackage[autolanguage,np]{numprint}
+ \renewcommand*\npunitcommand[1]{\text{#1}}
+
\usepackage{xspace}
\usepackage[textsize=footnotesize]{todonotes}
\newcommand{\AG}[2][inline]{\todo[color=green!50,#1]{\sffamily\textbf{AG:} #2}\xspace}
benchmarks (NPB v3.3) developed by NASA~\cite{44}. Our experiments are executed
using the simulator SimGrid/SMPI v3.10~\cite{Casanova:2008:SGF:1397760.1398183}
over an homogeneous distributed memory architecture. Furthermore, we compare the
- proposed algorithm with Rauber and R\"{u}nger methods~\cite{3}.
+ proposed algorithm with Rauber and Rünger methods~\cite{3}.
The comparison's results show that our
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.ptasks} shows the execution of parallel tasks and sources of idle times. Section~\ref{sec.energy} resumes the
- energy model of homogenous platform. Section~\ref{sec.mpip} evaluates the performance of MPI program.
+ energy model of homogeneous platform. Section~\ref{sec.mpip} evaluates the performance of MPI program.
Section~\ref{sec.verif} verifies the performance prediction model. Section~\ref{sec.compet} presents
the energy-performance trade offs objective function. Section~\ref{sec.optim} demonstrates the proposed
energy-performance algorithm. Section~\ref{sec.expe} presents the results of our experiments.
algorithm that detects the communication sections and changes the frequency
during these sections only. This approach changes the frequency many times
because an iteration may contain more than one communication section. The domain
- of analytical modeling used for choosing the optimal frequency as inRauber and R\"{u}nger~\cite{3}. they
+ of analytical modeling used for choosing the optimal frequency as in Rauber and Rünger~\cite{3}. they
developed an analytical mathematical model to determine the
optimal frequency scaling factor for any number of concurrent tasks. They set the slowest task to maximum frequency for maintaining performance. In this paper we compare our algorithm with
- Rauber and R\"{u}nger model~\cite{3}, because their model can be used for any number of
+ Rauber and Rünger model~\cite{3}, because their model can be used for any number of
concurrent tasks for homogeneous platforms. The primary contributions of this paper are:
\begin{enumerate}
\item Selecting the frequency scaling factor for simultaneously optimizing energy and performance,
dynamic and the static power. This general power formulation is used by many
researchers~\cite{9,3,15,26}. The dynamic power of the CMOS processors
$P_{dyn}$ is related to the switching activity $\alpha$, load capacitance $C_L$,
- the supply voltage $V$ and operational frequency $f$ respectively as follow :
+ the supply voltage $V$ and operational frequency $f$ respectively as follow:
\begin{equation}
\label{eq:pd}
P_\textit{dyn} = \alpha \cdot C_L \cdot V^2 \cdot f
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 depending on the frequency scaling factor for homogeneous platform
- for any number of concurrent tasks was developed by Rauber and R\"{u}nger~\cite{3}. This model
+ for any number of concurrent tasks was developed by Rauber and Rünger~\cite{3}. This model
considers the two power metrics for measuring the energy of the parallel tasks as
in EQ~(\ref{eq:energy}):
= \frac{F_\textit{max}}{F_\textit{new}} \cdot \frac{T_1}{T_i}
\end{equation}
where $F$ is the number of available frequencies. In this paper we depend on
- Rauber and R\"{u}nger energy model EQ~(\ref{eq:energy}) for two reasons: (1)-this model is used
+ Rauber and Rünger energy model EQ~(\ref{eq:energy}) for two reasons: (1)-this model is used
for homogeneous platform that we work on in this paper. 2-we compare our
- algorithm with Rauber and R\"{u}nger scaling model. Rauber and R\"{u}nger scaling factor that reduce
+ algorithm with Rauber and Rünger scaling model. Rauber and Rünger scaling factor that reduce
energy consumption derived from the EQ~(\ref{eq:energy}). They take the
derivation for this equation (to be minimized) and set it to zero to produce the
scaling factor as in EQ~(\ref{eq:sopt}).
sending or receiving till the message is synchronously sent or received. In this
paper we predict the execution time of the program for any new scaling factor
value. Depending on this prediction we can produce our energy-performance scaling
-method as we will show in the coming sections. In the next section we make an
+method as we will show in the coming sections. In the next section we make to finishan
investigation study for the EQ~(\ref{eq:tnew}).
\section{Performance Prediction Verification}
2.5 GHz to 800 MHz, there is 100 MHz difference between two successive
frequencies. For more details on the characteristics of the platform refer to
table~(\ref{table:platform}). 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
+ 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
is not straightforward. Moreover, they are not measured using the same metric.
For solving this problem, we normalize the energy by calculating the ratio
between the consumed energy with scaled frequency and the consumed energy
- without scaled frequency :
+ without scaled frequency:
\begin{multline}
\label{eq:enorm}
E_\textit{Norm} = \frac{ E_\textit{Reduced}}{E_\textit{Original}} \\
P_\textit{dyn} \cdot \left(T_1+\sum_{i=2}^{N}\frac{T_i^3}{T_1^2}\right) +
P_\textit{static} \cdot T_1 \cdot N }
\end{multline}
- By the same way we can normalize the performance as follows :
+ By the same way we can normalize the performance as follows:
\begin{equation}
\label{eq:pnorm}
P_\textit{Norm} = \frac{T_\textit{New}}{T_\textit{Old}}
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
- performance as follows :
+ performance as follows:
\begin{equation}
\label{eq:pnorm_en}
P^{-1}_\textit{Norm} = \frac{ T_\textit{Old}}{ T_\textit{New}}
static power values stored in a data file. Moreover, this function works in
optimal way when the energy function has a convex form with frequency scaling
factor as shown in~\cite{15,3,19}. Energy measurement model is not the
- objective of this paper and we choose Rauber and R\"{u}nger model as an example with two
+ objective of this paper and we choose Rauber and Rünger model as an example with two
reasons that mentioned before.
\section{Optimal Scaling Factor for Performance and Energy}
After obtaining the optimal scale factor from the EPSA algorithm. The program
calculates the new frequency $F_i$ for each task proportionally to its time
value $T_i$. By substitution of the EQ~(\ref{eq:s}) in the EQ~(\ref{eq:si}), we
- can calculate the new frequency $F_i$ as follows :
+ can calculate the new frequency $F_i$ as follows:
\begin{equation}
\label{eq:fi}
F_i = \frac{F_\textit{max} \cdot T_i}{S_\textit{optimal} \cdot T_\textit{max}}
\caption{Platform File Parameters}
% title of Table
\centering
- \begin{tabular}{ | l | l | l |l | l |l |l | p{2cm} |}
+ \begin{tabular}{|*{7}{l|}}
\hline
Max & Min & Backbone & Backbone&Link &Link& Sharing \\
Freq. & Freq. & Bandwidth & Latency & Bandwidth& Latency&Policy \\ \hline
- 2.5 &800 & 2.25 GBps &$5\times 10^{-7} s$& 1 GBps & $5\times 10^{-5} s$ &Full \\
+ \np{2.5} & \np{800} & \np[GBps]{2.25} &\np[$\mu$s]{0.5}& \np[GBps]{1} & \np[$\mu$s]{50} &Full \\
GHz& MHz& & & & &Duplex \\\hline
\end{tabular}
\label{table:platform}
for each MPI program. When there are little or not communications, the inversed
performance curve is very close to the energy curve. Then the distance between
the two curves is very small. This lead to small energy savings. The opposite
-happens when there are a lot of communication, the distance between the two
+happens when there are a lot of communication, theto finish distance between the two
curves is big. This lead to more energy savings (e.g. CG and FT), see
table~(\ref{table:factors results}). All discovered frequency scaling factors
optimize both the energy and the performance simultaneously for all the NAS
\label{fig:nas}
\end{figure*}
\begin{table}[htb]
- \caption{Optimal Scaling Factors Results}
+ \caption{The EPSA Scaling Factors Results}
% title of Table
\centering
- \begin{tabular}{ | l | l | l |l | r |}
- \AG{Use the same number of decimals for all numbers in a column,
- and vertically align the numbers along the decimal points.
- The same for all the following tables.}
+ \begin{tabular}{|l|*{4}{r|}}
\hline
Program & Optimal & Energy & Performance&Energy-Perf.\\
Name & Scaling Factor& Saving \%&Degradation \% &Distance \\ \hline
\section{Comparing Results}
\label{sec.compare}
- In this section, we compare our EPSA algorithm results with Rauber and R\"{u}nger
+ In this section, we compare our EPSA algorithm results with Rauber and Rünger
methods~\cite{3}. He had two scenarios, the first is to reduce energy to optimal
level without considering the performance as in EQ~(\ref{eq:sopt}). We refer to
this scenario as $R_{E}$. The second scenario is similar to the first
to keep the performance from degradation as mush as possible. We refer to this
scenario as $R_{E-P}$. The comparison is made in tables~(\ref{table:compare
Class A},\ref{table:compare Class B},\ref{table:compare Class C}). These
- tables show the results of our EPSA and Rauber and R\"{u}nger scenarios for all the NAS
+ tables show the results of our EPSA and Rauber and Rünger scenarios for all the NAS
benchmarks programs for classes A,B and C.
\begin{table}[p]
\caption{Comparing Results for The NAS Class A}
% title of Table
\centering
- \begin{tabular}{ | l | l | l |l | l | r| }
+ \begin{tabular}{|l|l|*{4}{r|}}
\hline
Method&Program&Factor& Energy& Performance &Energy-Perf.\\
Name &Name&Value& Saving \%&Degradation \% &Distance
\caption{Comparing Results for The NAS Class B}
% title of Table
\centering
- \begin{tabular}{ | l | l | l |l | l |r| }
+ \begin{tabular}{|l|l|*{4}{r|}}
\hline
Method&Program&Factor& Energy& Performance &Energy-Perf.\\
Name &Name&Value& Saving \%&Degradation \% &Distance
\caption{Comparing Results for The NAS Class C}
% title of Table
\centering
- \begin{tabular}{ | l | l | l |l | l |r| }
+ \begin{tabular}{|l|l|*{4}{r|}}
\hline
Method&Program&Factor& Energy& Performance &Energy-Perf.\\
Name &Name&Value& Saving \%&Degradation \% &Distance
such as Rauber's scaling factor EQ~(\ref{eq:sopt}), but it is optimal for both
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\"{u}nger energy-performance method ($R_{E-P}$). Also, in
+ 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
slower task lead to a small improvement of the performance. Also the results
show that this method keep or improve energy saving. Because of the energy
Figure~(\ref{fig:compare}) shows the maximum distance between the energy saving
percent and the performance degradation percent. Therefore, this means it is the
same resultant of our objective function EQ~(\ref{eq:max}). Our algorithm always
- gives positive energy to performance trade offs while Rauber and R\"{u}nger method
+ gives positive energy to performance trade offs while Rauber and Rünger method
($R_{E-P}$) gives in some time negative trade offs such as in BT and
EP. The positive trade offs with highest values lead to maximum energy savings
concatenating with less performance degradation and this the objective of this
\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\"{u}nger Methods}
+ \caption{Comparing Our EPSA with Rauber and Rünger Methods}
\label{fig:compare}
\end{figure}
-
\section{Conclusion}
\label{sec.concl}
-
-\AG{the conclusion needs to be written\dots{} one day}
+In this paper we develop the simultaneous energy-performance algorithm. It is works based on the trade off relation between the energy and performance. The results showed that when the scaling factor is big value leads to more energy saving. Also, it show that when the the scaling factor is small value leads to the fact that the scaling factor has bigger impact on performance than energy. Then the algorithm optimize the energy saving and performance in the same time to have positive trade off. The optimal trade off refer to 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.
\section*{Acknowledgment}
\AG{Right?}
Computations have been performed on the supercomputer facilities of the
-Mésocentre de calcul de Franche-Comté.
+Mésocentre de calcul de Franche-Comté. As a PhD student , M. Ahmed Fanfakh , would
+likes to thank the University of Babylon /Iraq for supporting my scholarship program that allows me
+working on this paper.
% trigger a \newpage just before the given reference
% number - used to balance the columns on the last page
%%% ispell-local-dictionary: "american"
%%% End:
- % LocalWords: Badri Charr FIXME Tianhe DVFS HPC NAS NPB SMPI Rauber's Rauber
- % LocalWords: CMOS EQ $$EPSA$$ Franche Comté Tflop
+ % LocalWords: Fanfakh Charr FIXME Tianhe DVFS HPC NAS NPB SMPI Rauber's Rauber
+ % LocalWords: CMOS EQ EPSA Franche Comté Tflop Rünger