Skip to content
Snippets Groups Projects
Commit 143a8372 authored by Kai Chen's avatar Kai Chen
Browse files

bug fix for all_reduce when coalesce is False

parent df14830a
No related branches found
No related tags found
No related merge requests found
......@@ -47,11 +47,12 @@ def all_reduce_coalesced(tensors):
buckets[tp] = []
buckets[tp].append(tensor)
world_size = dist.get_world_size()
for tp in buckets:
bucket = buckets[tp]
coalesced = _flatten_dense_tensors(bucket)
dist.all_reduce(coalesced)
coalesced /= dist.get_world_size()
coalesced.div_(world_size)
for buf, synced in zip(bucket,
_unflatten_dense_tensors(coalesced, bucket)):
......@@ -66,8 +67,9 @@ def reduce_grads(model, coalesce=True):
if coalesce:
all_reduce_coalesced(grads)
else:
world_size = dist.get_world_size()
for tensor in grads:
dist.all_reduce(tensor)
dist.all_reduce(tensor.div_(world_size))
class DistOptimizerHook(OptimizerHook):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment