中文

无需用户注解的任意程序的二项检查点

编程语言 2016-11-11 v1 机器学习 数学软件

摘要

迄今为止,为了在反向模式下降低空间复杂度,在过程调用边界的自动检查点已由Tapenade等系统提供。然而,二项检查点(binomial checkpointing,或称treeverse)仅在自动微分(AD)系统的特殊情况中提供,例如通过Tapenade中对DO循环的用户提供的编译指示,或作为adol-c中用于时间积分过程的嵌套磁带机制,这要求用户代码被重构。我们提出了一个将二项检查点应用于任意代码的框架,无需特殊注解或重构。这是通过将二项检查点直接应用于程序迹来实现的。该迹由与AD正交的通用检查点机制产生。

关键词

引用

@article{arxiv.1611.03410,
  title  = {Binomial Checkpointing for Arbitrary Programs with No User Annotation},
  author = {Jeffrey Mark Siskind and Barak A. Pearlmutter},
  journal= {arXiv preprint arXiv:1611.03410},
  year   = {2016}
}

备注

Extended abstract presented at the AD 2016 Conference, Sep 2016, Oxford UK