Petri-Net based Performance Model For Effective DVFS for
Multithreaded Programs
Abstract :
Chip Multiprocessors (CMP's) have made their way into servers, desktop systems
and even embedded systems. While power dissipation limits performance of CMP's
and affects system reliability, energy efficiency is becoming increasingly
important for bringing down the significant contribution of energy in
organizations' budgets and the environment, besides enhancing battery
life. Dynamic Voltage and Frequency Scaling (DVFS) is a very effective tool
for designing tradeoffs involving power, energy, temperature and performance.
It is important that the potential benefits DVFS offers are realized. To that
end, in this report, we present a novel software based DVFS method, which uses
a formal Petri net based program performance model to find energy efficient
voltage-frequency settings. We evaluate this, and a state-of-the-art hardware
based DVFS method with two important classes of parallel applications: data
parallel (SPMD style) applications, and stream multithreaded applications.
From our evaluation, we find that the Petri net performance model based
software method for DVFS achieves significant $Energy/Throughput^{2}$
($ET^{-2}$) improvements for both classes of multithreaded applications. The
hardware based method achieves high $ET^{-2}$ improvements for SPMD
applications, but performs poorly in the case of stream applications. For
stream applications, a simple linear interpolation based DVFS method achieves
all the benefits of the Petri net based method. We also observe that support
for independent voltage and frequency control for each core is essential for
obtaining high $ET^{-2}$ improvement for stream applications.
pdf