本教程提供了可逆计算的概念的介绍,采用了扩展的视图:除了快速概述传统的能量动机硬件观点外,它还提供了一种新兴应用程序动机软件方法的深度覆盖,以进行可逆计算。这对于理解可逆计算的不同新颖方法很有用,在大规模计算(例如设想的EXA级发展)中提供了当前方法的潜力。在未来的非常大规模的超级计算中,在容错,调试和同步的背景下说明了通用可逆计算对未来并行处理的重要性。教程涵盖了理论,硬件和软件方面,显着的基本限制,复杂性分析,算法和自动化方法,以进行可逆计算。范式将介绍用于放宽可逆编程的常规远期编程,包括用于低功率计算的“ Compute-Copy-copy-copy-nodympute”和“ Compute-Rollback-Commit”范式,分别为低功率计算和乐观的并行同步。将提出实用算法,以用于可逆性,例如动态内存分配和从复杂分布中生成随机数。将显示最新结果,以表明通过依赖软件级可逆计算而不是检查检查点来克服某些应用程序中的存储墙的可能性。教程大纲将阐明新的可逆编程语言设计的概念,并且将通过对C语言的初步案例研究来描述现有程序可逆执行的当前汇编方法。在更广泛地采用可逆计算中,将在并行处理(包括可逆的计算机算术和输入/输出接口)中确定出色的挑战,并为此提供了一些新颖的方向。
主要关键词