IMPORTANT: To view this page as Markdown, append `.md` to the URL (e.g. /docs/manual/basics.md). For the complete Mojo documentation index, see llms.txt.
Skip to main content
Version: Nightly
For the complete Mojo documentation index, see llms.txt. Markdown versions of all pages are available by appending .md to any URL (e.g. /docs/manual/basics.md).

parallel_memcpy

def parallel_memcpy[dtype: DType](*, dest: Optional[UnsafePointer[Scalar[dtype], origin]], src: Optional[UnsafePointer[Scalar[dtype], origin]], count: Int, count_per_task: Int, num_tasks: Int)

Copies count elements from a memory buffer src to dest in parallel by spawning num_tasks tasks each copying count_per_task elements.

Parameters:

  • dtype (DType): The element dtype.

Args:

  • dest (Optional[UnsafePointer[Scalar[dtype], origin]]): The destination buffer.
  • src (Optional[UnsafePointer[Scalar[dtype], origin]]): The source buffer.
  • count (Int): Number of elements in the buffer.
  • count_per_task (Int): Task size.
  • num_tasks (Int): Number of tasks to run in parallel.

def parallel_memcpy[dtype: DType](*, dest: Optional[UnsafePointer[Scalar[dtype], origin]], src: Optional[UnsafePointer[Scalar[dtype], origin]], count: Int)

Copies count elements from a memory buffer src to dest in parallel.

Parameters:

  • dtype (DType): The element dtype.

Args:

  • dest (Optional[UnsafePointer[Scalar[dtype], origin]]): The destination pointer.
  • src (Optional[UnsafePointer[Scalar[dtype], origin]]): The source pointer.
  • count (Int): The number of elements to copy.