X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/mpi-energy.git/blobdiff_plain/b2262ee9530b5234c561238254ac443994edef36..820c656c774ebf4354b0b3c49580d030621f8a9e:/paper.tex?ds=inline diff --git a/paper.tex b/paper.tex index 9d65cfb..618e7ad 100644 --- a/paper.tex +++ b/paper.tex @@ -285,8 +285,8 @@ function of the scaling factor $S$, as in EQ~\eqref{eq:energy}. \left( T_1 + \sum_{i=2}^{N} \frac{T_i^3}{T_1^2} \right) + \Pstatic \cdot T_1 \cdot S_1 \cdot N \end{equation} -where $N$ is the number of parallel nodes, $T_i$ for $i=1,\dots,N$ are -the execution times and scaling factors of the sorted tasks. Therefore, $T1$ is +where $N$ is the number of parallel nodes, $T_i$ and $S_i$ for $i=1,\dots,N$ are +the execution times and scaling factors of the sorted tasks. Therefore, $T_1$ is the time of the slowest task, and $S_1$ its scaling factor which should be the highest because they are proportional to the time values $T_i$. The scaling factors are computed as in EQ~\eqref{eq:si}. @@ -417,29 +417,36 @@ the objective function described above. \begin{figure}[tp] \begin{algorithmic}[1] % \footnotesize - \State Initialize the variable $\Dist=0$ - \State Set dynamic and static power values. - \State Set $\Pstates$ to the number of available frequencies. - \State Set the variable $\Fnew$ to max. frequency, $\Fnew = \Fmax $ - \State Set the variable $\Fdiff$ to the difference between two successive - frequencies. - \For {$j := 1$ to $\Pstates $} - \State $\Fnew = \Fnew - \Fdiff $ - \State $S = \frac{\Fmax}{\Fnew}$ - \State $S_i = S \cdot \frac{T_1}{T_i} + \Require ~ + \begin{description} + \item[$\Pstatic$] static power value + \item[$\Pdyn$] dynamic power value + \item[$\Pstates$] number of available frequencies + \item[$\Fmax$] maximum frequency + \item[$\Fdiff$] difference between two successive freq. + \end{description} + \Ensure $\Sopt$ is the optimal scaling factor + + \State $\Sopt \gets 1$ + \State $\Dist \gets 0$ + \State $\Fnew \gets \Fmax$ + \For {$j = 2$ to $\Pstates$} + \State $\Fnew \gets \Fnew - \Fdiff$ + \State $S \gets \Fmax / \Fnew$ + \State $S_i \gets S \cdot \frac{T_1}{T_i} = \frac{\Fmax}{\Fnew} \cdot \frac{T_1}{T_i}$ for $i=1,\dots,N$ - \State $\Enorm = + \State $\Enorm \gets \frac{\Pdyn \cdot S_1^{-2} \cdot \left( T_1 + \sum_{i=2}^{N}\frac{T_i^3}{T_1^2}\right) + \Pstatic \cdot T_1 \cdot S_1 \cdot N }{ \Pdyn \cdot \left(T_1+\sum_{i=2}^{N}\frac{T_i^3}{T_1^2}\right) + \Pstatic \cdot T_1 \cdot N }$ - \State $\PnormInv = \Told / \Tnew$ + \State $\PnormInv \gets \Told / \Tnew$ \If{$(\PnormInv - \Enorm > \Dist)$} - \State $\Sopt = S$ - \State $\Dist = \PnormInv - \Enorm$ + \State $\Sopt \gets S$ + \State $\Dist \gets \PnormInv - \Enorm$ \EndIf \EndFor \State Return $\Sopt$ @@ -479,7 +486,7 @@ program. \begin{figure}[tp] \begin{algorithmic}[1] % \footnotesize - \For {$k:=1$ to \textit{some iterations}} + \For {$k=1$ to \textit{some iterations}} \State Computations section. \State Communications section. \If {$(k=1)$}