Skip to main content

function

strided_load

strided_load[type: DType, simd_width: Int, /, address_space: AddressSpace = 0](addr: DTypePointer[type, address_space], stride: Int, mask: SIMD[bool, simd_width]) -> SIMD[$0, $1]

Loads values from addr according to a specific stride.

Parameters:

  • type (DType): DType of value, the value to store.
  • simd_width (Int): The width of the SIMD vectors.
  • address_space (AddressSpace): The address space of the memory location.

Args:

  • addr (DTypePointer[type, address_space]): The memory location to load data from.
  • stride (Int): How many lanes to skip before loading again.
  • mask (SIMD[bool, simd_width]): A binary vector which prevents memory access to certain lanes of value.

Returns:

A vector containing the loaded data.

strided_load[type: DType, simd_width: Int, /, address_space: AddressSpace = 0](addr: DTypePointer[type, address_space], stride: Int) -> SIMD[$0, $1]

Loads values from addr according to a specific stride.

Parameters:

  • type (DType): DType of value, the value to store.
  • simd_width (Int): The width of the SIMD vectors.
  • address_space (AddressSpace): The address space of the memory location.

Args:

  • addr (DTypePointer[type, address_space]): The memory location to load data from.
  • stride (Int): How many lanes to skip before loading again.

Returns:

A vector containing the loaded data.