Thanks for linking this! If I am understanding correctly, it looks like this library is using intermediate operations deliberately, which is good for some situations but not the memory-constrained case.  It does offer a bit more explanation than the pytorch documentation though