unifiedefficientloader 0.2.0__tar.gz → 0.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/PKG-INFO +1 -1
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/pyproject.toml +1 -1
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader/memory_efficient_loader.py +24 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader.egg-info/PKG-INFO +1 -1
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/LICENSE +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/README.md +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/setup.cfg +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/setup.py +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/tests/test_utils.py +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader/__init__.py +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader/pinned_transfer.py +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader/tensor_utils.py +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader.egg-info/SOURCES.txt +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader.egg-info/dependency_links.txt +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader.egg-info/requires.txt +0 -0
- {unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: unifiedefficientloader
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: A unified interface for memory efficient per tensor loading of safetensors files as raw bytes from offset, handling CPU/GPU pinned transfers, and converting between tensors and dicts.
|
|
5
5
|
Author: silveroxides
|
|
6
6
|
License: MIT
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "unifiedefficientloader"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.1"
|
|
8
8
|
description = "A unified interface for memory efficient per tensor loading of safetensors files as raw bytes from offset, handling CPU/GPU pinned transfers, and converting between tensors and dicts."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [
|
|
@@ -244,6 +244,30 @@ class UnifiedSafetensorsLoader:
|
|
|
244
244
|
else:
|
|
245
245
|
raise ValueError(f"Unsupported float8 type: {dtype_str}")
|
|
246
246
|
|
|
247
|
+
|
|
248
|
+
def load_all(self):
|
|
249
|
+
"""Load all tensors as a dictionary.
|
|
250
|
+
|
|
251
|
+
In low-memory mode: uses async_stream for parallel multi-threaded I/O.
|
|
252
|
+
In standard mode: returns the preloaded tensor cache.
|
|
253
|
+
|
|
254
|
+
Returns:
|
|
255
|
+
Dict[str, torch.Tensor]: All tensors keyed by name.
|
|
256
|
+
"""
|
|
257
|
+
if not self.low_memory:
|
|
258
|
+
return dict(self._tensors)
|
|
259
|
+
|
|
260
|
+
sd = {}
|
|
261
|
+
for batch in self.async_stream(
|
|
262
|
+
keys=self._all_keys,
|
|
263
|
+
batch_size=16,
|
|
264
|
+
prefetch_batches=2,
|
|
265
|
+
pin_memory=False,
|
|
266
|
+
):
|
|
267
|
+
for key, tensor in batch:
|
|
268
|
+
sd[key] = tensor
|
|
269
|
+
return sd
|
|
270
|
+
|
|
247
271
|
def async_stream(self, keys: list, batch_size: int = 1, prefetch_batches: int = 2, pin_memory: bool = False):
|
|
248
272
|
"""Asynchronously stream tensors from disk.
|
|
249
273
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: unifiedefficientloader
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.1
|
|
4
4
|
Summary: A unified interface for memory efficient per tensor loading of safetensors files as raw bytes from offset, handling CPU/GPU pinned transfers, and converting between tensors and dicts.
|
|
5
5
|
Author: silveroxides
|
|
6
6
|
License: MIT
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{unifiedefficientloader-0.2.0 → unifiedefficientloader-0.2.1}/unifiedefficientloader/tensor_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|