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~execute_autotune execute_autotune proc~execute_autotune->proc~alloc_mem proc~execute_autotune->proc~alloc_and_set_aux proc~mem_alloc reshape_plan_base%mem_alloc proc~mem_alloc->proc~alloc_mem proc~autotune_reshape_plan autotune_reshape_plan proc~autotune_reshape_plan->proc~execute_autotune proc~get_plan_execution_time get_plan_execution_time proc~get_plan_execution_time->proc~execute_autotune proc~run_autotune_backend run_autotune_backend proc~run_autotune_backend->proc~execute_autotune proc~run_autotune_datatypes run_autotune_datatypes proc~run_autotune_backend->proc~run_autotune_datatypes proc~autotune_grid autotune_grid proc~autotune_grid->proc~run_autotune_backend proc~autotune_transpose_id autotune_transpose_id proc~autotune_transpose_id->proc~get_plan_execution_time proc~create~16 transpose_plan%create proc~create~16->proc~run_autotune_backend proc~autotune_grid_decomposition autotune_grid_decomposition proc~create~16->proc~autotune_grid_decomposition proc~create~9 reshape_plan%create proc~create~9->proc~autotune_reshape_plan proc~autotune_grid_decomposition->proc~autotune_grid proc~run_autotune_datatypes->proc~autotune_transpose_id

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