28

Games are Up for DVFS Yan Gu Samarjit Chakraborty Wei Tsang Ooi Department of Computer Science National University of Singapore

Embed Size (px)

Citation preview

Games are Up for DVFSGames are Up for DVFS

Yan Gu Samarjit Chakraborty Wei Tsang OoiDepartment of Computer Science

National University of Singapore

OutlineOutline

Introduction

Anatomy of a Game Engine

A First Cut: Reduce Frame Rates

The Case for DVFS

DVFS for Games

Conclusion

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

IntroductionIntroduction

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 EngineAnatomy of a Game Engine

Event

Physics

DollisionDetection

Particle

AI

Rendering Display

Computing

A First Cut: Reduce Frame RatesA 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 RatesA First Cut: Reduce Frame Rates

Snapshots of animation [Davis et al. Eurographics 2003]time

A First Cut: Reduce Frame RatesA 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 RatesA First Cut: Reduce Frame Rates

desired frame rate

A First Cut: Reduce Frame RatesA 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 RatesA First Cut: Reduce Frame Rates

Average system-level power consumption for different processor frequencies

The Case for DVFS Snapshots of Game MapsThe Case for DVFS Snapshots of Game Maps

“Outer Base” game map in Quake II “Installation” game map in Quake II

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 GamesThe Case for DVFS Workload in Games

The Case for DVFS Workload in GamesThe Case for DVFS Workload in Games

Game workload

Computational workload

Rendering workload

Other workload

Rasterization workload

The Case for DVFS Workload in GamesThe Case for DVFS Workload in Games

Game workload

Computational workload

Rendering workload

Other workload

Rasterization workload

Scene complexity

The Case for DVFSWorkload as a Function of Scene ComplexityThe Case for DVFSWorkload as a Function of Scene Complexity

The Case for DVFSWorkload CharacterizationThe Case for DVFSWorkload 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 DVFSWorkload CharacterizationThe Case for DVFSWorkload Characterization

The Case for DVFSWorkload CharacterizationThe Case for DVFSWorkload 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 DVFSBrush ModelThe Case for DVFSBrush Model

Brush model parameter: the number of polygons constituting

the brush model

The Case for DVFSBrush ModelThe Case for DVFSBrush Model

Brush model

The Case for DVFSAlias ModelThe Case for DVFSAlias Model

Alias model parameters:

the number of pixels of triangles opaque or alpha blending mode of skin texture

The Case for DVFSAlias ModelThe Case for DVFSAlias Model

Alias model

The Case for DVFSTexture, light map and particlesThe Case for DVFSTexture, 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 GamesDVFS for Games

Poll player’s message

Compute visible objects

Render the frame

Obtain workload parameters of each

object

Online predict workload

Compute required CPU frequency

Scale to required CPU frequency

Game loop

DVFS for GamesDVFS 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

ConclusionConclusion

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 DVFSGames are Up for DVFS

Thank You!Thank You!