Presentation is loading. Please wait.

Presentation is loading. Please wait.

Zombie Memory: Extending Memory Lifetime by Reviving Dead Blocks Rodolfo Azevedo 1, John D. Davis 2, Karin Strauss 2, Parikshit Gopalan 2, Mark Manasse.

Similar presentations


Presentation on theme: "Zombie Memory: Extending Memory Lifetime by Reviving Dead Blocks Rodolfo Azevedo 1, John D. Davis 2, Karin Strauss 2, Parikshit Gopalan 2, Mark Manasse."— Presentation transcript:

1 Zombie Memory: Extending Memory Lifetime by Reviving Dead Blocks Rodolfo Azevedo 1, John D. Davis 2, Karin Strauss 2, Parikshit Gopalan 2, Mark Manasse 2, Sergey Yekhanin 2 University of Campinas 1 & Microsoft Research 2 Zombie Memory John D. Davis 2,

2 The “End” of the Road for DRAM DRAM scaling wall Fabrication limitations Variability Increasing error correction overhead (more transient errors) Increasing active/standby/refresh power Industry looking for byte-addressable alternatives …but, main gating factor is memory lifetime

3 Phase Change Memory (PCM), CBRAM, Memristors, etc. Fabrication friendly Value stability “Zero” standby power Shorter lifetime (10 8 ) vs. DRAM (10 15 ) Mismatch in memory cell failure mechanisms Coming on the Horizon: NEW *RAM! 4 KB Page Dead Page Zombie Page

4 Cell Failure Remediation Mismatch I am NOT Dead Yet!

5 Not all dead things are bad for you! Lots of good cells in “ dead ” pages Single-level cell (SLC) & multi-level cell (MLC) mechanisms The first resistance drift + cell failure mechanism for MLC PCM Adaptive error correction mechanisms Maximizes memory capacity over the lifetime Why Should You Care About Zombies?

6 Zombies in the Paper SLCMLC Error sourcesWearoutWearout + drift MechanismsZombieECP ZombieERC ZombieXOR ZombieMLC Lifetime improvement58%-92%11x-17x Service lifetime~2.2 years  years ~5 months  ~5 years Performance impact0-25%

7 Outline Block Pairing Zombie Memory Zombie ECP Zombie ERC Zombie XOR Zombie MLC How Long do Zombies Live? (Evaluation) Conclusions Single-Level Cell Zombie ECP Zombie ERC Multi-Level Cell

8 Reintegrating Zombies back into the memory system Phase Change Memory + 6 Error Correcting Pointers (ECP) Other error correction schemes can be used 512 bit blocks + 64 bits error correction, 64 blocks/ 4 KB page Differential writes Simulation details in the paper, SPEC CPU2006 The Basics Primary Page Zombie Page

9 Error Correcting Pointers Review Use pointer + replacement bit for cell failure 9 bits pointer + 1 bit Additional metadata ISCA ‘ bit block Good Block Worn Block Failed Cell ECP Entry 12% EC Overhead

10 Adaptive Block Pairing Pairing with different sized spare blocks EC bits in the primary point to the spare Reuse intrinsic error correction in the spare block Re-pairing at the sub-block and block levels Re-pair with different spare blocks Gives Zombie a second chance Primary Spare Good Block Worn Block Spare Block Zombie block pools

11 Zombie XOR Pairs primary and spare blocks using XOR aligned bits to produce data Bias wear to spare block to maximize primary lifetime Reuse spare error correction bits to correct aligned cell failures in the primary and spare Re-pair with “new” spare PrimarySpare Good Block Worn Block Spare Block Failed Cell ECP Entry Pairing Pointer

12 Zombie MLC Must handle drift and cell failures Rank modulation* to handle drift Fixed guard bands Relative cell values *N. Papandreou et al. IMW, 2011 Reprint of D. Ielmini et al., IEDM NumberStringCodeword

13 Zombie MLC Must handle drift and cell failures Rank modulation* to handle drift Anchor symbols are added to handle cell failures Known anchor location and/or known values Optimal encoding: # replacement cells = # failed cells Cell Stuck-at 0 Original string Anchor Codeword Anchors 2 Cells Stuck-at Original non-uniform string Coordinate shuffle equation See the paper for 3 stuck-at cells mechanism. Codeword *N. Papandreou et al. IMW, 2011 Bit positions

14 Zombie ECP & ERC Pairing + existing error correction mechanisms Adaptive: 1/4, 1/2, and full block pairing ECP [ISCA ‘10]: Use spare block to add more Error Correcting Pointers to the primary block ERC [PIT ‘74, HPCA ‘13] : Change the model to an erasure model Instead of correcting (d-1)/2 errors (error model), can correct d-1 errors Bias wear to spare block to maximize primary lifetime

15 How Long do Zombies Live?

16 Zombie SLC Write Capacity

17 58% longer life

18 Zombie SLC Write Capacity 58% longer life

19 Zombie SLC Write Capacity 92% longer life

20 Zombie SLC Performance < 0.5% slowdown on SPEC workloads < 6% slowdown on SPEC workloads

21 I’m NOT Dead YET!

22 I’m Still NOT Dead YET!

23 I’m STILL NOT Dead YET!

24 Squeezed Blood From a Turnip!

25 Zombie MLC Write Capacity

26 17X longer life

27 Zombie MLC Write Capacity 11X longer life

28 Zombie MLC Performance < 4% slowdown on SPEC workloads

29 Zombies Can Be Rehabilitated! Zombie framework Using dead blocks to extend memory lifetime Versatile and adaptive Low implementation overhead MLC: First drift + cell failure solution Using fixed positions and/or fixed values for anchors Lifetime improvement 11X – 17X SLC: Multiple mechanisms Maximize lifetime or capacity Lifetime improvement of 58-92%

30 Questions? For more details: Read the paper, read the tech report, and/or talk to us & {john.d, kstrauss, parik, manasse, Zombie Memory : Extending Memory Lifetime by Reviving Dead Blocks

31 More About Zombie…

32 Zombie SLC Performance

33 Zombie MLC Performance

34 Mitigating Drift-Induced Soft Errors Previous Assumptions: Fixed guard band for cell value Uniform distribution of resistance values. ~2 second data lifetime…. Relaxing the drift-induced soft error constraint Rank modulation (no fixed guard band) Non-uniform distribution of resistance values Cluster the low levels and spread apart the high levels ~5 Days of data lifetime (worst-case wear is 5 seconds) More knobs: Tighten resistance distribution Use different drift coefficients


Download ppt "Zombie Memory: Extending Memory Lifetime by Reviving Dead Blocks Rodolfo Azevedo 1, John D. Davis 2, Karin Strauss 2, Parikshit Gopalan 2, Mark Manasse."

Similar presentations


Ads by Google