if you use inplace operations on the input Variable, then the output will share the same storage. in-place operations are postfixed with an _ symbol. For example: x.add_(y) (inplace) and x.add(y) (out-of-place)