From 74824fdd7012a2fa0ab2a84eb1abbad3288796f3 Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Sun, 25 Apr 2021 14:25:59 +0800 Subject: [PATCH] add clearGradient for amp sample code (#32517) --- paddle/fluid/imperative/layer.cc | 1 + python/paddle/amp/grad_scaler.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/paddle/fluid/imperative/layer.cc b/paddle/fluid/imperative/layer.cc index 70359dc3fd2..a4af3117d3e 100644 --- a/paddle/fluid/imperative/layer.cc +++ b/paddle/fluid/imperative/layer.cc @@ -187,6 +187,7 @@ size_t VarBase::GradOpNum() const { } void VarBase::ClearGradient() { + VLOG(4) << "ClearGradient " << Name(); if (grad_var_) { if (grad_var_->Var().IsType()) { auto* grad_t = diff --git a/python/paddle/amp/grad_scaler.py b/python/paddle/amp/grad_scaler.py index 64b34ce8345..72a67a92c49 100644 --- a/python/paddle/amp/grad_scaler.py +++ b/python/paddle/amp/grad_scaler.py @@ -62,6 +62,7 @@ class GradScaler(AmpScaler): scaled = scaler.scale(loss) # scale the loss scaled.backward() # do backward scaler.minimize(optimizer, scaled) # update parameters + optimizer.clear_grad() """ def __init__(self, @@ -105,6 +106,7 @@ class GradScaler(AmpScaler): scaled = scaler.scale(loss) # scale the loss scaled.backward() # do backward scaler.minimize(optimizer, scaled) # update parameters + optimizer.clear_grad() """ return super(GradScaler, self).scale(var) @@ -140,5 +142,6 @@ class GradScaler(AmpScaler): scaled = scaler.scale(loss) # scale the loss scaled.backward() # do backward scaler.minimize(optimizer, scaled) # update parameters + optimizer.clear_grad() """ return super(GradScaler, self).minimize(optimizer, *args, **kwargs) -- GitLab