  The deployment and training of neural networks on edge computing devices pose
many challenges. The low memory nature of edge devices is often one of the
biggest limiting factors encountered in the deployment of large neural network
models. Tensor rematerialization or recompute is a way to address high memory
requirements for neural network training and inference. In this paper we
consider the problem of execution time minimization of compute graphs subject
to a memory budget. In particular, we develop a new constraint programming
formulation called \textsc{Moccasin} with only $O(n)$ integer variables, where
$n$ is the number of nodes in the compute graph. This is a significant
improvement over the works in the recent literature that propose formulations
with $O(n^2)$ Boolean variables. We present numerical studies that show that
our approach is up to an order of magnitude faster than recent work especially
for large-scale graphs.
