MyModel(nn.Module):
...
@torch.cuda.amp.autocast()
def forward(self, input):
...
model = MyModel()
dp_model = nn.DataParallel(model)
with torch.cuda.amp.autocast(enable=False): # !5蘖8缛摇!3兆唷VА!E壮妗K擅摇!=ㄒ!岛马!
output = dp_model(input)
loss = loss_fn(output)
即使在外面使用了enable=False
, 如果model定義里面棉姐,只是在forward上面加@torch.cuda.amp.autocast()
; 還是會(huì)啟用。
default enable是true啦逆。 上層的with torch.cuda.amp.autocast(enable=False):
不能影響到@torch.cuda.amp.autocast()
;