Traditional reverse-mode differentiation records a tape (also known as a Wengert list) describing the order in which operations were originally executed; <中略> An added benefit of structuring graphs this way is that when a portion of the graph becomes dead, it is automatically freed; an important consideration when we want to free large memory chunks as quickly as possible. Zygote.jl, Tensorflow などは Wengert List を使っている. 計算グラフ vs Wengert List 2.3 自動微分 ─式からアルゴリズムへ [1] Paszke, A., Gross, S., Chintala, S., Chanan, G., Yang, E., DeVito, Z., Lin, Z., Desmaison, A., Antiga, L. & Lerer, A. (2017). Automatic Differentiation in PyTorch. NIPS 2017 Workshop on Autodiff, . [2] 計算グラフとメモリの解放周辺で、Chainer の Aggressive Buffer Release という仕組みがとても面白いです: Aggressive buffer release #2368 102 / 142