simulator \cite{SimGrid}, which offers easy tools to describe homogeneous and heterogeneous platforms, and to simulate the execution of message passing parallel
applications over them.
-In this paper, a new frequency selecting algorithm, adapted to grid platforms
-composed of heterogeneous clusters, is presented. It is applied to the NAS
+
+This paper presents the following contributions :
+\begin{enumerate}
+\item two new energy and performance models for message passing
+ synchronous applications with iterations running over a heterogeneous grid platform. Both models
+ take into account communications and slack times. The models can predict the
+ required energy and the execution time of the application.
+
+\item a new online frequency selecting algorithm for heterogeneous grid
+ platforms. The algorithm has a very small overhead and does not need any
+ training nor profiling. It uses a new optimization function which
+ simultaneously maximizes the performance and minimizes the energy consumption
+ of a message passing synchronous application with iterations. The algorithm was applied to the NAS
parallel benchmarks and evaluated over a real testbed, the Grid'5000 platform
-\cite{grid5000}. It selects for a grid platform running a message passing
- application with iterations the vector of frequencies that simultaneously tries to
-offer the maximum energy reduction and minimum performance degradation
-ratios. The algorithm has a very small overhead, works online and does not need
-any training or profiling.
+\cite{grid5000}.
+
+\end{enumerate}
+
This paper is organized as follows: Section~\ref{sec.relwork} presents some
al.~\cite{Chen_DVFS.under.quality.of.service.requirements} used a greedy dynamic
programming approach to minimize the power consumption of heterogeneous servers
while respecting given time constraints. This approach had considerable
-overhead. In contrast to the above described papers, this paper presents the
-following contributions :
-\begin{enumerate}
-\item two new energy and performance models for message passing
- synchronous applications with iterations running over a heterogeneous grid platform. Both models
- take into account communication and slack times. The models can predict the
- required energy and the execution time of the application.
-
-\item a new online frequency selecting algorithm for heterogeneous grid
- platforms. The algorithm has a very small overhead and does not need any
- training nor profiling. It uses a new optimization function which
- simultaneously maximizes the performance and minimizes the energy consumption
- of a message passing synchronous application with iterations.
-
-\end{enumerate}
+overhead.
\begin{equation}
\label{eq:perf}
\Tnew = \mathop{\max_{i=1,\dots N}}_{j=1,\dots,M_i}({\TcpOld[ij]} \cdot S_{ij})
- +\mathop{\min_{j=1,\dots,M_i}} (\Tcm[hj])
+ +\mathop{\min_{j=1,\dots,M_h}} (\Tcm[hj])
\end{equation}
%
where $N$ is the number of clusters in the grid, $M_i$ is the number of nodes in
\begin{equation}
\label{eq:told}
\Told = \mathop{\max_{i=1,\dots N}}_{j=1,\dots,M_i}({\TcpOld[ij]} )
- +\mathop{\min_{j=1,\dots,M_i}} (\Tcm[hj])
+ +\mathop{\min_{j=1,\dots,M_h}} (\Tcm[hj])
\end{equation}
}
In the same way, the energy is normalized by computing the ratio between the
\section{Questions and remarks of the second reviewer}
\begin{enumerate}
-\item Move the contributions from related work to introduction
+\item Move the contributions from related work to introduction.
+
+\textbf{Answer:} The contributions were moved to the introduction section.
\item Why emphasize it is a grid platform? the presentation of related work follows the logic of heterogeneous CPUs. Grid is only a type of platform with heterogeneous CPUs.
\item Why $T_{old}$ is computed using eq. 12, which applies MAX over computation time and communication time, while in $T_{new}$, max and min operations are applied over computation and communication separately?
-\textcolor{blue}{Answer: We agree with the reviewer, $T_{old}$ is the maximum execution time of the application before scaling the frequency and it is computed as in $T_{new}$ equation without scaling factors. So, we have changed the $T_{old}$ in the paper as as follows:
+\textbf{Answer:} Both forms can be used for computing $T_{old}$ and $T_{new}$. To avoid this confusion, the same form was used for both equations in the paper.
+
\begin{equation}
\label{eq:told}
T_{old} = \mathop{\max_{i=1,2,\dots,N}}_{j=1,2,\dots,M_i} (\Tcp[ij]) +
- \mathop{\min_{i=1,2,\dots,N}} (\Tcm[hj] )
+ \mathop{\min_{j=1,2,\dots,M_h}} (\Tcm[hj] )
\end{equation}
-}
+where $h$ is the index of the slowest cluster.
+
+
\item Line 55 on page 16 is to define the slack time, which should be introduced at the beginning of the paper, such as in figure 1.