Games are Up for DVFS

Games are Up for DVFS
Yan Gu
Samarjit Chakraborty
Wei Tsang Ooi
Department of Computer Science
National University of Singapore
Outline
Goal of this work:
• Explore the possibility of using DVFS for interactive games
• Characterize the workload of game applications and use it
to propose a DVFS scheme for games
 Introduction
 Anatomy of a Game Engine
 A First Cut: Reduce Frame Rates
 The Case for DVFS
 DVFS for Games
 Conclusion
Introduction
 Popularity of interactive games on battery-powered
portable devices (e.g. mobile phones, PDAs, PSP, etc.)
 Voltage and frequency-scalable processors on portable
devices
 Can DVFS algorithms developed for video decoding
applications be applied to games?

no interaction in video decoding, no buffering in games
 We show that:


It is meaningful to use DVFS in the context of games
frame structure in game applications can be exploited to
develop DVFS algorithms
Anatomy of a Game Engine
Physics
Particle
Event
Rendering
Dollision
Detection
Computing
AI
Display
A First Cut: Reduce Frame Rates
 Current game design principles:

higher frame rates imply the better game quality
 Recent study on frame rates [Claypool et al. MMCN 2006]

very high frame rates are not necessary, very low frame
rates impact the game quality severely
A First Cut: Reduce Frame Rates
Snapshots of animation [Davis et al. Eurographics 2003]
time
A First Cut: Reduce Frame Rates
 Current game design principles:

higher frame rates imply the better game quality
 Recent study on frame rates [Claypool et al. MMCN 2006]

very high frame rates are not necessary, very low frame
rates impact the game quality severely
 Obvious question: Can the CPU be run at a constant but
lower frequency (to reduce the frame rate)?
A First Cut: Reduce Frame Rates
desired frame rate
A First Cut: Reduce Frame Rates
 Current game design

the higher frame rate, the better game quality
 Recent study of frame rate

very high frame rates are not necessary, very low frame
rates impact the game quality severely
 Obvious question: Can the CPU be run at a constant but
lower frequency (to reduce the frame rate)?
 However, can DVFS algorithms developed for video
decoding applications be applied to games?


unpredictable workload because of the interaction in game
no frame structure in video decoding
A First Cut: Reduce Frame Rates
Average system-level power consumption for different processor frequencies
The Case for DVFS
Snapshots of Game Maps
“Outer Base” game map in Quake II
“Installation” game map in Quake II
The Case for DVFS
Workload in Games
 Game workload includes computational workload and
rendering workload

correspondence with the complexity of the scene
 Software renderer performs geometry, rasterization
and texture processing on CPU

portable devices without graphics accelerator
 Software rasterization workload is the workload of
rasterizing objects on the screen

correspondence with the complexity of the scene
The Case for DVFS
Workload in Games
Computational
workload
Game
workload
Other
workload
Rendering
workload
Rasterization
workload
The Case for DVFS
Workload in Games
Computational
workload
Game
workload
Other
workload
Rendering
workload
Rasterization
workload
Scene complexity
The Case for DVFS
Workload as a Function of Scene Complexity
The Case for DVFS
Workload Characterization
 Each frame constitutes of the following objects:






brush model – construct the “world space”
Alias model – model characters like monsters, soldiers
and weapons
texture – give the appearance of the brush model
light map – generate “lighting” effect
particles – model small debris from gun shots
...
The Case for DVFS
Workload Characterization
The Case for DVFS
Workload Characterization
 Each frame constitutes of the following objects:






brush model – construct the “world space”
Alias model – model characters like monsters, soldiers
and weapons
texture – give the appearance of the brush model
light map – generate “lighting” effect
particles – model small debris from gun shots
...
Computing workload of a frame:
• Determine workload incurred in rasterizing each object
offline
• Determine the number of occurrences of each object
online
The Case for DVFS
Brush Model
 Brush model

parameter: the number of polygons constituting
the brush model
The Case for DVFS
Brush Model
 Brush model
The Case for DVFS
Alias Model
 Alias model

parameters:


the number of pixels of triangles
opaque or alpha blending mode of skin texture
The Case for DVFS
Alias Model
 Alias model
The Case for DVFS
Texture, light map and particles
 Texture

parameter: the number of surfaces
 Light map

parameter: the number of surfaces
 Particles

parameters: the number of pixels of 3D points
Total rasterization workload = #cycles for brush
X #brush models
+ #cycles for Alias
X #Alias models
+ #cycles for texture
X #textures
+ #cycles for light map X #light maps
+ #cycles for particle
X #particles
DVFS for Games
Poll player’s message
Compute visible objects
Obtain workload
parameters of each
object
Online predict
workload
Compute required
CPU frequency
Scale to required
CPU frequency
Render the frame
Game loop
DVFS for Games
 Data structures to maintain the correlation between the
workload parameters and the corresponding rasterization
workload of each type of object
 Linear regression model to find the fitting functions
between the workload parameters and the corresponding
rasterization workload for each type of object
 Initial experiments show significant system-level power
saving with our proposed framework
Conclusion
 Explore the possibility of using DVFS for interactive
games
 Propose the workload characterization for games
 Outline DVFS algorithms with our proposed workload
characterization
Games are Up for DVFS
Thank You!