-be noticed that in a homogeneous platform the search for the optimal scaling
-factor should start from the maximum frequency because the performance and the
-consumed energy decrease from the beginning of the plot. On the other hand,
-in the heterogeneous platform the performance is maintained at the beginning of
-the plot even if the frequencies of the faster nodes decrease until the
-computing power of scaled down nodes are lower than the slowest node. In other
-words, until they reach the higher bound. It can also be noticed that the higher
-the difference between the faster nodes and the slower nodes is, the bigger the
-maximum distance between the energy curve and the performance curve is while
- the scaling factors are varying which results in bigger energy savings.
-\begin{figure}[!t]
- \centering
- \includegraphics[scale=0.5]{fig/start_freq}
- \caption{Selecting the initial frequencies}
- \label{fig:st_freq}
-\end{figure}
-
-
-
-
-\begin{algorithm}
- \begin{algorithmic}[1]
- % \footnotesize
- \Require ~
- \begin{description}
- \item[$\Tcp_i$] array of all computation times for all nodes during one iteration and with highest frequency.
- \item[$\Tcm_i$] array of all communication times for all nodes during one iteration and with highest frequency.
- \item[$\Fmax_i$] array of the maximum frequencies for all nodes.
- \item[$\Pd_i$] array of the dynamic powers for all nodes.
- \item[$\Ps_i$] array of the static powers for all nodes.
- \item[$\Fdiff_i$] array of the difference between two successive frequencies for all nodes.
- \end{description}
- \Ensure $\Sopt_1,\Sopt_2 \dots, \Sopt_N$ is a vector of optimal scaling factors
-
- \State $\Scp_i \gets \frac{\max_{i=1,2,\dots,N}(\Tcp_i)}{\Tcp_i} $
- \State $F_{i} \gets \frac{\Fmax_i}{\Scp_i},~{i=1,2,\cdots,N}$
- \State Round the computed initial frequencies $F_i$ to the closest one available in each node.
- \If{(not the first frequency)}
- \State $F_i \gets F_i+\Fdiff_i,~i=1,\dots,N.$
- \EndIf
- \State $\Told \gets \max_{i=1,\dots,N} (\Tcp_i+\Tcm_i)$
- % \State $\Eoriginal \gets \sum_{i=1}^{N}{( \Pd_i \cdot \Tcp_i)} +\sum_{i=1}^{N} {(\Ps_i \cdot \Told)}$
- \State $\Eoriginal \gets \sum_{i=1}^{N}{( \Pd_i \cdot \Tcp_i + \Ps_i \cdot \Told)}$
- \State $\Sopt_{i} \gets 1,~i=1,\dots,N. $
- \State $\Dist \gets 0 $
- \While {(all nodes not reach their minimum frequency)}
- \If{(not the last freq. \textbf{and} not the slowest node)}
- \State $F_i \gets F_i - \Fdiff_i,~i=1,\dots,N.$
- \State $S_i \gets \frac{\Fmax_i}{F_i},~i=1,\dots,N.$
- \EndIf
- \State $\Tnew \gets \max_{i=1,\dots,N} (\Tcp_{i} \cdot S_{i}) + \MinTcm $
-% \State $\Ereduced \gets \sum_{i=1}^{N}{(S_i^{-2} \cdot \Pd_i \cdot \Tcp_i)} + \sum_{i=1}^{N} {(\Ps_i \cdot \rlap{\Tnew)}} $
- \State $\Ereduced \gets \sum_{i=1}^{N}{(S_i^{-2} \cdot \Pd_i \cdot \Tcp_i + \Ps_i \cdot \rlap{\Tnew)}} $
- \State $\Pnorm \gets \frac{\Told}{\Tnew}$
- \State $\Enorm\gets \frac{\Ereduced}{\Eoriginal}$
- \If{$(\Pnorm - \Enorm > \Dist)$}
- \State $\Sopt_{i} \gets S_{i},~i=1,\dots,N. $
- \State $\Dist \gets \Pnorm - \Enorm$
- \EndIf
- \EndWhile
- \State Return $\Sopt_1,\Sopt_2,\dots,\Sopt_N$
- \end{algorithmic}
- \caption{frequency scaling factors selection algorithm}
- \label{HSA}
-\end{algorithm}
-
-\begin{algorithm}
- \begin{algorithmic}[1]
- % \footnotesize
- \For {$k=1$ to \textit{some iterations}}
- \State Computations section.
- \State Communications section.
- \If {$(k=1)$}
- \State Gather all times of computation and\newline\hspace*{3em}%
- communication from each node.
- \State Call Algorithm \ref{HSA}.
- \State Compute the new frequencies from the\newline\hspace*{3em}%
- returned optimal scaling factors.
- \State Set the new frequencies to nodes.
- \EndIf
- \EndFor
- \end{algorithmic}
- \caption{DVFS algorithm}
- \label{dvfs}
-\end{algorithm}
+be noticed that in a homogeneous platform the search for the optimal scaling
+factor should start from the maximum frequency because the performance and the
+consumed energy decrease from the beginning of the plot. On the other hand, in
+the heterogeneous platform the performance is maintained at the beginning of the
+plot even if the frequencies of the faster nodes decrease until the computing
+power of scaled down nodes are lower than the slowest node. In other words,
+until they reach the higher bound. It can also be noticed that the higher the
+difference between the faster nodes and the slower nodes is, the bigger the
+maximum distance between the energy curve and the performance curve is while the
+scaling factors are varying which results in bigger energy savings.