MCPcopy Create free account
hub / github.com/OPPO-Mente-Lab/X2I / __init__

Method __init__

core/data/dataloader.py:77–102  ·  view source on GitHub ↗
(self, loader, preprocess: Preprocess=None, queue_max_size=2)

Source from the content-addressed store, hash-verified

75class _PreprocessSingleProcessDataLoaderIter(_BaseDataLoaderIter):
76
77 def __init__(self, loader, preprocess: Preprocess=None, queue_max_size=2):
78 self._preprocess = preprocess
79 if self._preprocess is not None and self._preprocess.has_cpu_preprocess():
80 org_create_fetcher = _DatasetKind.create_fetcher
81 _DatasetKind.create_fetcher = _create_fetcher_proxy(org_create_fetcher, self._preprocess)
82
83 super(_PreprocessSingleProcessDataLoaderIter, self).__init__(loader)
84
85 self._dataset_fetcher = _DatasetKind.create_fetcher(
86 self._dataset_kind, self._dataset, self._auto_collation, self._collate_fn, self._drop_last)
87
88 if self._preprocess is not None and self._preprocess.has_cpu_preprocess():
89 _DatasetKind.create_fetcher = org_create_fetcher
90
91 self._timeout = self._timeout if self._timeout > 0 else (12 * _utils.MP_STATUS_CHECK_INTERVAL)
92
93 if self._preprocess is not None and self._preprocess.has_gpu_preprocess():
94 self._stopped = False
95 self._stream = torch.cuda.Stream()
96 print(f"xxxxxx _PreprocessSingleProcessDataLoaderIter queue_max_size: {queue_max_size}")
97 self._data_queue = queue.Queue(maxsize=queue_max_size)
98 self._device_id = torch.cuda.current_device()
99 self._preprocess_thread_done_event = threading.Event()
100 self._preprocess_thread = threading.Thread(target=self._preprocess_loop)
101 self._preprocess_thread.daemon = True
102 self._preprocess_thread.start()
103
104 def _preprocess_loop(self):
105 # torch.set_num_threads(1)

Callers

nothing calls this directly

Calls 4

_create_fetcher_proxyFunction · 0.85
has_cpu_preprocessMethod · 0.80
__init__Method · 0.45
has_gpu_preprocessMethod · 0.45

Tested by

no test coverage detected