Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1,...

22
Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1 , Nikolas Ioannou 2 , Polychronis Xekalakis 3 and Marcelo Cintra 2 1 University of Manchester 2 University of Edinburgh 3 Intel Labs Barcelona - UPC

Transcript of Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1,...

Page 1: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Increasing the Energy Efficiency of TLS Systems

Using Intermediate Checkpointing

Salman Khan1, Nikolas Ioannou2, Polychronis Xekalakis3 and Marcelo Cintra2

1 University of Manchester2 University of Edinburgh

3 Intel Labs Barcelona - UPC

Page 2: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

HiPC 2011 2

Introduction

Power efficiency, complexity and time-to-market reasons lead to CMPs

Problem:– No benefits for sequential applications– Even for mostly parallel applications Amdahl’s

Law limits performance gains with many cores Solution: Thread Level Speculation(TLS)

– But performance through TLS costs in energy

Can we reduce the wastefulness of re-execution due to misspeculation

without losing performance?

Page 3: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

3

Key Contributions

Propose checkpointing to improve efficiency of speculative execution

Evaluate dependence prediction techniques to guide checkpoint placement

Our approach results in an energy saving of up to 14%, with 7% on average over normal TLS execution, with no significant effect on speedup.

HiPC 2011

Page 4: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

4

Outline

Introduction Checkpointing Dependence Predictors Checkpointing Policy Experimental Setup and Results Conclusions

HiPC 2011

Page 5: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Thread Level Speculation

5HiPC 2011

Page 6: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Thread Level Speculation with Checkpointing

6HiPC 2011

Page 7: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

7

Outline

Introduction Checkpointing Dependence Predictors Checkpointing Policy Experimental Setup and Results Conclusions

HiPC 2011

Page 8: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Placing Checkpoints

Stride Dependence Prediction

– Address based– Program Counter Based– Hybrid

HiPC 2011 8

Page 9: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Dependence Prediction

HiPC 2011 9

Page 10: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Hybrid Dependence Predictor

HiPC 2011 10

Page 11: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

11

Outline

Introduction Checkpointing Dependence Predictors Checkpointing Policy Experimental Setup and Results Conclusions

HiPC 2011

Page 12: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Placing Checkpoints

Limited number of checkpoints Placing a checkpoint has a cost Checkpointing on every positive

prediction results in too many checkpoints

HiPC 2011 12

Page 13: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

13

Outline

Introduction Checkpointing Dependence Predictors Checkpointing Policy Experimental Setup and Results Conclusions

HPCA 2010

Page 14: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Setup Simulator, Compiler and Benchmarks:

– SESC (http://sesc.sourceforge.net/)– POSH (Liu et al. PPoPP ‘06)– Spec 2000 Int.

Architecture:– Four way CMP, 4-Issue cores– 16KB L1 Data (multi-versioned) and

Instruction Caches– 1MB unified L2 Caches– Cycles from Violation to Kill/Restart: 12– Cycles to Spawn: 12

HiPC 2011 14

Page 15: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Measuring Dependence Prediction

HiPC 2011 15

Page 16: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

ICS 2009 16

Page 17: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

HiPC 2011 17

Wasted Instructions: Unnecessarily squashed instructions.

Page 18: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

HiPC 2011 18

Page 19: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

HiPC 2011 19

Page 20: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

20

Outline

Introduction Checkpointing Dependence Predictors Checkpointing Policy Experimental Setup and Results Conclusions

HPCA 2010

Page 21: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Conclusions

Effective checkpointing improves the efficiency of TLS

Placing checkpoints by stride is not sufficient to reduce waste significantly

Checkpointing using dependence predication obtains energy saving of up to 14%, with 7% on average over normal TLS execution, with no significant effect on speedup.HiPC 2011 21

Page 22: Increasing the Energy Efficiency of TLS Systems Using Intermediate Checkpointing Salman Khan 1, Nikolas Ioannou 2, Polychronis Xekalakis 3 and Marcelo.

Read the paper for…

Complete results Microarchitectural issues that

arise from checkpointing running tasks

Modified squash/restart mechanism that is needed to avoid performance degradation from checkpointing

HiPC 2011 22