pytorch
2d67b76f - [static runtime] Add Alias analysis to Memory Management/Planning (#50060)

Commit
3 years ago
[static runtime] Add Alias analysis to Memory Management/Planning (#50060) Summary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/50060 Aliasing is currently mishandled in SR. This diff fixes that issue entirely and allows us to avoid hard coded "view" registration. I'll remove the macro in a follow up diff. However, this diff introduces a subtle assumption when memory optimization is turned on: operators cannot "sometimes alias." Some care will need to be taken to actually make sure this is enforced going forward. This diff ``` $ batch=20 ./run.sh --pt_optimize_memory=false |& grep "finished" C2 run finished. Milliseconds per iter: 0.512114. Iters per second: 1952.69 PyTorch run finished. Milliseconds per iter: 0.51176. Iters per second: 1954.04 $ batch=20 ./run.sh --pt_optimize_memory=true |& grep "finished" C2 run finished. Milliseconds per iter: 0.511402. Iters per second: 1955.41 PyTorch run finished. Milliseconds per iter: 0.506493. Iters per second: 1974.36 $ batch=1 iters=100000 ./run.sh --pt_optimize_memory=false |& grep "finished" C2 run finished. Milliseconds per iter: 0.0562877. Iters per second: 17765.9 PyTorch run finished. Milliseconds per iter: 0.0667712. Iters per second: 14976.5 $ batch=1 iters=100000 ./run.sh --pt_optimize_memory=true |& grep "finished" C2 run finished. Milliseconds per iter: 0.0561829. Iters per second: 17799 PyTorch run finished. Milliseconds per iter: 0.0665069. Iters per second: 15036 ``` Test Plan: buck test //caffe2/test:static_runtime buck test caffe2/benchmarks/static_runtime:static_runtime_cpptest Reviewed By: eellison Differential Revision: D25581156 fbshipit-source-id: 41e68119d53e687a9c32d966ed420b270aea4b5b
Author
Parents
Loading