backwards() does not update the parameters. Instead, an optimizer will take the gradient, apply the learning rate, and then update the parameters with it. Check out SGD for example.
grad will be available on parameters too. If you don’t need the gradient on x, you should set requires_grad=False.