Spec-Zone.ru › PyTorch 2.14

torch.from_file

torch.from_file(filename, shared=None, size=0, *, dtype=None, layout=None, device=None, pin_memory=False)

Создает тензор на CPU, хранилище которого связано с файлом, отображенным в память.

Если shared имеет значение True, память является общей для процессов. Все изменения записываются в файл. Если shared имеет значение False, изменения тензора не влияют на файл.

size — это количество элементов в тензоре. Если shared имеет значение False, файл должен содержать не менее size * sizeof(dtype) байт. Если shared имеет значение True, файл будет создан при необходимости.

Примечание

С файлами можно сопоставлять только тензоры на CPU.

Примечание

В настоящее время тензоры с хранилищами, связанными с файлом, отображенным в память, нельзя создавать в закрепленной памяти.

Параметры:
  • filename (str) – имя файла для сопоставления
  • shared (bool) – использовать ли общую память (передается ли MAP_SHARED или MAP_PRIVATE в лежащий в основе вызов mmap(2))
  • size (int) – количество элементов в тензоре
Именованные аргументы:
  • dtype (torch.dtype, необязательный) – требуемый тип данных возвращаемого тензора. По умолчанию: если None, используется глобальное значение по умолчанию (см. torch.set_default_dtype()).
  • layout (torch.layout, необязательный) – требуемый формат возвращаемого тензора. По умолчанию: torch.strided.
  • device (torch.device, необязательный) – требуемое устройство для возвращаемого тензора. По умолчанию: если None, используется текущее устройство для типа тензора по умолчанию (см. torch.set_default_device()). device будет CPU для типов тензоров CPU и текущим устройством CUDA для типов тензоров CUDA.
  • pin_memory (bool, необязательный) – если задано, возвращаемый тензор будет размещен в закрепленной памяти. Работает только для тензоров CPU. По умолчанию: False.

Пример:

>>> t = torch.randn(2, 5, dtype=torch.float64)
>>> t.numpy().tofile('storage.pt')
>>> t_mapped = torch.from_file('storage.pt', shared=False, size=10, dtype=torch.float64)

© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.from_file.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API