Spaces:
Running
on
Zero
Running
on
Zero
""" | |
Environment Utils | |
Author: Xiaoyang Wu (xiaoyang.wu.cs@gmail.com) | |
Please cite our work if the code is helpful to you. | |
""" | |
import os | |
import random | |
import numpy as np | |
import torch | |
import torch.backends.cudnn as cudnn | |
from datetime import datetime | |
def get_random_seed(): | |
seed = ( | |
os.getpid() | |
+ int(datetime.now().strftime("%S%f")) | |
+ int.from_bytes(os.urandom(2), "big") | |
) | |
return seed | |
def set_seed(seed=None): | |
if seed is None: | |
seed = get_random_seed() | |
random.seed(seed) | |
np.random.seed(seed) | |
torch.manual_seed(seed) | |
torch.cuda.manual_seed(seed) | |
torch.cuda.manual_seed_all(seed) | |
cudnn.benchmark = False | |
cudnn.deterministic = True | |
os.environ["PYTHONHASHSEED"] = str(seed) | |