diff --git a/transformer_engine/pytorch/module/base.py b/transformer_engine/pytorch/module/base.py index e9a65c3648..59a4d7e08a 100644 --- a/transformer_engine/pytorch/module/base.py +++ b/transformer_engine/pytorch/module/base.py @@ -1961,7 +1961,7 @@ def backward_dw(self): if not self.fuse_wgrad_accumulation: weight_tensor = noop_cat(self._get_weight_tensors()) weight_tensor.grad = wgrad.to(weight_tensor.dtype) - if self.use_bias: + if self.use_bias and bgrad is not None and bgrad.numel() != 0: bias_tensor = noop_cat([getattr(self, name) for name in self.bias_names]) if bias_tensor.grad is None: bias_tensor.grad = bgrad.to(bias_tensor.dtype)