ncclMemAlloc Interface

interface

Allocate a GPU buffer with size. Allocated buffer head address will be returned by ptr, and the actual allocated size can be larger than requested because of the buffer granularity requirements from all types of NCCL optimizations.


Called by

interface~~ncclmemalloc~~CalledByGraph interface~ncclmemalloc ncclMemAlloc proc~alloc_mem alloc_mem proc~alloc_mem->interface~ncclmemalloc proc~alloc_and_set_aux alloc_and_set_aux proc~alloc_and_set_aux->proc~alloc_mem proc~mem_alloc~3 abstract_transpose_plan%mem_alloc proc~mem_alloc~3->proc~alloc_mem proc~run_autotune_backend run_autotune_backend proc~run_autotune_backend->proc~alloc_mem proc~run_autotune_backend->proc~alloc_and_set_aux proc~autotune_grid autotune_grid proc~autotune_grid->proc~run_autotune_backend proc~create_cuda transpose_plan_cuda%create_cuda proc~create_cuda->proc~alloc_and_set_aux proc~create_cuda->proc~run_autotune_backend proc~autotune_grid_decomposition autotune_grid_decomposition proc~create_cuda->proc~autotune_grid_decomposition proc~autotune_grid_decomposition->proc~autotune_grid

public function ncclMemAlloc(ptr, alloc_bytes) result(ncclResult_t) bind(C, name="ncclMemAlloc")

Arguments

Type IntentOptional Attributes Name
type(c_ptr), intent(out) :: ptr

Buffer address

integer(kind=c_size_t), intent(in), value :: alloc_bytes

Number of bytes to allocate

Return Value integer(kind=c_int32_t)

Completion status