Low-Level CUDA Support¶
Device management¶
cupy.cuda.Device |
Object that represents a CUDA device. |
Memory management¶
cupy.get_default_memory_pool |
Returns CuPy default memory pool for GPU memory. |
cupy.get_default_pinned_memory_pool |
Returns CuPy default memory pool for pinned memory. |
cupy.cuda.Memory |
Memory allocation on a CUDA device. |
cupy.cuda.PinnedMemory |
Pinned memory allocation on host. |
cupy.cuda.MemoryPointer |
Pointer to a point on a device memory. |
cupy.cuda.PinnedMemoryPointer |
Pointer of a pinned memory. |
cupy.cuda.alloc |
Calls the current allocator. |
cupy.cuda.alloc_pinned_memory |
Calls the current allocator. |
cupy.cuda.set_allocator |
Sets the current allocator for GPU memory. |
cupy.cuda.set_pinned_memory_allocator |
Sets the current allocator for the pinned memory. |
cupy.cuda.MemoryPool |
Memory pool for all GPU devices on the host. |
cupy.cuda.PinnedMemoryPool |
Memory pool for pinned memory on the host. |
Memory hook¶
cupy.cuda.MemoryHook |
Base class of hooks for Memory allocations. |
cupy.cuda.memory_hooks.DebugPrintHook |
Memory hook that prints debug information. |
cupy.cuda.memory_hooks.LineProfileHook |
Code line CuPy memory profiler. |
Streams and events¶
cupy.cuda.Stream |
CUDA stream. |
cupy.cuda.get_current_stream |
Gets current CUDA stream. |
cupy.cuda.Event |
CUDA event, a synchronization point of CUDA streams. |
cupy.cuda.get_elapsed_time |
Gets the elapsed time between two events. |
Profiler¶
cupy.cuda.profile |
Enable CUDA profiling during with statement. |
cupy.cuda.profiler.initialize |
Initialize the CUDA profiler. |
cupy.cuda.profiler.start |
Enable profiling. |
cupy.cuda.profiler.stop |
Disable profiling. |
cupy.cuda.nvtx.Mark |
Marks an instantaneous event (marker) in the application. |
cupy.cuda.nvtx.MarkC |
Marks an instantaneous event (marker) in the application. |
cupy.cuda.nvtx.RangePush |
Starts a nested range. |
cupy.cuda.nvtx.RangePushC |
Starts a nested range. |
cupy.cuda.nvtx.RangePop |
Ends a nested range. |