MCPcopy Create free account
hub / github.com/modelscope/modelscope / _serialize_to_tensor

Function _serialize_to_tensor

modelscope/utils/torch_utils.py:275–288  ·  view source on GitHub ↗
(data, group)

Source from the content-addressed store, hash-verified

273
274
275def _serialize_to_tensor(data, group):
276 backend = dist.get_backend(group)
277 assert backend in ['gloo', 'nccl']
278 device = torch.device('cpu' if backend == 'gloo' else 'cuda')
279
280 buffer = pickle.dumps(data)
281 if len(buffer) > 1024**3:
282 logger.warning(
283 'Rank {} trying to all-gather {:.2f} GB of data on device {}'.
284 format(get_rank(),
285 len(buffer) / (1024**3), device))
286 storage = torch.ByteStorage.from_buffer(buffer)
287 tensor = torch.ByteTensor(storage).to(device=device)
288 return tensor
289
290
291def _pad_to_largest_tensor(tensor, group):

Callers 1

all_gatherFunction · 0.70

Calls 4

get_rankFunction · 0.70
deviceMethod · 0.45
dumpsMethod · 0.45
toMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…