US2008092030A1PendingUtilityA1

Method and apparatus for template based parallel checkpointing

Assignee: IBMPriority: Apr 14, 2005Filed: Dec 8, 2007Published: Apr 17, 2008
Est. expiryApr 14, 2025(expired)· nominal 20-yr term from priority
G06F 11/1438G06F 11/1451
54
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method and apparatus for a template based parallel checkpoint save for a massively parallel super computer system using a parallel checksum algorithm such as rsync. In preferred embodiments, the checkpoint data for each node is compared to a template checkpoint file that resides in the storage and that was previously produced. Embodiments herein greatly decrease the amount of data that must be transmitted and stored for faster checkpointing and increased efficiency of the computer system. Embodiments are directed a parallel computer system with nodes arranged in a cluster with a high speed interconnect that can perform broadcast communication. The checkpoint contains a set of actual small data blocks with their corresponding checksums from all nodes in the system. The data blocks may be compressed using conventional non-lossy data compression algorithms to further reduce the overall checkpoint size.

Claims

exact text as granted — not AI-modified
1 . A computer implemented method for checkpointing a parallel computer system comprising the steps of: 
 a) a checkpoint server broadcasting a template of data block checksums from a previous checkpoint to all compute nodes arranged in a cluster; and    b) each compute node searching its own memory image for checksum matches.    
   
   
       2 . The computer implemented method of  claim 1  wherein the steps of each compute node searching its own memory image for checksum matches uses an rsync protocol in a rolling checksum algorithm.  
   
   
       3 . The computer implemented method of  claim 2  further comprising each node performing the steps of: 
 a) producing a template of new data blocks with checksums that didn't exist in the previous checkpoint; and    b) producing a template of references to the original data blocks that did exist in the previous checkpoint.    
   
   
       4 . The computer implemented method of  claim 3  further comprising each node performing the steps of: 
 a) sending its new data block checksum template to an adjacent node in the cluster of nodes;    b) comparing checksums to find common data blocks between all adjacent nodes as well as its own data blocks; and    c) informing adjacent nodes to replace a reference to a common data block with a reference to a data block on another node.    
   
   
       5 . The computer implemented method of  claim 4  further comprising the steps of: 
 a) collecting reference templates from the compute nodes and storing them in the checkpoint server; and    b) collecting new unique data blocks and storing them to the checkpoint server.    
   
   
       6 . The computer implemented method of  claim 5  wherein the step of storing the data blocks stores the data on auxiliary storage servers instead of the checkpoint server.  
   
   
       7 . The computer implemented method of  claim 5  wherein the step of storing the data blocks stores uses the I/O nodes to store the data to unique storage servers over network lines to the I/O nodes rather than funneling the data through a network line to the checkpoint server.  
   
   
       8 . The computer implemented method of  claim 5  further comprising the step of sharing a subset of the reference template from a first application to a second application.  
   
   
       9 . A computer implemented method for restoring a memory of a parallel computer system with a stored checkpoint comprising the steps of: 
 a) a checkpoint server sends a reference template of data block checksums from a previous checkpoint to a plurality of compute nodes in a cluster;    b) the checkpoint server broadcasts data block to the nodes;    c) each node copies broadcast data according to its own template of data block checksums; and    d) the checkpoint server broadcasts a start message.    
   
   
       10 . A computer implemented method for checkpointing a parallel computer system comprising the steps of: 
 a) a checkpoint server broadcasting a template of data block checksums from a previous checkpoint to all compute nodes arranged in a cluster; and    b) each compute node searching its own memory image for checksum matches using an rsync protocol in a rolling checksum algorithm;    c) each node performing the steps of: 
 c1) producing a template of new data blocks with checksums that didn't exist in the previous checkpoint;  
 c2) producing a template of references to the original data blocks that did exist in the previous checkpoint  
 c3) sending its new data block checksum template to an adjacent node in the cluster of nodes;  
 c4) comparing checksums to find common data blocks between all adjacent nodes as well as its own data blocks; and  
 c5) informing adjacent nodes to replace a reference to a common data block with a reference to a data block on another node;  
   d) collecting reference templates from the compute nodes and storing them in the checkpoint server;    e) collecting new unique data blocks and storing them to the checkpoint server; and    f) sharing a subset of the reference template from a first application to a second application.

Join the waitlist — get patent alerts

Track US2008092030A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.