evalua ng opera ng system vulnerability to memory errors
play

Evalua&ng Opera&ng System Vulnerability to Memory - PowerPoint PPT Presentation

Evalua&ng Opera&ng System Vulnerability to Memory Errors Kurt B. Ferreira, Kevin Pedre1, Patrick Bridges , Ron Brightwell, David Fiala, and Frank


  1. Evalua&ng ¡Opera&ng ¡System ¡Vulnerability ¡to ¡ Memory ¡Errors ¡ ¡ ¡ Kurt ¡B. ¡Ferreira, ¡Kevin ¡Pedre1, ¡Patrick ¡Bridges , ¡ Ron ¡Brightwell, ¡ David ¡Fiala, ¡and ¡Frank ¡Mueller ¡ ¡ ¡ Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation, for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-AC04-94AL85000. SAND NO. 2011-XXXXP ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  2. The ¡Fastest ¡Machines ¡Are ¡GeBng ¡Larger ¡ 1e+06 100000 10000 Socket Count 1000 100 10 #1 #2 #3 #4 #5 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 9 9 9 9 9 9 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 9 9 9 9 9 9 0 0 0 0 0 0 0 0 0 0 1 1 1 1 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 Top500 Release Year ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  3. … ¡And ¡Failures ¡Are ¡Becoming ¡More ¡Common ¡ 1000 50 year socket MTBF 25 year socket MTBF 100 System MTBF (hours) 10 1 0.1 1 2 4 8 1 3 6 1 2 0 0 0 1 6 2 5 3 6 2 4 9 9 3 7 5 1 2 4 8 6 2 8 6 3 0 1 4 8 6 7 4 2 4 ¡ Socket Count ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  4. Most ¡Common ¡Hardware ¡Failure ¡Due ¡to ¡ Memory ¡ ¡ !"#$ %& '()*+,,)( '()*+,,)( -+.+(/0 -+.+(/0 %1& 23& 4+4)(5 67& 89,: 23& From ¡“AutomaFng ¡SoHware ¡Failure ¡ReporFng” ¡by ¡B. ¡Murphy, ¡ ACM ¡Queue ¡2 , ¡2004 ¡ ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  5. Most ¡Common ¡Hardware ¡Failure ¡Due ¡to ¡ Memory ¡ ¡ !"#$ %& '()*+,,)( '()*+,,)( -+.+(/0 -+.+(/0 %1& 23& 4+4)(5 67& 89,: 23& Memory failures expected to increase in future systems ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  6. Errors ¡in ¡OS ¡Memory ¡ ¡Shown ¡To ¡Be ¡More ¡Likely ¡ Blue Gene/P Blue Gene/L 2048 2048 Row Row 4096 4096 6144 6144 8192 8192 512 1024 1536 2048 256 512 768 1024 Column Column From ¡“Cosmic ¡Rays ¡Don’t ¡Strike ¡Twice: ¡Understanding ¡the ¡Nature ¡of ¡DRAM ¡Errors ¡ And ¡the ¡ImplicaFons ¡for ¡System ¡Design” ¡by ¡A. ¡Hwang ¡et ¡al, ¡ from ¡ ASPLOS ’12 ¡ ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  7. Current ¡OS ¡Handling ¡of ¡DRAM ¡Failures ¡ o ¡Current ¡OSs ¡hard ¡reboot ¡for ¡DRAM ¡failures ¡in ¡OS ¡memory ¡ ¡ ¡ o ¡If ¡we ¡can ¡correct ¡this ¡error, ¡we ¡can ¡avoid ¡a ¡restart ¡and ¡make ¡forward ¡progress ¡ ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  8. Our ¡Goal ¡ Construct an operating system/runtime resilient to soft errors. o ¡The ¡resilient ¡OS/runFme ¡key ¡to ¡the ¡scalability ¡of ¡extreme-­‑scale ¡systems ¡ o ¡A ¡hardened ¡OS/runFme ¡can ¡conFnue ¡in ¡the ¡presence ¡of ¡failures ¡ o ¡A ¡resilient ¡OS ¡and ¡runFme ¡criFcal ¡to ¡the ¡emerging ¡forward-­‑error ¡recovery ¡methods ¡ o ¡These ¡forward-­‑error ¡recovery ¡methods ¡are ¡predicted ¡to ¡have ¡lower ¡overheads ¡and ¡avoid ¡ the ¡wasted ¡computaFon ¡of ¡current ¡rollback/recovery ¡methods ¡ ¡ ¡ ¡ ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  9. DRAM ¡Failures: ¡A ¡Quick ¡Refresher ¡ o ¡DRAM ¡becoming ¡largest ¡porFon ¡of ¡machines ¡power ¡budget ¡ o ¡Prevalence ¡of ¡errors ¡in ¡HPC ¡due ¡to ¡number ¡of ¡DRAM ¡modules ¡(10K ¡– ¡100K ¡in ¡current ¡ systems) ¡ o ¡SuscepFbility ¡due ¡to ¡a ¡combinaFon ¡of ¡quanFty ¡and ¡density ¡ o ¡Power ¡opFmizaFons, ¡for ¡example ¡decreased ¡supply ¡voltages ¡and ¡increased ¡density, ¡ will ¡further ¡increase ¡error ¡rates ¡ o ¡Types ¡of ¡errors: ¡single-­‑bit ¡correctable, ¡double-­‑bit ¡detectable, ¡mulF-­‑bit ¡undetectable ¡ errors ¡ ¡ o ¡Uncorrectable ¡errors ¡becoming ¡increasing ¡common ¡– ¡8% ¡of ¡all ¡DIMMS/year ¡on ¡current ¡ systems ¡ ¡ ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  10. Current ¡State ¡of ¡the ¡Prac&ce ¡ o ¡ ¡Single-­‑symbol ¡Error ¡CorrecFon ¡and ¡Double-­‑symbol ¡Error ¡DetecFon ¡(SEC-­‑DED) ¡but ¡at ¡a ¡ cost ¡of ¡increased ¡energy ¡and ¡reduced ¡performance ¡ o ¡Similarly ¡for ¡Chipkill ¡which ¡tolerates ¡an ¡enFre ¡DRAM ¡chip ¡failure ¡ o ¡Errors ¡result ¡in ¡a ¡Machine ¡Check ¡ExcepFon ¡(MCE) ¡which ¡logs ¡the ¡error ¡and ¡kills ¡the ¡ applicaFon ¡which ¡memory ¡belongs ¡to ¡ o ¡Failures ¡that ¡occur ¡in ¡the ¡OS ¡typically ¡result ¡in ¡a ¡hard-­‑reboot ¡ o ¡Common ¡resilience ¡methods ¡(i.e. ¡rollback ¡recovery) ¡focus ¡only ¡on ¡applicaFon ¡and ¡not ¡ the ¡OS ¡ ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  11. Our ¡Approach: ¡Compare ¡Vulnerability ¡of ¡Linux ¡ and ¡KiPen ¡LWK ¡ o ¡Comparing ¡two ¡OSs ¡similar ¡to ¡ones ¡likely ¡seen ¡on ¡an ¡exascale-­‑class ¡system; ¡Kiden ¡and ¡ CLE ¡ o ¡ ¡Purpose ¡of ¡this ¡evaluaFon ¡is ¡to ¡look ¡at ¡the ¡ease ¡of ¡protecFng ¡each ¡respecFve ¡OS ¡to ¡ DRAM ¡failure ¡ o ¡This ¡iniFal ¡study ¡looks ¡at ¡a ¡number ¡of ¡factors: ¡ o ¡Code ¡complexity. ¡ ¡Metric: ¡Source ¡Lines ¡Of ¡Code ¡(SLOC) ¡count ¡ o ¡Memory ¡footprint ¡of ¡the ¡OS ¡while ¡running ¡an ¡HPC ¡applicaFon ¡(LAMMPS) ¡ o ¡IndenFfying ¡representaFve ¡criFcal ¡state ¡that ¡must ¡be ¡protected ¡ o ¡These ¡factors ¡used ¡to ¡suggest ¡failure ¡miFgaFon ¡mechanism. ¡ ¡For ¡example, ¡small, ¡ simple ¡state ¡may ¡effecFvely ¡protected ¡with ¡redundancy ¡ ¡ ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  12. KiPen: ¡A ¡Next ¡Genera&on ¡Lightweight ¡Kernel ¡ o ¡A ¡special-­‑purpose, ¡limited ¡funcFonality ¡OS ¡developed ¡at ¡Sandia ¡ o ¡Latest ¡in ¡SUNMOS, ¡Puma, ¡Cougar, ¡Catamount ¡line ¡of ¡lightweight ¡kernels ¡ o ¡Code ¡base ¡derived ¡from ¡Linux, ¡therefore ¡ABI ¡compaFble ¡ o ¡Compute ¡node ¡kernel ¡providing ¡only ¡that ¡funcFonality ¡needed ¡for ¡a ¡set ¡of ¡mission ¡ criFcal ¡HPC ¡applicaFons ¡ o ¡FuncFonality ¡not ¡needed ¡in ¡kernel ¡pushed ¡into ¡user ¡space ¡ ¡ o ¡Full-­‑featured ¡guest ¡OS ¡can ¡be ¡loaded ¡on-­‑demand ¡via ¡the ¡Palacios ¡virtual ¡machine ¡ monitor ¡ Open Source: Kitten ( http://code.google.com/p/kitten ), Palacios ( http://www.v3vee.org/palacios ) ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  13. CLE: ¡The ¡Cray ¡Linux ¡Environment ¡ o ¡Cray’s ¡scalable ¡OS ¡for ¡the ¡XT ¡and ¡XE ¡line ¡of ¡supercomputers ¡ o ¡Stripped-­‑down ¡kernels ¡run ¡on ¡compute ¡nodes ¡while ¡full ¡featured ¡kernels ¡run ¡on ¡the ¡ IO ¡nodes ¡ o ¡Both ¡kernels ¡based ¡on ¡the ¡Linux ¡general ¡purpose ¡OS ¡ o ¡Compute ¡node ¡opFmizaFons ¡include: ¡ o ¡Enhancements ¡to ¡memory ¡management ¡ o ¡Improved ¡out-­‑of-­‑memory ¡handling ¡ o ¡ModificaFons ¡for ¡decreased ¡OS ¡“jider” ¡ o ¡Forwarding ¡of ¡IO ¡to ¡full-­‑featured ¡nodes ¡ ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

  14. KiPen ¡Significantly ¡Less ¡Complex ¡Than ¡CLE ¡ 1e+06 1e+08 Linux Core, x86 only Linux Full Source Tree Kitten Core, x86 only Linux drivers/ Kitten Full Source Tree Kitten minus Infiniband Drivers 1e+07 100000 SLOC SLOC 1e+06 100000 10000 10000 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 Date Date ¡ ROSS ’12, ¡June ¡29, ¡2012, ¡Venice, ¡Italy ¡ ¡ ¡

Recommend


More recommend