Lower Power Synthesis - VADA

advertisement
L35: Lower Power Voltage
Scaling
1999. 8.
성균관대학교 조 준 동
http://vada.skku.ac.kr
SungKyunKwan Univ.
VADA Lab.
1
Voltage Scaling
• Merely changing a processor clock frequency
is not an effective technique for reducing
energy consumption. Reducing the clock
frequency will reduce the power consumed by
a processor, however, it does not reduce the
energy required to perform a given task.
• Lowering the voltage along with the clock
actually alters the energy-per-operation of the
microprocessor, reducing the energy required
to perform a fixed amount of work.
SungKyunKwan Univ.
VADA Lab.
2
Dynamic Voltage Scaling(DVS)
SungKyunKwan Univ.
VADA Lab.
3
Processor Usage Model
SungKyunKwan Univ.
VADA Lab.
4
OS: Voltage Scaling
SungKyunKwan Univ.
VADA Lab.
5
Scale Supply Voltage with
fCLK
SungKyunKwan Univ.
VADA Lab.
6
Adaptive Power Supply
Voltages
SungKyunKwan Univ.
VADA Lab.
7
Variable Supply Voltage Block Diagram
SungKyunKwan Univ.
VADA Lab.
8
Typical MPEG IDCT
Histogram
SungKyunKwan Univ.
VADA Lab.
9
Voltage scheduling under timing constraints
– Energy consumption of a processor:
• 10nJ/cycle at 2.5V
• 25nJ/cycle at 4 V
• 40nJ/cycle at 5V
– maximum clock frequencies:
• 50MHz at 5V, 40MHz at 4V, 25MHz at 2.5V
– Given that an application needs 1000M cycles
to finish and the timing constaint is 25sec.
SungKyunKwan Univ.
VADA Lab.
10
Energy consumption ( Vdd2)
Different Voltage Schedules
40J
1000Mcycles
50MHz
5.02
0
5.02
5
10
15
32.5J
750Mcycles
50MHz
Timing constraint
(A)
20
25
250Mcycles
25MHz
Time(sec)
(B)
2.52
0
5
5.02
4.02
10
15
20
25
25J
1000Mcycles
40MHz
0
5
10
SungKyunKwan Univ.
15
Time(sec)
(C)
20
25
Time(sec)
VADA Lab.
11
Example of Variable Supply
SungKyunKwan Univ.
VADA Lab.
12
DVS Implementation
SungKyunKwan Univ.
VADA Lab.
13
Variable Supply Voltage Block Diagram
•
•
•
SungKyunKwan Univ.
Computational work varies with
time. An approach to reduce
the energy consumption of
such systems beyond shut
down involves the dynamic
adjustment of supply voltage
based on computational
workload.
The basic idea is to lower
power supply when the a fixed
supply for some fraction of
time.
The supply voltage and clock
rate are increased during high
workload period.
VADA Lab.
14
Data Driven Signal Processing
The basic idea of
averaging two samples
are buffered and their
work loads are
averaged.
The averaged workload
is then used as the
effective workload to
drive the power supply.
Using a pingpong
buffering scheme, data
samples In +2, In +3
are being buffered while
In, In +1
are being processed.
SungKyunKwan Univ.
VADA Lab.
15
Example of Buffering
SungKyunKwan Univ.
VADA Lab.
16
Graphical Interpretation
SungKyunKwan Univ.
VADA Lab.
17
Buffering Example: MPEG Decoder
SungKyunKwan Univ.
VADA Lab.
18
DVS
SungKyunKwan Univ.
VADA Lab.
19
DVS Scheduling Framework
Energy ~ Work • Speed
µProc. Speed
Start
Work
Deadline
Idle time
represents
wasted
energy
Start
Deadline
Lower speed,
Lower voltage,
Lower energy
Work
Time
• Use real-time framework to
constrain task voltage scheduling
SungKyunKwan Univ.
VADA Lab.
20
DVS Simulation
Interrupts
S2
S3 D1
D3
D2
Task
Variance
Speed
S1
Time
Theory
User
Input
Cache
Behavior
Scheduling
Overhead
Intercom
Weather
Reality
Implementation
Simulate run-time scheduler to
fully understand voltage-scaling behavior
SungKyunKwan Univ.
VADA Lab.
21
Simulation Infrastructure
GUI
MPEG
Cryptography
Windowing
I/O Support
Application
support libraries
Voltage
Scheduler
{
Frame_Start(deadline);
Decode_MPEG_Frame();
Frame_Finish();
}
MPEG  Priority 80
GUI  Priority 23
Run-time
Scheduler Speed  Priority
lpARM
Develop support environment to
model complete software system
SungKyunKwan Univ.
VADA Lab.
22
Normalized
to 3.3V
fixed-voltage
processor
Total System Energy
Run-Time Voltage Scaling
100%
80%
DVS Simulation
Post-Trace Optimal
73%
65%
58%
60%
46%
40%
20%
16% 15%
25% 20%
Combination
of independent
benchmarks
0%
Audio
GUI
MPEG
Audio &
MPEG
• Dynamic Voltage Scaling
significantly reduces energy dissipation!
SungKyunKwan Univ.
VADA Lab.
23
Run-Time Performance Analysis
80%
60%
Audio
GUI
MPEG
40%
20%
0%
0 Fixed-V Frame Execution Time 2x
deadline
Normalized to
deadline at max
processor speed
100%
Total System Energy
100%
Frame Computation Histogram
80%
DVS System Energy
Basic Algorithm
Adjusted Algorithm
Post-Trace Optimal
60%
40%
20%
0%
Audio
MPEG
GUI
Software can automatically
recognize and adjust for
bi-modal GUI distribution
• Application characteristics strongly affect
voltage scaling performance
SungKyunKwan Univ.
VADA Lab.
24
Compute ASAP+ System
Shutdown
SungKyunKwan Univ.
VADA Lab.
25
Another Approach: Reduce Clock
Frequency
SungKyunKwan Univ.
VADA Lab.
26
Voltage Scheduling II
SungKyunKwan Univ.
VADA Lab.
27
Evaluation: Algorithms
SungKyunKwan Univ.
VADA Lab.
28
AVG<weight>
• Computes an exponentially moving average of the
previous intervals. At each interval the run-percent
from the previous interval is combined with the
previous running average, forming a long-term
prediction of system behavior. <weight> is the
relative weighting of past intervals relative of the
current interval (larger value means a great weight
on the past) using the equation (weight X old +
new)/(weight+1). 3 can be used.
SungKyunKwan Univ.
VADA Lab.
29
OS: Voltage Scheduling
SungKyunKwan Univ.
VADA Lab.
30
Run-Time Scheduling Dynamics
µProc. Speed
Run faster
to make up
lost time
Thread accomplishing
more than expected,
reduce speed
Deadline exceeded,
increase speed
Higher-priority
task
Initial speed
estimate
Time
E(work)
Optimal
schedule
Workload calculated to be
average of previous frames
• Periodically re-evaluate schedule to
adjust for unforeseen events
SungKyunKwan Univ.
VADA Lab.
31
Vertical Layering
SungKyunKwan Univ.
VADA Lab.
32
Optimal Scheduling
• For a region spanned by a given task
specification, each point in time will either be
scheduled at the minimum speed spanned by
that task or else the task will not be
scheduled to run at that point.
Algorithm
• n tasks to schedule
• O(n) speed settings to consider for each task
• O(n) linked tasks requiring adjustment for
each setting: Total complexity: O(n 3 ) time.
SungKyunKwan Univ.
VADA Lab.
33
Scheduling step0
SungKyunKwan Univ.
VADA Lab.
34
Scheduling step1
SungKyunKwan Univ.
VADA Lab.
35
Scheduling step2
SungKyunKwan Univ.
VADA Lab.
36
Scheduling step3
SungKyunKwan Univ.
VADA Lab.
37
Scheduling step4
SungKyunKwan Univ.
VADA Lab.
38
Scheduling step5
SungKyunKwan Univ.
VADA Lab.
39
References
•
[Lin97] Lin et al., "Scheduling Techniques for Variable Voltage Low Power Designs," ACM
Transactions on Design Automation of Electronic Systems, vol. 2, no. 2, pp. 81-97, 1997.
•
[Govil95] - Extended simulation with practical algorithms on traces of UNIX workstations
•
[Kuroda98] - Implementation of DVS processor to mitigate effects of process variation
•
[Ishihara98] - Dynamic voltage scaling with non- constant capacitances
•
S. Gary, et. al., "The PowerPC 603 Microprocessor: A Low-Power Design for Portable
Applications," Proceedings of the Thirty-Ninth IEEE Computer Society International Conference,
Mar. 1994, pp. 307-15.
•
A. Chandrakasan, Low Power Digital CMOS Design, Boston: Kluwer Academic Publishers, 1995.
•
C. Nagendra, et.al., "A Comparison of the Power-Delay Characteristics of CMOS Adders,”
Proceedings of the International Workshop on Low Power Design, Apr. 1994, pp. 231-6.
•
T. Callaway and E. Swartzlander, "Optimizing Arithmetic Elements for Signal Processing," VLSI
Signal Processing, Vol. 5, New York: IEEE Special Publications, 1992, pp. 91-100.
•
T. Biggs, et. al., "A 1 Watt 68040-Compatible Microprocessor," Proceedings of the IEEE
Symposium on Low Power Electronics, Oct. 1994, pp. 8-11.
•
J. Lorch, A Complete Picture of the Energy Consumption of a Portable Computer, M.S. Thesis,
University of California, Berkeley, 1995
SungKyunKwan Univ.
VADA Lab.
40
References
•
•
•
•
•
•
•
S. Kunii, "Means of Realizing Long Battery Life in Portable PCs," Proceedings of the
IEEE Symposium on Low Power Electronics, Oct. 1995, pp. 12-3.
M. Culbert, "Low Power Hardware for a High Performance PDA," Proceedings of the
Thirty-Ninth IEEE Computer Society International Conference, Mar. 1994, pp. 144-7.
T. Ikeda, "ThinkPad Low-Power Evolution," Proceedings of the IEEE Symposium on
Low Power Electronics, Oct. 1995, pp. 6-7.
A. Chandrakasan, A. Burstein, and R.W. Brodersen, "A Low Power Chipset for Portable
Multimedia Applications," IEEE Journal of Solid State Circuits, Vol. 29, Dec. 1994, pp.
1415-28.
M. Horowitz, T. Indermaur, and R. Gonzalez, "Low-Power Digital Design,"
Proceedings of the IEEE Symposium on Low Power Electronics, Oct. 1994, pp. 8-11.
D. Lidsky and J. Rabaey, "Early Power Exploration - A World Wide Web Application,"
Proceedings of the Thirty-Third Design Automation Conference, June 1996.
T. Burd, Low-Power CMOS Cell Library Design Methodology, M.S. Thesis, University
of California, Berkeley, UCB/ERL M94/89, 1994.
SungKyunKwan Univ.
VADA Lab.
41
•
•
•
•
•
•
•
A. Chandrakasan, S. Sheng, and R.W. Brodersen, "Low-Power CMOS Digital Design,"
IEEE Journal of Solid State Circuits, Apr. 1992, pp. 473-84.
Advanced RISC Machines, Ltd., ARM710 Data Sheet, Technical Document, Dec. 1994.
Integrated Device Technology, Inc., Enhanced Orion 64-Bit RISC Microprocessor, Data
Sheet, Sep. 1995.
Intel Corp., Embedded Ultra-Low Power Intel486TM GX Processor, SmartDieTM
Product Specification, Dec. 1995.
A. Stratakos, S. Sanders, and R.W. Brodersen, "A Low-voltage CMOS DC-DC
Converter for Portable Battery-operated Systems," Proceedings of the Twenty-Fifth
IEEE Power Electronics Specialist Conference, June 1994, pp. 619-26.
J. Bunda, et. al., "16-Bit vs. 32-Bit Instructions for Pipelined Architectures,"
Proceedings of the 20th International Symposium on Computer Architecture, May 1993,
pp. 237-46.
Advanced RISC Machines, Ltd., Introduction to Thumb, Developer Technical
Document, Mar. 1995.
SungKyunKwan Univ.
VADA Lab.
42
•
•
•
•
•
•
J. Bunda, W.C. Athas, and D. Fussell, "Evaluating Power Implications of CMOS
Microprocessor Design Decisions," Proceedings of the International Workshop on Low
Power Design, Apr. 1994, pp. 147-52.
P. Freet, "The SH Microprocessor: 16-Bit Fixed Length Instruction Set Provides Better
Power and Die Size," Proceedings of the Thirty-Ninth IEEE Computer Society
International Conference, Mar. 1994, pp. 486-8.
T. Burd, B. Peters, A Power Analysis of a Microprocessor: A Study of an
Implementation of the MIPS R3000 Architecture, ERL Technical Report, University of
California, Berkeley, 1994.
J. Montanaro, et. al., "A 160MHz 32b 0.5W CMOS RISC Microprocessor," Proceedings
of the Thirty-Ninth IEEE International Solid-State Circuits Conference - Slide
Supplement, Feb. 1996, pp. 170-1.
J. Bunda, Instruction-Processing Optimization Techniques for VLSI Microprocessors,
Ph.D. Thesis, The University of Texas at Austin, 1993.
R. Gonzalez and M. Horowitz, "Energy Dissipation in General Purpose Processors,"
Proceedings of the IEEE Symposium on Low Power Electronics, Oct. 1995, pp. 12-3.
SungKyunKwan Univ.
VADA Lab.
43
Download