720 likes | 943 Views
Reliable and Scalable Checkpointing Systems for Distributed Computing Environments. Final exam of. Tanzima Zerin Islam School of Electrical & Computer Engineering Purdue University West Lafayette, IN Date: April 8, 2013. Distributed Computing Environments.
E N D
Reliable and Scalable Checkpointing Systems for Distributed Computing Environments Final exam of Tanzima Zerin Islam School of Electrical & Computer Engineering Purdue University West Lafayette, IN Date: April 8, 2013
Distributed Computing Environments • High Performance Computing (HPC): • Projected MTBF 3-26 minutes in exascale • Failure: hardware, software • Grid: • Cycle sharing system • Highly volatile environment • Failure: eviction of guest jobs @Notre Dame @Purdue @Indiana U. Internet Reliable & Scalable Checkpointing Systems
Fault-tolerance with Checkpoint-Restart • Checkpoints are execution states • System-level • Memory state • Compressible • Application-level • Selected variables • Hard to compress StructToyGrp{ 1. float Temperature[1024]; 2. int Pressure[20][30]; }; Reliable & Scalable Checkpointing Systems
Challenges in Checkpointing Systems • HPC: • Scalability of checkpointing systems • Grid: • Use of dedicated checkpoint servers @Notre Dame @Purdue @Indiana U. Internet Reliable & Scalable Checkpointing Systems
2010-2012 • 2012-2013 • 2009-2010 • 2007 - 2009 Contributions of This Thesis 2nd Place, ACM Student Research Competition’10 Compression on Multi-core FALCON mcrEngine Scalable Checkpointing System in HPC [Best Student Paper Nomination, SC’12] mcrCluster Reliable Checkpointing System in Grid [Best Student Paper Nomination, SC’09] Unpublished Prelim Reliable & Scalable Checkpointing Systems
Agenda • [mcrEngine] Scalable checkpointing system for HPC • [mcrCluster] Benefit-aware clustering • Future directions Reliable & Scalable Checkpointing Systems
A Scalable Checkpointing System using Data-Aware Aggregation and Compression Collaborators: Kathryn Mohror, Adam Moody, Bronis de Supinski
Big Picture of HPC Compute Nodes Network Contention Gateway Nodes Contention for Shared File System Resources Atlas Contention for Other Clusters Hera Hera Parallel File System Reliable & Scalable Checkpointing Systems
Checkpointing in HPC • MPI applications • Take globally coordinated checkpoints asynchronously • Application-level checkpoint • High-level data format for portability • HDF5, Adios, netCDF etc. • Checkpoint writing • HDF5 checkpoint{ • Group “/”{ • Group “ToyGrp”{ • DATASET “Temperature”{ • DATATYPE H5T_IEEE_F32LE • DATASPACE SIMPLE {(1024) / (1024)} • } • DATASET “Pressure” { • DATATYPE H5T_STD_U8LE • DATASPACE SIMPLE {(20,30) / (20,30)} • }}}} N1 (Funneled) NM (Grouped) Parallel File System (PFS) StructToyGrp{ 1. float Temperature[1024]; 2. short Pressure[20][30]; }; Parallel File System (PFS) Parallel File System (PFS) NN (Direct) Application Data-Format API I/O Library Best compromise but complex Easiest but contention on PFS NetCDF Not scalable HDF5 Reliable & Scalable Checkpointing Systems
Impact of Load on PFS at Large Scale • IOR • Direct (NN): 78MB per process • Observations: (−) Large average write time less frequent checkpointing (−) Large average read time poor application performance Average Write Time (s) Average Read Time (s) # of Processes (N) Reliable & Scalable Checkpointing Systems
What is the Problem? • Today’s checkpoint-restart systems will not scale • Increasing number of concurrent transfers • Increasing volume of checkpoint data Reliable & Scalable Checkpointing Systems
Our Contributions • Data-aware aggregation • Reduces the number of concurrent transfers • Improves compressibility of checkpoints by using semantic information • Data-aware compression • Improves compression ratio by 115% compared to concatenation and general-purpose compression • Design and develop mcrEngine • Grouped (NM) checkpointing system • Improves checkpointing frequency • Improves application performance Reliable & Scalable Checkpointing Systems
Naïve Solution: Data-Agnostic Compression • Agnostic scheme – concatenate checkpoints • Agnostic-block scheme – interleave fixed-size blocks • Observations: (+) Easy (−) Low compression ratio First Phase C1 C1 C2 PFS PFS pGzip pGzip C2 C1 [1-B] C1 [B+1-2B] C1 [1-B] C2 [1-B] C1 [B+1-2B] C2 [B+1-2B] C2 [1-B] C2 [B+1-2B] Reliable & Scalable Checkpointing Systems
Our Solution: [Step 1] Identify Similar Variables Across Processes [Step 2] Merging Scheme I: Aware Scheme [Step 2] Merging Scheme II: Aware-Block Scheme P1 P0 • Meta-data: • Name • Data-type • Class: • -- Array, Atomic Group ToyGrp{ float Temperature[1024]; int Pressure[20][30]; }; Group ToyGrp{ float Temperature[100]; int Pressure[10][50]; }; C1.T C2.T C1.P C2.P C1.T C1.P C2.T C2.P Concatenating similar variables C1.T C1.P C2.P C2.T Interleaving similar variables Next ‘B’ bytes of Temperature First ‘B’ bytes of Temperature Interleave Pressure Reliable & Scalable Checkpointing Systems
[Step 3] Data-Aware Aggregation & Compression • Aware scheme – concatenate similar variables • Aware-block scheme – interleave similar variables C1.T C1.H C2.H C2.T C1.P C1.D C2.P C2.D First Phase Lempel-Ziv Data-type aware compression FPC T P H D Output buffer pGzip Second Phase PFS Reliable & Scalable Checkpointing Systems
How mcrEngine Works • CNC : Compute node component • ANC: Aggregator node component • Rank-order groups, Grouped (NM) transfer T P Meta-data Request T, P CNC Identifies “similar” variables Applies data-aware aggregation and compression CNC T P Request H, D CNC Compute Component Aggregator T P H D Group Meta-data Request T, P pGzip CNC H D CNC T P Request H, D CNC PFS Group Compute Component Aggregator Meta-data T P H D Request T, P pGzip CNC H D CNC CNC Request H, D Group Compute Component Aggregator T P H D pGzip Reliable & Scalable Checkpointing Systems H D
Evaluation • Applications • ALE3D – 4.8GB per checkpoint set • Cactus – 2.41GB per checkpoint set • Cosmology – 1.1GB per checkpoint set • Implosion – 13MB per checkpoint set • Experimental test-bed • LLNL’s Sierra: 261.3 TFLOP/s, Linux cluster • 23,328 cores, 1.3 Petabyte Lustre file system • Compression algorithm • FPC [1] for double-precision float • Fpzip [2] for single-precision float • Lempel-Ziv for all other data-types • pGzip for general-purpose compression Reliable & Scalable Checkpointing Systems
Evaluation Metrics • Effectiveness of data-aware compression • What is the benefit of multiple compression phases? • How does group size affect compression ratio? • Performance of mcrEngine • Overhead of the checkpointing phase • Overhead of the restart phase Uncompressed size Compression ratio = Compressed size Reliable & Scalable Checkpointing Systems
Multiple Phases of Data-Aware Compressionare Beneficial No Benefit with Data-Agnostic Double Compression • Data-agnostic double compression is not beneficial • Because, data-format is non-uniform and uncompressible • Data-type aware compression improves compressibility • First phase changes underlying data format Data-Agnostic Compression Ratio Data-Aware Reliable & Scalable Checkpointing Systems
Impact of Group Size on Compression Ratio • Different merging schemes better for different applications • Larger group size beneficial for certain applications • ALE3D: Improvement of 8% from group size 2 to 32 Aware-Block Compression Ratio Aware ALE3D Cactus Group size Reliable & Scalable Checkpointing Systems
Data-Aware Technique Always Wins over Data-Agnostic • Data-aware technique always yields better compression ratio than Data-Agnostic technique 98-115% Aware-Block Compression Ratio Aware Agnostic-Block Agnostic ALE3D Cactus Group size Reliable & Scalable Checkpointing Systems
Summary of Effectiveness Study • Data-aware compression always wins • Reduces gigabytes of data for Cactus • Larger group sizes may improve compression ratio • Different merging schemes for different applications • Compression ratio follows course of simulation Reliable & Scalable Checkpointing Systems
Impact of Data-Aware Compression on Latency • IOR with Grouped(NM) transfer, groups of 32 processes • Data-aware: 1.2GB, data-agnostic: 2.4GB • Data-aware compression improves I/O performance at large scale • Improvement during write 43% - 70% • Improvement during read 48% - 70% Agnostic-Read Agnostic-Write Agnostic Aware-Read Aware-Write Aware Reliable & Scalable Checkpointing Systems
Impact of Aggregation & Compression on Latency • Used IOR • Direct (NN): 87MB per process • Grouped (NM): Group size 32, 1.21GB per aggregator Average Write Time (sec) N->N Write N->M Write Average Read Time (sec) N->N Read N->M Read Reliable & Scalable Checkpointing Systems
End-to-End Checkpointing Overhead • 15,408 processes • Group size of 32 for NM schemes • Each process takes a checkpoint • Converts network bound operation into CPU bound one Reduction in Checkpointing Overhead 87% Transfer Overhead 51% Total Checkpointing Overhead (sec) CPU Overhead Reliable & Scalable Checkpointing Systems
End-to-End Restart Overhead • Reduced overall restart overhead • Reduced network load and transfer time Reduction in I/O Overhead Reduction in Recovery Overhead 62% 64% Total Recovery Overhead (sec) Transfer Overhead CPU Overhead 43% 71% Reliable & Scalable Checkpointing Systems
Summary of Scalable Checkpointing System • Developed data-aware checkpoint compression technique • Relative improvement in compression ratio up to 115% • Investigated different merging techniques • Demonstrated effectiveness using real-world applications • Designed and developed mcrEngine • Reduces recovery overhead by more than 62% • Reduces checkpointing overhead by up to 87% • Improves scalability of checkpoint-restart systems Reliable & Scalable Checkpointing Systems
Benefit-Aware Clustering of Checkpoints from Parallel Applications Collaborators: Todd Gamblin, Kathryn Mohror, Adam Moody, Bronis de Supinski
Our Goal & Contributions • Goal: • Can suitably grouping checkpoints increase compressibility? • Contributions: • Design new metric for “similarity” of checkpoints • Use this metric for clustering checkpoints • Evaluate the benefit of the clustering on checkpoint storage Reliable & Scalable Checkpointing Systems
Different Clustering Schemes Our Solution 8 8 1 16 7 7 7 10 10 10 6 6 6 12 12 12 14 15 12 11 10 14 14 14 15 15 15 6 1 2 1 3 7 5 5 2 8 3 1 3 9 3 5 9 5 16 13 13 16 13 16 4 4 4 11 11 2 4 8 13 9 2 9 11 Random Rank-wise Data-aware Reliable & Scalable Checkpointing Systems
Research Questions • How to cluster checkpoints? • Does clustering improve compression ratio? Reliable & Scalable Checkpointing Systems
Benefit-Aware Clustering • Similarity metric: Improvement in reduction • Goal: Minimize the total compressed size • Benefit matrix of Cactus β Reliable & Scalable Checkpointing Systems
Novel Dissimilarity Metric • Two factors for the dissimilarity between two checkpoints N 1 Σ [(i, k) – β(j, k)]2 Δ(i, j) = × β(i, j) k = 1 Reliable & Scalable Checkpointing Systems
How Benefit-Aware Clustering works D P T double T[3000]; double V[10]; double P[5000]; double D[4000]; double R[100]; D double T[3000]; double P[5000]; double D[4000]; double D[4000]; double P[5000]; double T[3000]; P P1 P2 P3 P4 P5 T Chunking Sample Wavelet β(14 ) Reliable & Scalable Checkpointing Systems
Structure of mcrCluster P5 F O S C P4 Aggregator A2 F O S C PFS P3 Aggregator A1 F O S C P2 F O S C P1 F O S C Compute Node Reliable & Scalable Checkpointing Systems
Evaluation • Application • IOR (synthetic checkpoints) • Cactus • Experimental test-bed • LLNL’s Sierra: 261.3 TFLOP/s, Linux cluster • 23,328 cores, 1.3 Petabyte Lustre file system • Evaluation metric: • Macro benchmark: Effectiveness of clustering • Micro benchmark: Effectiveness of sampling Reliable & Scalable Checkpointing Systems
Effectiveness of mcrCluster • IOR: 32 checkpoints • Odd processes write 0 • Even processes write: <rank> | 1234567 • 29% more compression compared to rank-wise, 22% more compared to random grouping Reliable & Scalable Checkpointing Systems
Effectiveness of Sampling • X axis: Each variable • Y axis: Range of benefit values • Take away: • Chunking method preserves benefit relationships the closest Chunking Wavelet Transform Reliable & Scalable Checkpointing Systems
Contributions of mcrCluster • Design similarity and distance metric • Demonstrate significant result on synthetic data • 22% and 29% improvement compared to random and rank-wise clustering, respectively • Future directions for a first year Ph.D. student • Study impact on real applications • Design scalable clustering technique Reliable & Scalable Checkpointing Systems
Applicability of My Research • Condor systems • Compression for scientific data Reliable & Scalable Checkpointing Systems
Conclusions • This thesis addresses: • Reliability of checkpointing-based recovery in large-scale computing • Proposed three novel systems: • Falcon: Distributed checkpointing system for Grids • mcrEngine: “Data-Aware Compression” and scalable checkpointing system for HPC • mcrCluster: “Benefit-Aware Clustering” • Provides a good foundation for further research in this field Reliable & Scalable Checkpointing Systems
Questions? Reliable & Scalable Checkpointing Systems
Future Directions: Reliability • Reliability: Similarity-based process grouping for better compression • Group processes based on similarity instead of rank [On going] • Analytical solution to group size selection • Variable streaming • Integrating mcrEngine with SCR Reliable & Scalable Checkpointing Systems
Future Directions: Performance • Cache usage analysis and optimization • Developed user-level tool for analyzing cache utilization [Summer’12] • Short term goals: • Apply to real-applications • Automate analysis • Long-term goals: • Suggest potential code optimizations • Automate application tuning Reliable & Scalable Checkpointing Systems
Contact Information • Tanzima Islam (tislam@purdue.edu) • Website: web.ics.purdue.edu/~tislam Reliable & Scalable Checkpointing Systems
Effectiveness of mcrCluster Reliable & Scalable Checkpointing Systems
Backup Slides Reliable & Scalable Checkpointing Systems
[Backup Slide] Failures in HPC • “A Large-scale Study of Failures in High-performance Computing Systems”, by Bianca Schroeder, Garth Gibson Breakdown of root causes of failures Breakdown of downtime into root causes Reliable & Scalable Checkpointing Systems
[Backup Slide] Failures in HPC • “Hiding Checkpoint Overhead in HPC Applications with a Semi-Blocking Algorithm”, by LaxmikantKaléet. al. Disparity between network bandwidth and memory size Reliable & Scalable Checkpointing Systems
[Backup Slides] Falcon Reliable & Scalable Checkpointing Systems