Based on the official tutorial, during prediction (after training and evaluation phase), we are supposed to do something like
model.eval()
with torch.no_grad():
    # run prediction

But let’s assume that we want to use state_dict extracted from trained model.
In this case, we usually do
model.load_state_dict(torch.load('path/to/state_dict'))
model.to(device)
model.eval()
with torch.no_grad():
  # run prediction

My question is, if there is no need for further training, is it possible to set requires_grad=False to all layers in model and run prediction without torch.no_grad(), or will there be any difference?
model.load_state_dict(torch.load('path/to/state_dict'))
for param in mode.parameters():
    param.requires_grad = False
model.to(device)
model.eval()
# run prediction