摘要: OpenMP程序通过做检查点来实现容错,现有检查点方法未考虑活跃变量的语义,通过原始值拷贝来保存活跃变量,存在检查点保存量过大的问题。对此提出数组活跃变量检查点优化算法。该算法基于程序分析,处理隐式定值和隐式引用,运用活跃变量分析法得出数组元素中的活跃变量,在适当的情况下采用由下标和数组首地址构成的表达式来表达数组元素,省略其原始值在检查点中的保存,从而减少检查点的数据保存量,达到降低检查点开销的目的。实验表明,该算法可以减少检查点的数据保存量,降低数组元素的数据保存量,达到降低检查点开销的目的,并且消除隐式定值和隐式引用带来的一些不良影响。