torch.cuda.comm.scatter
-
torch.cuda.comm.scatter(tensor, devices=None, chunk_sizes=None, dim=0, streams=None, *, out=None)[source] -
Разделение тензора по нескольким GPU.
- Параметры:
-
- tensor (Тензор) – тензор для разделения. Может находиться на процессоре или GPU.
- devices (Iterable[torch.device, str или int], необязательно) – итерируемый набор устройств GPU, на которых необходимо выполнить разделение.
-
chunk_sizes (Iterable[int], необязательно) – размеры фрагментов, которые будут размещены на каждом устройстве. Длина должна соответствовать
devices, а сумма размеров равнаtensor.size(dim). Если не указано, тоtensorбудет разделен на равные фрагменты. -
dim (int, необязательно) – размерность, по которой разбить
tensor. Значение по умолчанию:0. - streams (Iterable[Поток], необязательно) – итерируемый набор потоков, в рамках которых выполняется разделение. Если не указано, используется пото́к по умолчанию.
-
out (Sequence[Тензор], необязательно, только ключевое слово) – тензоры GPU для хранения результатов. Размеры этих тензоров должны соответствовать
tensor, за исключениемdim, где общий размер должен быть равенtensor.size(dim).
Примечание
Должен быть указан ровно один из
devicesиout. При указанииout,chunk_sizesне должен быть указан и будет выведен из размеровout.- Возвращает:
-
-
-
If devices is specified, -
кортеж, содержащий фрагменты
tensor, размещённые наdevices.
-
-
-
If out is specified, -
кортеж, содержащий тензоры
out, каждый из которых содержит фрагментtensor.
-
-
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/1.13/generated/torch.cuda.comm.scatter.html