kokkos_malloc
#
Defined in header <Kokkos_Core.hpp>
Allocate size
bytes of uninitialized storage on the specified memory space MemorySpace
plus some extra space for metadata such as the label.
If allocation succeeds, returns a pointer to the lowest (first) byte in the allocated memory block that is suitably aligned for any scalar type.
If allocation fails, an exception of type Kokkos::Experimental::RawMemoryAllocationFailure
is thrown.
Warning
Calling any function that manipulates the behavior of the memory (e.g. memAdvise
) on memory managed by Kokkos
results in undefined behavior.
Description#
-
template<class MemorySpace = Kokkos::DefaultExecutionSpace::memory_space>
void *kokkos_malloc(const string &label, size_t size);#
-
template<class MemorySpace = Kokkos::DefaultExecutionSpace::memory_space>
void *kokkos_malloc(size_t size);# - Template Parameters:
MemorySpace – Controls the storage location. If omitted the memory space of the default execution space is used (i.e.
Kokkos::DefaultExecutionSpace::memory_space
).- Parameters:
label – A user provided string which is used in profiling and debugging tools via the KokkosP Profiling Tools.
size – The number of bytes to allocate.
- Returns:
On success, returns the pointer to the beginning of newly allocated memory. To avoid a memory leak, the returned pointer must be deallocated with
Kokkos::kokkos_free()
orKokkos::kokkos_realloc()
.- Throws:
On failure, throws
Kokkos::Experimental::RawMemoryAllocationFailure
.