"lib/engines/mistralrs/src/lib.rs" did not exist on "fd95f37b7f29a4db1dcd68b328528bcc519de2d0"
Commit 41b18fd8 authored by zhe chen's avatar zhe chen
Browse files

Use pre-commit to reformat code


Use pre-commit to reformat code
parent ff20ea39
...@@ -17,4 +17,4 @@ ...@@ -17,4 +17,4 @@
"steps_per_print": "inf", "steps_per_print": "inf",
"train_batch_size": "auto", "train_batch_size": "auto",
"train_micro_batch_size_per_gpu": "auto" "train_micro_batch_size_per_gpu": "auto"
} }
\ No newline at end of file
...@@ -18,4 +18,4 @@ ...@@ -18,4 +18,4 @@
"steps_per_print": "inf", "steps_per_print": "inf",
"train_batch_size": "auto", "train_batch_size": "auto",
"train_micro_batch_size_per_gpu": "auto" "train_micro_batch_size_per_gpu": "auto"
} }
\ No newline at end of file
...@@ -10,4 +10,4 @@ main_training_function: main ...@@ -10,4 +10,4 @@ main_training_function: main
mixed_precision: 'fp16' mixed_precision: 'fp16'
num_machines: 1 num_machines: 1
num_processes: 8 num_processes: 8
use_cpu: false use_cpu: false
\ No newline at end of file
...@@ -9,4 +9,4 @@ main_training_function: main ...@@ -9,4 +9,4 @@ main_training_function: main
num_machines: 1 num_machines: 1
num_processes: 8 num_processes: 8
rdzv_backend: static rdzv_backend: static
use_cpu: false use_cpu: false
\ No newline at end of file
...@@ -9,4 +9,4 @@ main_training_function: main ...@@ -9,4 +9,4 @@ main_training_function: main
num_machines: 1 num_machines: 1
num_processes: 8 num_processes: 8
rdzv_backend: static rdzv_backend: static
use_cpu: false use_cpu: false
\ No newline at end of file
...@@ -9,4 +9,4 @@ main_training_function: main ...@@ -9,4 +9,4 @@ main_training_function: main
num_machines: 1 num_machines: 1
num_processes: 8 num_processes: 8
rdzv_backend: static rdzv_backend: static
use_cpu: false use_cpu: false
\ No newline at end of file
...@@ -9,4 +9,4 @@ main_training_function: main ...@@ -9,4 +9,4 @@ main_training_function: main
num_machines: 1 num_machines: 1
num_processes: 8 num_processes: 8
rdzv_backend: static rdzv_backend: static
use_cpu: false use_cpu: false
\ No newline at end of file
...@@ -16,4 +16,4 @@ TRAIN: ...@@ -16,4 +16,4 @@ TRAIN:
EMA: EMA:
ENABLE: True ENABLE: True
DECAY: 0.9999 DECAY: 0.9999
BASE_LR: 5e-4 BASE_LR: 5e-4
\ No newline at end of file
...@@ -39,4 +39,4 @@ TRAIN: ...@@ -39,4 +39,4 @@ TRAIN:
OPTIMIZER: OPTIMIZER:
DCN_LR_MUL: 0.1 DCN_LR_MUL: 0.1
AMP_OPT_LEVEL: O0 AMP_OPT_LEVEL: O0
EVAL_FREQ: 1 EVAL_FREQ: 1
\ No newline at end of file
...@@ -40,4 +40,4 @@ TRAIN: ...@@ -40,4 +40,4 @@ TRAIN:
OPTIMIZER: OPTIMIZER:
DCN_LR_MUL: 0.1 DCN_LR_MUL: 0.1
AMP_OPT_LEVEL: O0 AMP_OPT_LEVEL: O0
EVAL_FREQ: 1 EVAL_FREQ: 1
\ No newline at end of file
...@@ -41,4 +41,4 @@ TRAIN: ...@@ -41,4 +41,4 @@ TRAIN:
USE_ZERO: True USE_ZERO: True
DCN_LR_MUL: 0.1 DCN_LR_MUL: 0.1
AMP_OPT_LEVEL: O0 AMP_OPT_LEVEL: O0
EVAL_FREQ: 1 EVAL_FREQ: 1
\ No newline at end of file
...@@ -34,4 +34,4 @@ TRAIN: ...@@ -34,4 +34,4 @@ TRAIN:
OPTIMIZER: OPTIMIZER:
DCN_LR_MUL: 0.1 DCN_LR_MUL: 0.1
AMP_OPT_LEVEL: O0 AMP_OPT_LEVEL: O0
EVAL_FREQ: 1 EVAL_FREQ: 1
\ No newline at end of file
...@@ -16,4 +16,4 @@ TRAIN: ...@@ -16,4 +16,4 @@ TRAIN:
EMA: EMA:
ENABLE: True ENABLE: True
DECAY: 0.9999 DECAY: 0.9999
BASE_LR: 5e-4 BASE_LR: 5e-4
\ No newline at end of file
...@@ -37,4 +37,4 @@ TRAIN: ...@@ -37,4 +37,4 @@ TRAIN:
OPTIMIZER: OPTIMIZER:
DCN_LR_MUL: 0.1 DCN_LR_MUL: 0.1
AMP_OPT_LEVEL: O0 AMP_OPT_LEVEL: O0
EVAL_FREQ: 1 EVAL_FREQ: 1
\ No newline at end of file
...@@ -39,4 +39,4 @@ TRAIN: ...@@ -39,4 +39,4 @@ TRAIN:
USE_ZERO: True USE_ZERO: True
DCN_LR_MUL: 0.1 DCN_LR_MUL: 0.1
AMP_OPT_LEVEL: O0 AMP_OPT_LEVEL: O0
EVAL_FREQ: 1 EVAL_FREQ: 1
\ No newline at end of file
...@@ -32,4 +32,4 @@ TRAIN: ...@@ -32,4 +32,4 @@ TRAIN:
OPTIMIZER: OPTIMIZER:
DCN_LR_MUL: 0.1 DCN_LR_MUL: 0.1
AMP_OPT_LEVEL: O0 AMP_OPT_LEVEL: O0
EVAL_FREQ: 1 EVAL_FREQ: 1
\ No newline at end of file
...@@ -4,4 +4,4 @@ ...@@ -4,4 +4,4 @@
# Licensed under The MIT License [see LICENSE for details] # Licensed under The MIT License [see LICENSE for details]
# -------------------------------------------------------- # --------------------------------------------------------
from .build import build_loader, build_loader2 from .build import build_loader, build_loader2
\ No newline at end of file
...@@ -5,14 +5,15 @@ ...@@ -5,14 +5,15 @@
# -------------------------------------------------------- # --------------------------------------------------------
import os import os
import torch
import numpy as np import numpy as np
import torch
import torch.distributed as dist import torch.distributed as dist
from timm.data import Mixup, create_transform
from torchvision import transforms from torchvision import transforms
from timm.data import Mixup
from timm.data import create_transform
from .cached_image_folder import ImageCephDataset from .cached_image_folder import ImageCephDataset
from .samplers import SubsetRandomSampler, NodeDistributedSampler from .samplers import NodeDistributedSampler, SubsetRandomSampler
try: try:
from torchvision.transforms import InterpolationMode from torchvision.transforms import InterpolationMode
...@@ -50,7 +51,7 @@ class TTA(torch.nn.Module): ...@@ -50,7 +51,7 @@ class TTA(torch.nn.Module):
return out return out
def __repr__(self) -> str: def __repr__(self) -> str:
return f"{self.__class__.__name__}(size={self.size}, scale={self.scales})" return f'{self.__class__.__name__}(size={self.size}, scale={self.scales})'
def build_loader(config): def build_loader(config):
...@@ -58,16 +59,16 @@ def build_loader(config): ...@@ -58,16 +59,16 @@ def build_loader(config):
dataset_train, config.MODEL.NUM_CLASSES = build_dataset('train', dataset_train, config.MODEL.NUM_CLASSES = build_dataset('train',
config=config) config=config)
config.freeze() config.freeze()
print(f"local rank {config.LOCAL_RANK} / global rank {dist.get_rank()}" print(f'local rank {config.LOCAL_RANK} / global rank {dist.get_rank()}'
"successfully build train dataset") 'successfully build train dataset')
dataset_val, _ = build_dataset('val', config=config) dataset_val, _ = build_dataset('val', config=config)
print(f"local rank {config.LOCAL_RANK} / global rank {dist.get_rank()}" print(f'local rank {config.LOCAL_RANK} / global rank {dist.get_rank()}'
"successfully build val dataset") 'successfully build val dataset')
dataset_test, _ = build_dataset('test', config=config) dataset_test, _ = build_dataset('test', config=config)
print(f"local rank {config.LOCAL_RANK} / global rank {dist.get_rank()}" print(f'local rank {config.LOCAL_RANK} / global rank {dist.get_rank()}'
"successfully build test dataset") 'successfully build test dataset')
num_tasks = dist.get_world_size() num_tasks = dist.get_world_size()
global_rank = dist.get_rank() global_rank = dist.get_rank()
......
...@@ -5,22 +5,24 @@ ...@@ -5,22 +5,24 @@
# -------------------------------------------------------- # --------------------------------------------------------
import io import io
import json
import logging
import math
import os import os
import os.path as osp
import re import re
import time import time
import json from abc import abstractmethod
import math
import mmcv import mmcv
import torch import torch
import logging
import os.path as osp
from PIL import Image
from tqdm import tqdm, trange
from abc import abstractmethod
import torch.utils.data as data
import torch.distributed as dist import torch.distributed as dist
import torch.utils.data as data
from mmcv.fileio import FileClient from mmcv.fileio import FileClient
from .zipreader import is_zip_path, ZipReader from PIL import Image
from tqdm import tqdm, trange
from .zipreader import ZipReader, is_zip_path
_logger = logging.getLogger(__name__) _logger = logging.getLogger(__name__)
...@@ -66,7 +68,7 @@ def make_dataset(dir, class_to_idx, extensions): ...@@ -66,7 +68,7 @@ def make_dataset(dir, class_to_idx, extensions):
def make_dataset_with_ann(ann_file, img_prefix, extensions): def make_dataset_with_ann(ann_file, img_prefix, extensions):
images = [] images = []
with open(ann_file, "r") as f: with open(ann_file, 'r') as f:
contents = f.readlines() contents = f.readlines()
for line_str in contents: for line_str in contents:
path_contents = [c for c in line_str.split('\t')] path_contents = [c for c in line_str.split('\t')]
...@@ -108,7 +110,7 @@ class DatasetFolder(data.Dataset): ...@@ -108,7 +110,7 @@ class DatasetFolder(data.Dataset):
img_prefix='', img_prefix='',
transform=None, transform=None,
target_transform=None, target_transform=None,
cache_mode="no"): cache_mode='no'):
# image folder mode # image folder mode
if ann_file == '': if ann_file == '':
_, class_to_idx = find_classes(root) _, class_to_idx = find_classes(root)
...@@ -120,9 +122,9 @@ class DatasetFolder(data.Dataset): ...@@ -120,9 +122,9 @@ class DatasetFolder(data.Dataset):
extensions) extensions)
if len(samples) == 0: if len(samples) == 0:
raise (RuntimeError("Found 0 files in subfolders of: " + root + raise (RuntimeError('Found 0 files in subfolders of: ' + root +
"\n" + "Supported extensions are: " + '\n' + 'Supported extensions are: ' +
",".join(extensions))) ','.join(extensions)))
self.root = root self.root = root
self.loader = loader self.loader = loader
...@@ -136,11 +138,11 @@ class DatasetFolder(data.Dataset): ...@@ -136,11 +138,11 @@ class DatasetFolder(data.Dataset):
self.target_transform = target_transform self.target_transform = target_transform
self.cache_mode = cache_mode self.cache_mode = cache_mode
if self.cache_mode != "no": if self.cache_mode != 'no':
self.init_cache() self.init_cache()
def init_cache(self): def init_cache(self):
assert self.cache_mode in ["part", "full"] assert self.cache_mode in ['part', 'full']
n_sample = len(self.samples) n_sample = len(self.samples)
global_rank = dist.get_rank() global_rank = dist.get_rank()
world_size = dist.get_world_size() world_size = dist.get_world_size()
...@@ -155,9 +157,9 @@ class DatasetFolder(data.Dataset): ...@@ -155,9 +157,9 @@ class DatasetFolder(data.Dataset):
) )
start_time = time.time() start_time = time.time()
path, target = self.samples[index] path, target = self.samples[index]
if self.cache_mode == "full": if self.cache_mode == 'full':
samples_bytes[index] = (ZipReader.read(path), target) samples_bytes[index] = (ZipReader.read(path), target)
elif self.cache_mode == "part" and index % world_size == global_rank: elif self.cache_mode == 'part' and index % world_size == global_rank:
samples_bytes[index] = (ZipReader.read(path), target) samples_bytes[index] = (ZipReader.read(path), target)
else: else:
samples_bytes[index] = (path, target) samples_bytes[index] = (path, target)
...@@ -260,7 +262,7 @@ class CachedImageFolder(DatasetFolder): ...@@ -260,7 +262,7 @@ class CachedImageFolder(DatasetFolder):
transform=None, transform=None,
target_transform=None, target_transform=None,
loader=default_img_loader, loader=default_img_loader,
cache_mode="no"): cache_mode='no'):
super(CachedImageFolder, super(CachedImageFolder,
self).__init__(root, self).__init__(root,
loader, loader,
...@@ -394,7 +396,7 @@ class ParserCephImage(Parser): ...@@ -394,7 +396,7 @@ class ParserCephImage(Parser):
local_size = int(os.environ.get('LOCAL_SIZE', 1)) local_size = int(os.environ.get('LOCAL_SIZE', 1))
self.local_rank = local_rank self.local_rank = local_rank
self.local_size = local_size self.local_size = local_size
self.rank = int(os.environ["RANK"]) self.rank = int(os.environ['RANK'])
self.world_size = int(os.environ['WORLD_SIZE']) self.world_size = int(os.environ['WORLD_SIZE'])
self.num_replicas = int(os.environ['WORLD_SIZE']) self.num_replicas = int(os.environ['WORLD_SIZE'])
self.num_parts = local_size self.num_parts = local_size
...@@ -405,7 +407,7 @@ class ParserCephImage(Parser): ...@@ -405,7 +407,7 @@ class ParserCephImage(Parser):
self.load_onto_memory_v2() self.load_onto_memory_v2()
def load_onto_memory(self): def load_onto_memory(self):
print("Loading images onto memory...", self.local_rank, print('Loading images onto memory...', self.local_rank,
self.local_size) self.local_size)
if self.file_client is None: if self.file_client is None:
self.file_client = FileClient(self.io_backend, **self.kwargs) self.file_client = FileClient(self.io_backend, **self.kwargs)
...@@ -417,7 +419,7 @@ class ParserCephImage(Parser): ...@@ -417,7 +419,7 @@ class ParserCephImage(Parser):
img_bytes = self.file_client.get(path) img_bytes = self.file_client.get(path)
self.holder[path] = img_bytes self.holder[path] = img_bytes
print("Loading complete!") print('Loading complete!')
def load_onto_memory_v2(self): def load_onto_memory_v2(self):
# print("Loading images onto memory...", self.local_rank, self.local_size) # print("Loading images onto memory...", self.local_rank, self.local_size)
...@@ -446,7 +448,7 @@ class ParserCephImage(Parser): ...@@ -446,7 +448,7 @@ class ParserCephImage(Parser):
self.holder[path] = img_bytes self.holder[path] = img_bytes
print("Loading complete!") print('Loading complete!')
def __getitem__(self, index): def __getitem__(self, index):
if self.file_client is None: if self.file_client is None:
......
...@@ -4,12 +4,13 @@ ...@@ -4,12 +4,13 @@
# Licensed under The MIT License [see LICENSE for details] # Licensed under The MIT License [see LICENSE for details]
# -------------------------------------------------------- # --------------------------------------------------------
import torch
import os
import math import math
from torch.utils.data.sampler import Sampler import os
import torch.distributed as dist
import numpy as np import numpy as np
import torch
import torch.distributed as dist
from torch.utils.data.sampler import Sampler
class SubsetRandomSampler(torch.utils.data.Sampler): class SubsetRandomSampler(torch.utils.data.Sampler):
...@@ -57,12 +58,12 @@ class NodeDistributedSampler(Sampler): ...@@ -57,12 +58,12 @@ class NodeDistributedSampler(Sampler):
if num_replicas is None: if num_replicas is None:
if not dist.is_available(): if not dist.is_available():
raise RuntimeError( raise RuntimeError(
"Requires distributed package to be available") 'Requires distributed package to be available')
num_replicas = dist.get_world_size() num_replicas = dist.get_world_size()
if rank is None: if rank is None:
if not dist.is_available(): if not dist.is_available():
raise RuntimeError( raise RuntimeError(
"Requires distributed package to be available") 'Requires distributed package to be available')
rank = dist.get_rank() rank = dist.get_rank()
if local_rank is None: if local_rank is None:
local_rank = int(os.environ.get('LOCAL_RANK', 0)) local_rank = int(os.environ.get('LOCAL_RANK', 0))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment