Research Article

SPOT: A DSL for Extending Fortran Programs with Metaprogramming

Algorithm 12

Supplementary constructs for SPOT.
        New Constructs for the Domain of Checkpointing
StartCheckpointing (<location>, <statement>){<actions> or <parameters>} 
StartInitializing  (<location>, <statement>){<actions> or <parameters>}
Actions:
CKPSaveInteger (<variable name>)
CKPSaveIntegerArray1D (<variable name>, <index>)
CKPSaveIntegerArray2D (<variable name>, <row number>, <column number>)
CKPSaveAll ()
CKPReadInteger (<variable name >)
CKPReadIntegerArray1D (<variable name>, <index>)
CKPReadIntegerArray2D (<variable name>, <row number>, <column number>)
CKPReadAll ()
Parameters:
CKPFrequencey (<number>)
CKPType (<Checkpointing Type>)