Just_For_PLC_Test / src /misc /step_tracker.py
Aeonicc's picture
Initial commit for brand new AnySplat ZeroGPU Space (part 4)
8e540bb verified
Raw History Blame Contribute Delete
559 Bytes
from multiprocessing import RLock
import torch
from jaxtyping import Int64
from torch import Tensor
from torch.multiprocessing import Manager
class StepTracker:
lock: RLock
step: Int64[Tensor, ""]
def __init__(self):
self.lock = Manager().RLock()
self.step = torch.tensor(0, dtype=torch.int64).share_memory_()
def set_step(self, step: int) -> None:
with self.lock:
self.step.fill_(step)
def get_step(self) -> int:
with self.lock:
return self.step.item()