A layered approach to simulation checkpoints.
Publication Date: 2014-Nov-19
The IP.com Prior Art Database
A method for layering simulation checkpoints is disclosed.
Page 01 of 2
A layered approach to simulation checkpoints .
Disclosed is a method for layering simulation checkpoints.
A major advantage hardware simulations have over actual hardware is the ability to take and save a snapshot of the system in a given state and restore that state in a fast and reliable manner. The container of the persisted system is called a "checkpoint." A checkpoint persists the internal simulation state, the state of the object models and the binary data residing in simulated memory and simulated disks. Checkpoints are crucial elements used to debug complicated systems under simulation and are the primary vehicle for sharing simulation environments. Typically the binary data associated with a checkpoint is the largest consumer of host resources. Disclosed are methods for persisting multiple versions of binary data contained within a checkpoint.
A checkpoint serves as a container for multiple snapshots. Snapshots represent the state of the simulation at a given quantum allowing the user to either proceed with a simulation run or load a previously persisted snapshot. The first snapshot within a checkpoint serves as the root. Any snapshots created that originated from an existing snapshot generates a new branch in the tree. De-duplication methods are required for snapshots because they are effectively the layering of all data between the target snapshot and the root.
There are many different approaches to persisting simulation state across the hardware and software simulation spectrum, however existing strategies have been found to be specific to the type of simulation and the implementations of the hardware models. In addition, with respect to existing approaches, it is not clear that there is a focus on efficiency with respect to host resource usage and time taken to create and restore checkpoints of the simulated systems.
In the disclosed method, a content addressable storage (CAS) framework as depicted in Figure 1 is utilized because of its ability to provide efficient de-duplication. CAS systems are common and well defined, but an important feature is that each binary file is broken up into blocks and each block is assigned an ID that can only be stored once. Using CA...