The code segment above shows a forward and a backward with a mul_ inplace operation.We can see before inplace op, c1 is [3,6,9], and after inplace op, c2 is [6, 24, 54].when backward is triggered,
how the MulBackward0 func to compute grad for c1, however now c1 has been changed to c2. If MulBackward0 func use the c2 value to compute grad for b, then the result will not be [5, 10, 15] shown above,otherwise there is some reserved mechanism for original c1? please give some ideas.