def main(): args = get_parser() os.environ["CUDA_VISIBLE_DEVICES"] = ','.join( str(x) for x in args.train_gpu) if args.manual_seed is not None: random.seed(args.manual_seed) np.random.seed(args.manual_seed) torch.manual_seed(args.manual_seed) torch.cuda.manual_seed(args.manual_seed) torch.cuda.manual_seed_all(args.manual_seed) cudnn.benchmark = False cudnn.deterministic = True if args.dist_url == "env://" and args.world_size == -1: args.world_size = int(os.environ["WORLD_SIZE"]) args.distributed = args.world_size > 1 or args.multiprocessing_distributed args.ngpus_per_node = len(args.train_gpu) if len(args.train_gpu) == 1: args.sync_bn = False args.distributed = False args.multiprocessing_distributed = False if args.multiprocessing_distributed: port = find_free_port() args.dist_url = f"tcp://127.0.0.1:{port}" args.world_size = args.ngpus_per_node * args.world_size mp.spawn(main_worker, nprocs=args.ngpus_per_node, args=(args.ngpus_per_node, args)) else: main_worker(args.train_gpu, args.ngpus_per_node, args)
def main(): args = get_parser() if args.test_in_nyu_label_space: args.colors_path = 'nyu/nyu_colors.txt' args.names_path = 'nyu/nyu_names.txt' args.classes = 41 if args.if_cluster: args.data_root = args.data_root_cluster args.project_path = args.project_path_cluster args.data_config_path = 'data' for key in [ 'train_list', 'val_list', 'test_list', 'colors_path', 'names_path' ]: args[key] = os.path.join(args.data_config_path, args[key]) for key in ['save_path', 'model_path', 'save_folder']: args[key] = os.path.join(args.project_path, args[key]) for key in ['save_path']: args[key] = args[key] % args.exp_name check(args) os.environ["CUDA_VISIBLE_DEVICES"] = ','.join( str(x) for x in args.train_gpu) if args.manual_seed is not None: random.seed(args.manual_seed) np.random.seed(args.manual_seed) torch.manual_seed(args.manual_seed) torch.cuda.manual_seed(args.manual_seed) torch.cuda.manual_seed_all(args.manual_seed) cudnn.benchmark = False cudnn.deterministic = True if args.dist_url == "env://" and args.world_size == -1: args.world_size = int(os.environ["WORLD_SIZE"]) args.distributed = args.world_size > 1 or args.multiprocessing_distributed args.ngpus_per_node = len(args.train_gpu) if len(args.train_gpu) == 1: args.sync_bn = False args.distributed = False args.multiprocessing_distributed = False if args.multiprocessing_distributed: port = find_free_port() args.dist_url = f"tcp://127.0.0.1:{port}" args.world_size = args.ngpus_per_node * args.world_size mp.spawn(main_worker, nprocs=args.ngpus_per_node, args=(args.ngpus_per_node, args)) else: main_worker(args.train_gpu, args.ngpus_per_node, args)
if __name__ == "__main__": args = get_parser() args.gpu = [int(i) for i in os.environ['CUDA_VISIBLE_DEVICES'].split(',')] if args.manual_seed is not None: random.seed(args.manual_seed) np.random.seed(args.manual_seed) torch.manual_seed(args.manual_seed) torch.cuda.manual_seed(args.manual_seed) torch.cuda.manual_seed_all(args.manual_seed) cudnn.benchmark = False cudnn.deterministic = True if args.dist_url == "env://" and args.world_size == -1: args.world_size = int(os.environ["WORLD_SIZE"]) args.distributed = args.world_size > 1 or args.multiprocessing_distributed args.ngpus_per_node = len(args.gpu) if len(args.gpu) == 1: args.sync_bn = False args.distributed = False args.multiprocessing_distributed = False if args.multiprocessing_distributed: port = find_free_port() args.dist_url = f"tcp://127.0.0.1:{port}" args.world_size = args.ngpus_per_node * args.world_size mp.spawn(main_worker, nprocs=args.ngpus_per_node, args=(args.ngpus_per_node, args)) else: main_worker(args.gpu, args.ngpus_per_node, args)