+The need for more computing power is continually increasing. To partially satisfy this need, most supercomputers
+constructors just put more computing nodes in their platform. The resulting platform might achieve higher floating
+point operations per second (FLOPS), but the energy consumption and the heat dissipation are also increased.
+As an example, the chinese supercomputer Tianhe-2 had the highest FLOPS in November 2014 according to the Top500
+list \cite{TOP500_Supercomputers_Sites}. However, it was also the most power hungry platform with its over 3 millions
+cores consuming around 17.8 megawatts. Moreover, according to the U.S. annual energy outlook 2014
+\cite{U.S_Annual.Energy.Outlook.2014}, the price of energy for 1 megawatt-hour
+was approximately equal to \$70.
+Therefore, the price of the energy consumed by the
+Tianhe-2 platform is approximately more than \$10 millions each year.
+The computing platforms must be more energy efficient and offer the highest number of FLOPS per watt possible,
+such as the TSUBAME-KFC at the GSIC center of Tokyo which
+became the top of the Green500 list in June 2014 \cite{Green500_List}.
+This heterogeneous platform executes more than four GFLOPS per watt.
+
+Besides hardware improvements, there are many software techniques to lower the energy consumption of these platforms,
+such as scheduling, DVFS, ... DVFS is a widely used process to reduce the energy consumption of a processor by lowering
+its frequency \cite{Rizvandi_Some.Observations.on.Optimal.Frequency}. However, it also the reduces the number of FLOPS
+executed by the processor which might increase the execution time of the application running over that processor.
+Therefore, researchers used different optimization strategies to select the frequency that gives the best tradeoff
+between the energy reduction and
+performance degradation ratio. \textbf{In our previous paper \cite{Our_first_paper}, a frequency selecting algorithm
+was proposed for distributed iterative application running over homogeneous platform. While in this paper the algorithm is significantly adapted to run over a heterogeneous platform. This platform is a collection of heterogeneous computing nodes interconnected via a high speed homogeneous network.}
+
+The proposed frequency selecting algorithm selects the vector of frequencies for a heterogeneous platform that runs a message passing iterative application, that gives the maximum energy reduction and minimum
+performance degradation ratio simultaneously. The algorithm has a very small
+overhead, works online and does not need any training or profiling.
+
+This paper is organized as follows: Section~\ref{sec.relwork} presents some
+related works from other authors. Section~\ref{sec.exe} describes how the
+execution time of message passing programs can be predicted. It also presents an energy
+model that predicts the energy consumption of an application running over a heterogeneous platform. Section~\ref{sec.compet} presents
+the energy-performance objective function that maximizes the reduction of energy
+consumption while minimizing the degradation of the program's performance.
+Section~\ref{sec.optim} details the proposed frequency selecting algorithm then the precision of the proposed algorithm is verified.
+Section~\ref{sec.expe} presents the results of applying the algorithm on the NAS parallel benchmarks and executing them
+on a heterogeneous platform. It also shows the results of running three
+different power scenarios and comparing them.
+Finally, we conclude in Section~\ref{sec.concl} with a summary and some future works.