justheuristic 3 년 전
부모
커밋
b35b6f6d4c
1개의 변경된 파일6개의 추가작업 그리고 5개의 파일을 삭제
  1. 6 5
      hivemind/optim/grad_scaler.py

+ 6 - 5
hivemind/optim/grad_scaler.py

@@ -30,11 +30,12 @@ class GradScaler(TorchGradScaler):
 
     @contextlib.contextmanager
     def running_global_step(self):
-        was_running, self._is_running_global_step = self._is_running_global_step, True
-        try:
-            yield
-        finally:
-            self._is_running_global_step = was_running
+        with self._lock:
+            was_running, self._is_running_global_step = self._is_running_global_step, True
+            try:
+                yield
+            finally:
+                self._is_running_global_step = was_running
 
     def unscale_(self, optimizer: TorchOptimizer) -> bool:
         with self._lock: