Rate this Page

torch.empty_like#

torch.empty_like(input,*,dtype=None,layout=None,device=None,requires_grad=False,memory_format=torch.preserve_format)Tensor#

Returns an uninitialized tensor with the same size asinput.torch.empty_like(input) is equivalent totorch.empty(input.size(),dtype=input.dtype,layout=input.layout,device=input.device).

Note

Iftorch.use_deterministic_algorithms() andtorch.utils.deterministic.fill_uninitialized_memory are both set toTrue, the output tensor is initialized to prevent any possiblenondeterministic behavior from using the data as an input to an operation.Floating point and complex tensors are filled with NaN, and integer tensorsare filled with the maximum value.

Whentorch.preserve_format is used:If the input tensor is dense (i.e., non-overlapping strided),its memory format (including strides) is retained.Otherwise (e.g., a non-dense view like a stepped slice),the output is converted to the dense format.

Parameters

input (Tensor) – the size ofinput will determine size of the output tensor.

Keyword Arguments
  • dtype (torch.dtype, optional) – the desired data type of returned Tensor.Default: ifNone, defaults to the dtype ofinput.

  • layout (torch.layout, optional) – the desired layout of returned tensor.Default: ifNone, defaults to the layout ofinput.

  • device (torch.device, optional) – the desired device of returned tensor.Default: ifNone, defaults to the device ofinput.

  • requires_grad (bool,optional) – If autograd should record operations on thereturned tensor. Default:False.

  • memory_format (torch.memory_format, optional) – the desired memory format ofreturned Tensor. Default:torch.preserve_format.

Example:

>>>a=torch.empty((2,3),dtype=torch.int32,device='cuda')>>>torch.empty_like(a)tensor([[0, 0, 0],        [0, 0, 0]], device='cuda:0', dtype=torch.int32)