Compiler-Assisted Leakage Energy Optimization for Clustered VLIW Architectures
Rahul Nagpal and Y N Srikant
IISc-CSA-TR-2006-6
(May 2006) Available formats: [pdf]
Filed on May 25, 2006
Updated on May 25, 2006
Miniaturization of devices and the ensuing decrease in the threshold voltage has
led to a substantial increase in the leakage component of the total processor
energy consumption. Relatively simpler issue logic and the presence of a large number
of function units in the VLIW and the clustered VLIW architectures attribute a large
fraction of this leakage energy consumption in the functional units. However,
functional units are not fully utilized in the VLIW architectures because of
the inherent variations in the ILP of the programs. This underutilization is even more pronounced
in the context of clustered VLIW architectures because of the contentions for the limited
number of slow inter-cluster communication channels which lead to many short idle cycles.
In the past, some architectural schemes have been proposed to obtain leakage energy
benefits by aggressively exploiting the idleness of functional units. However, presence
of many short idle cycles cause frequent transitions from the active mode to the sleep mode
and vice-versa and adversely affects the energy benefits of a purely hardware based scheme. In
this paper, we propose and evaluate a compiler instruction scheduling algorithm that assist such
a hardware based scheme in the context of VLIW and clustered VLIW architectures. The proposed scheme
exploits the scheduling slacks of instructions to orchestrate the functional unit mapping with
the objective of reducing the number of transitions in functional units thereby keeping them off for a longer duration.
The proposed compiler-assisted scheme obtains a further 12% reduction of energy consumption
of functional units with negligible performance degradation over a hardware-only scheme
for a VLIW architecture. The benefits are 15% and 17% in the context of a 2-clustered and a 4-clustered
VLIW architecture respectively. Our test bed uses the Trimaran compiler infrastructure.
Please bookmark this technical report as http://aditya.csa.iisc.ernet.in/TR/2006/6/.Problems ? Contact techrep@csa.iisc.ernet.in
[Updated at 2009-10-22T06:42Z]