\begin{figure}
\centering
\subfloat[Homogeneous platform]{%
- \includegraphics[width=.22\textwidth]{fig/homo.eps}\label{fig:r1}}%
+ \includegraphics[width=.22\textwidth]{fig/homo}\label{fig:r1}}%
\qquad%
\subfloat[Heterogeneous platform]{%
- \includegraphics[width=.22\textwidth]{fig/heter.eps}\label{fig:r2}}
+ \includegraphics[width=.22\textwidth]{fig/heter}\label{fig:r2}}
\label{fig:rel}
\caption{The energy and performance relation}
\end{figure}
The algorithm is numerates the suitable range of available scaling factors for each node in the heterogeneous cluster, returns a set of optimal frequency scaling factors for each node. Using heterogeneous cluster is produces different workloads for each node. Therefore, the fastest nodes waiting at the barrier for the slowest nodes to finish there work as in figure (\ref{fig:heter}). Our algorithm takes into account these imbalanced workloads when is starts to search for selecting the best scaling factors. So, the algorithm is selecting the initial frequencies values for each node proportional to the times of computations that gathered from the first iteration. As an example in figure (\ref{fig:st_freq}), the algorithm don't test the first frequencies of the fastest nodes until it converge their frequencies to the frequency of the slowest node. If the algorithm is starts test changing the frequency of the slowest nodes from beginning, we are loosing performance and then not selecting the best tradeoff (the distance). This case will be similar to the homogeneous cluster when all nodes scales their frequencies together from the beginning. In this case there is a small distance between energy and performance curves, for example see the figure(\ref{fig:r1}). Then the algorithm searching for optimal frequency scaling factor from the selected frequencies until the last available ones.
\begin{figure}[t]
\centering
- \includegraphics[scale=0.5]{fig/start_freq.pdf}
+ \includegraphics[scale=0.5]{fig/start_freq}
\caption{Selecting the initial frequencies}
\label{fig:st_freq}
\end{figure}
\begin{figure}
\centering
\subfloat[Balanced nodes type scenario]{%
- \includegraphics[width=.23185\textwidth]{fig/avg_eq.eps}\label{fig:avg_eq}}%
+ \includegraphics[width=.23185\textwidth]{fig/avg_eq}\label{fig:avg_eq}}%
\quad%
\subfloat[Imbalanced nodes type scenario]{%
- \includegraphics[width=.23185\textwidth]{fig/avg_neq.eps}\label{fig:avg_neq}}
+ \includegraphics[width=.23185\textwidth]{fig/avg_neq}\label{fig:avg_neq}}
\label{fig:avg}
\caption{The average of energy and performance for all Nas benchmarks running with difference number of nodes}
\end{figure}
\begin{figure}
\centering
\subfloat[Comparison the average of the results on 8 nodes]{%
- \includegraphics[width=.22\textwidth]{fig/sen_comp.pdf}\label{fig:sen_comp}}%
+ \includegraphics[width=.22\textwidth]{fig/sen_comp}\label{fig:sen_comp}}%
\quad%
\subfloat[Comparison the selected frequency scaling factors for 8 nodes]{%
- \includegraphics[width=.24\textwidth]{fig/three_scenarios.pdf}\label{fig:scales_comp}}
+ \includegraphics[width=.24\textwidth]{fig/three_scenarios}\label{fig:scales_comp}}
\label{fig:avg}
\caption{The comparison of the three power scenarios}
\end{figure}