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