torch.Storage
torch.Storage является псевдонимом класса хранилища, соответствующего по умолчанию типу данных (torch.get_default_dtype()). Например, если тип данных по умолчанию — torch.float, то torch.Storage соответствует torch.FloatStorage.
Классы torch.<type>Storage и torch.cuda.<type>Storage, как torch.FloatStorage, torch.IntStorage и т. д., фактически никогда не создаются. Вызов их конструкторов создаёт torch.TypedStorage с соответствующим torch.dtype и torch.device. Классы torch.<type>Storage имеют все те же методы класса, что и torch.TypedStorage.
torch.TypedStorage представляет собой непрерывный одномерный массив элементов определённого torch.dtype. Ему можно задать любой torch.dtype, и внутренние данные будут интерпретироваться соответствующим образом. torch.TypedStorage содержит torch.UntypedStorage, который хранит данные как нетипизированный массив байтов.
В каждом torch.Tensor со строкой содержится torch.TypedStorage, хранящий все данные, к которым обращается torch.Tensor.
Предупреждение
Все классы хранилищ, кроме torch.UntypedStorage, будут удалены в будущем, и torch.UntypedStorage будет использоваться во всех случаях.
-
class torch.TypedStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source]
-
-
bfloat16()[source] -
Преобразует это хранилище к типу bfloat16
-
bool()[source] -
Преобразует это хранилище к типу bool
-
byte()[source] -
Преобразует это хранилище к типу byte
-
char()[source] -
Преобразует это хранилище к типу char
-
clone()[source] -
Возвращает копию этого хранилища
-
complex_double()[source] -
Преобразует это хранилище к типу комплексного double
-
complex_float()[source] -
Преобразует это хранилище к типу комплексного float
-
copy_(source, non_blocking=None)[source]
-
cpu()[source] -
Возвращает копию хранилища на CPU, если оно не находится на CPU
-
cuda(device=None, non_blocking=False, **kwargs)[source] -
Возвращает копию объекта в памяти CUDA.
Если объект уже находится в памяти CUDA и на правильном устройстве, то копия не выполняется, и возвращается исходный объект.
- Параметры
-
- device (int) – Идентификатор GPU назначения. По умолчанию — текущее устройство.
-
non_blocking (bool) – Если
Trueи источник находится в закрепленной памяти, то копия будет асинхронной относительно хоста. В противном случае аргумент не оказывает влияния. -
**kwargs – Для совместимости, может содержать ключ
asyncвместо аргументаnon_blocking.
- Тип возвращаемого значения
-
T
-
data_ptr()[source]
-
property device
-
double()[source] -
Преобразует это хранилище к типу double
-
dtype: dtype
-
element_size()[source]
-
fill_(value)[source]
-
float()[source] -
Преобразует это хранилище к типу float
-
classmethod from_buffer(*args, **kwargs)[source]
-
classmethod from_file(filename, shared=False, size=0) → Storage[source] -
Если
sharedравноTrue, то память разделятся между всеми процессами. Все изменения записываются в файл. ЕслиsharedравноFalse, то изменения в хранилище не влияют на файл.size— это количество элементов в хранилище. ЕслиsharedравноFalse, то файл должен содержать по крайней мереsize * sizeof(Type)байт (Type— это тип хранилища). ЕслиsharedравноTrue, то файл будет создан при необходимости.
-
get_device()[source] -
- Тип возвращаемого значения
-
half()[source] -
Преобразует это хранилище к типу half
-
hpu(device=None, non_blocking=False, **kwargs)[source] -
Возвращает копию объекта в памяти HPU.
Если объект уже находится в памяти HPU и на правильном устройстве, то копия не выполняется, и возвращается исходный объект.
- Параметры
-
- device (int) – Идентификатор HPU назначения. По умолчанию — текущее устройство.
-
non_blocking (bool) – Если
Trueи источник находится в закрепленной памяти, то копия будет асинхронной относительно хоста. В противном случае аргумент не оказывает влияния. -
**kwargs – Для совместимости, может содержать ключ
asyncвместо аргументаnon_blocking.
- Тип возвращаемого значения
-
T
-
int()[source] -
Преобразует это хранилище к типу int
-
property is_cuda
-
property is_hpu
-
is_pinned(device='cuda')[source] -
Определяет, закреплена ли память CPU TypedStorage на устройстве.
- Параметры
-
device (str или torch.device) – Устройство для закрепления памяти. По умолчанию:
'cuda' - Возвращает
-
Булевое значение.
-
-
is_sparse = False
-
long()[source] -
Преобразует это хранилище к типу long
-
nbytes()[source]
-
pickle_storage_type()[source]
-
pin_memory(device='cuda')[source] -
Копирует CPU TypedStorage в закреплённую память, если она ещё не закреплена.
- Параметры
-
device (str или torch.device) – Устройство для закрепления памяти. По умолчанию:
'cuda'. - Возвращает
-
Закреплённое CPU хранилище.
-
resize_(size)[source]
-
Перемещает хранилище в общую память.
Это бесполезная операция для хранилищ, уже находящихся в общей памяти, и для хранилищ CUDA, которым не нужно перемещаться для совместного использования между процессами. Хранилища в общей памяти не могут быть изменены в размерах.
Возвращает: self
-
short()[source] -
Преобразует это хранилище к типу short
-
size()[source]
-
tolist()[source] -
Возвращает список, содержащий элементы этого хранилища
-
type(dtype=None, non_blocking=False)[source] -
Возвращает тип, если
dtypeне указан, иначе преобразует этот объект в указанный тип.Если это уже правильный тип, никакой копии не выполняется, и возвращается исходный объект.
- Параметры
-
- dtype (тип или строка) – Желаемый тип
-
non_blocking (bool) – Если
True, и источник находится в закреплённой памяти, а место назначения — на GPU или наоборот, копирование выполняется асинхронно по отношению к хосту. В противном случае аргумент не оказывает влияния. -
**kwargs – Для совместимости, может содержать ключ
asyncвместо аргументаnon_blocking. Аргументasyncустарел.
- Тип возвращаемого значения
-
untyped()[source] -
Возвращает внутреннее
torch.UntypedStorage
-
-
class torch.UntypedStorage(*args, **kwargs)[source] -
-
bfloat16() -
Преобразование этого хранилища к типу bfloat16
-
bool() -
Преобразование этого хранилища к типу bool
-
byte() -
Преобразование этого хранилища к типу byte
-
byteswap(dtype) -
Меняет порядок байтов в базовых данных
-
char() -
Преобразование этого хранилища к типу char
-
clone() -
Возвращает копию этого хранилища
-
complex_double() -
Преобразование этого хранилища к типу комплексного двойного
-
complex_float() -
Преобразование этого хранилища к типу комплексного плавающего
-
copy_()
-
cpu() -
Возвращает копию этого хранилища на процессоре, если оно не находится уже на процессоре
-
cuda(device=None, non_blocking=False, **kwargs) -
Возвращает копию этого объекта в памяти CUDA.
Если этот объект уже находится в памяти CUDA и на правильном устройстве, то копирование не выполняется, и возвращается исходный объект.
- Параметры
-
- device (int) – Идентификатор целевой видеокарты GPU. По умолчанию - текущее устройство.
-
non_blocking (bool) – Если
Trueи источник находится в памяти с фиксацией, копирование будет асинхронным по отношению к хосту. В противном случае, аргумент не имеет эффекта. -
**kwargs – Для совместимости, может содержать ключ
asyncвместо аргументаnon_blocking.
-
data_ptr()
-
device: device
-
double() -
Преобразование этого хранилища к типу double
-
element_size()
-
fill_()
-
float() -
Преобразование этого хранилища к типу float
-
static from_buffer()
-
static from_file(filename, shared=False, size=0) → Storage -
Если
sharedравноTrue, то память разделяется между всеми процессами. Все изменения записываются в файл. ЕслиsharedравноFalse, то изменения в хранилище не влияют на файл.size- количество элементов в хранилище. ЕслиsharedравноFalse, то файл должен содержать как минимумsize * sizeof(Type)байт (Type- тип хранилища). ЕслиsharedравноTrue, то файл будет создан при необходимости.
-
get_device() -
- Возвращаемый тип
-
half() -
Преобразование этого хранилища к типу half
-
hpu(device=None, non_blocking=False, **kwargs) -
Возвращает копию этого объекта в памяти HPU.
Если этот объект уже находится в памяти HPU и на правильном устройстве, то копирование не выполняется, и возвращается исходный объект.
- Параметры
-
- device (int) – Идентификатор целевого устройства HPU. По умолчанию - текущее устройство.
-
non_blocking (bool) – Если
Trueи источник находится в памяти с фиксацией, копирование будет асинхронным по отношению к хосту. В противном случае, аргумент не имеет эффекта. -
**kwargs – Для совместимости, может содержать ключ
asyncвместо аргументаnon_blocking.
-
int() -
Преобразование этого хранилища к типу int
-
property is_cuda
-
property is_hpu
-
is_pinned(device='cuda') -
Определение, является ли хранилище CPU уже закрепленным на устройстве.
- Параметры
-
device (str или torch.device) – Устройство для закрепления памяти. По умолчанию:
'cuda'. - Возвращает
-
Логическое значение.
-
is_sparse: bool = False
-
is_sparse_csr: bool = False
-
long() -
Преобразование этого хранилища к типу long
-
mps() -
Возвращает копию этого хранилища на MPS, если оно не находится уже на MPS
-
nbytes()
-
new()
-
pin_memory(device='cuda') -
Копирует хранилище CPU в закрепленную память, если оно еще не закреплено.
- Параметры
-
device (str или torch.device) – Устройство для закрепления памяти. По умолчанию:
'cuda'. - Возвращает
-
Закрепленное хранилище CPU.
-
resize_()
-
short() -
Преобразование этого хранилища к типу short
-
size() -
- Возвращаемый тип
-
tolist() -
Возвращает список, содержащий элементы этого хранилища
-
-
type(dtype=None, non_blocking=False, **kwargs) -
Возвращает тип, если
dtypeне указан, иначе преобразует этот объект к указанному типу.Если тип уже правильный, никакой копии не выполняется, и возвращается исходный объект.
- Параметры
-
- dtype (тип или строка) – Желаемый тип
-
non_blocking (bool) – Если
True, и источник находится в закреплённой памяти, а целевое местоположение — на GPU, или наоборот, копия выполняется асинхронно относительно процессора. В противном случае аргумент не имеет эффекта. -
**kwargs – Для совместимости, может содержать ключ
asyncвместо аргументаnon_blocking. Аргументasyncустарел.
-
untyped()
-
-
class torch.DoubleStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.float64[source]
-
-
class torch.FloatStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.float32[source]
-
-
class torch.HalfStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.float16[source]
-
-
class torch.LongStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.int64[source]
-
-
class torch.IntStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.int32[source]
-
-
class torch.ShortStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.int16[source]
-
-
class torch.CharStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.int8[source]
-
-
class torch.ByteStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.uint8[source]
-
-
class torch.BoolStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.bool[source]
-
-
class torch.BFloat16Storage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.bfloat16[source]
-
-
class torch.ComplexDoubleStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.complex128[source]
-
-
class torch.ComplexFloatStorage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.complex64[source]
-
-
class torch.QUInt8Storage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.quint8[source]
-
-
class torch.QInt8Storage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.qint8[source]
-
-
class torch.QInt32Storage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.qint32[source]
-
-
class torch.QUInt4x2Storage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.quint4x2[source]
-
-
class torch.QUInt2x4Storage(*args, wrap_storage=None, dtype=None, device=None, _internal=False)[source] -
-
dtype: dtype = torch.quint2x4[source]
-
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/storage.html