Empathic Computer Architectures and Systems
Download
Report
Transcript Empathic Computer Architectures and Systems
Alex Shye, Berkin Ozisikyilmaz, Arindam Mallik, Gokhan Memik,
Peter A. Dinda, Robert P. Dick, and Alok N. Choudhary
Northwestern University, EECS
International Symposium on Computer Architecture, June 2008. Beijing, China.
Claim: Any optimization ultimately exists to satisfy the end user
Claim: Current architectures largely ignore the individual user
Findings/Contributions
1.
User satisfaction is correlated to CPU performance
2.
User satisfaction is non-linear, application-dependent, and userdependent
1.
We can use hardware performance counters to learn and leverage user
satisfaction to optimize power consumption while maintaining
satisfaction
1
User-centric applications
2
3
Architectural trade-offs
exposed to the user
Optimization opportunity
User variation = optimization potential
User Satisfaction
?
Your favorite metric
(IPS, throughput, etc.)
Performance Level
?
Performance Level
Leverage knowledge
for optimization
Learn relationship between user
satisfaction and hardware performance
Hardware performance
counters are supported on
all modern processors
Low overhead
Non-intrusive
WinPAPI interface; 100Hz
For each HPC:
Maximum
Minimum
Standard deviation
Range
Average
IBM Thinkpad T43p
Pentium M with Intel Speedstep
Supports 6 Frequencies (2.2Ghz -- 800Mhz)
Two user studies:
20 users each
First to learn about user satisfaction
Second to show we can leverage user satisfaction
Three multimedia/interactive applications:
Java game: A first-person-shooter tank game
Shockwave: A 3D shockwave animation
Video: DVD-quality MPEG video
Goal:
Learn relationship between
HPCs and user satisfaction
How:
Randomly change
performance/frequency
Collect HPCs
Ask the user for their
satisfaction rating!
Compare each set of HPC values with user satisfaction ratings
Collected 360 satisfaction levels (20 users, 6 frequencies, 3 applications)
45 metrics per satisfaction level
Pearson’s Product Moment Correlation Coefficient (r)
-1: negative linear correlation, 1: positive linear correlation
rx, y
N xy ( x)( y)
[ N x 2 ( x)2 ][ N y 2 ( y)2 ]
Strong correlation: 21 of 45 metrics over .7 r value
Combine all user data
Fit into a neural network
HPCs
User ID
User
Satisfaction
Inputs: HPCs and user ID
Output: User satisfaction
Observe relative importance factor
User more than two times more important than the secondmost important factor
User satisfaction is highly user-specific!
User satisfaction is often non-linear
User satisfaction is application-specific
Most importantly, user satisfaction is user-specific
Observations:
User satisfaction is non-linear
User satisfaction is application dependent
User satisfaction is user dependent
All three represent optimization potential!
Based on observations, we construct Individualized DVFS
(iDVFS)
Dynamic voltage and frequency scaling (DVFS) effective for
improving power consumption
Common DVFS schemes (i.e., Windows XP DVFS, Linux
ondemand governor) are based on CPU-utilization
Learning/Modeling Stage
Hardware
counter states
Hardware
counter states
Runtime Power Management
Building correlation
network based on
counters stats and
user feedback
User-aware
performance
prediction
model
User Satisfaction
Feedback
Predictive user-aware
Dynamic Frequency
Scaling
HPCs
User Satisfaction
Train per-user and per-application
Small training set!
Two modifications to neural network training
▪ Limit inputs (used two highest correlation HPCs)
▪ BTAC_M-average and TOT_CYC-average
▪ Repeated trainings using most accurate NN
ρ: user satisfaction tradeoff threshold
αf: per frequency threshold
M: maximum user satisfaction
Greedy approach
Make prediction every 500ms
If within user satisfaction within αfρ of M twice in a row,
decrease frequency
If not, increase frequency and is αf decreased to prevent
ping-ponging between frequency
Goal:
Evaluate iDVFS with real users
How:
Users randomly use application with iDVFS and
with Windows XP DVFS
Afterwards, users asked to rate each one
Frequency logs maintained through experiments
▪ Replayed through National Instruments DAQ for system
power
iDVFS can scale frequency effectively based upon user
satisfaction
In this case, we slightly decrease power compared to
Windows DVFS
iDVFS significantly improves power consumption
Here, CPU utilization not equal to user satisfaction
No change in user satisfaction, significant
power savings
Same user satisfaction, same power savings
Red: Users gave high ratings to lower frequencies
Dashed Black: Neural network bad
Lowered user satisfaction, improved power
Blue: Gave constant ratings during training
Slight increase in ESP
Benefits in energy reduction outweigh loss in user
satisfaction with ESP
We explore user satisfaction relative to actual hardware
performance
Show correlation from HPCs to user satisfaction for
interactive applications
Show that user satisfaction is generally non-linear,
application-, and user-specific
Demonstrate an example for leveraging user satisfaction to
improve power consumption over 25%
Questions?
For more information, please visit:
http://www.empathicsystems.org