Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
mini_cuda.h File Reference

Go to the source code of this file.

Classes

struct  Halide::Runtime::Internal::Cuda::CUDA_MEMCPY3D_st
 

Namespaces

namespace  Halide
 This file defines the class FunctionDAG, which is our representation of a Halide pipeline, and contains methods to using Halide's bounds tools to query properties of it.
 
namespace  Halide::Runtime
 
namespace  Halide::Runtime::Internal
 
namespace  Halide::Runtime::Internal::Cuda
 

Macros

#define CUDAAPI
 
#define CU_POINTER_ATTRIBUTE_CONTEXT   1
 

Typedefs

typedef unsigned int Halide::Runtime::Internal::Cuda::CUdeviceptr
 
typedef int Halide::Runtime::Internal::Cuda::CUdevice
 CUDA device.
 
typedef struct CUctx_st * Halide::Runtime::Internal::Cuda::CUcontext
 CUDA context.
 
typedef struct CUmod_st * Halide::Runtime::Internal::Cuda::CUmodule
 CUDA module.
 
typedef struct CUfunc_st * Halide::Runtime::Internal::Cuda::CUfunction
 CUDA function.
 
typedef struct CUstream_st * Halide::Runtime::Internal::Cuda::CUstream
 CUDA stream.
 
typedef struct CUevent_st * Halide::Runtime::Internal::Cuda::CUevent
 CUDA event.
 
typedef struct CUarray_st * Halide::Runtime::Internal::Cuda::CUarray
 
typedef enum Halide::Runtime::Internal::Cuda::CUjit_option_enum Halide::Runtime::Internal::Cuda::CUjit_option
 
typedef enum Halide::Runtime::Internal::Cuda::CUmemorytype_enum Halide::Runtime::Internal::Cuda::CUmemorytype
 
typedef struct Halide::Runtime::Internal::Cuda::CUDA_MEMCPY3D_st Halide::Runtime::Internal::Cuda::CUDA_MEMCPY3D
 

Enumerations

enum  Halide::Runtime::Internal::Cuda::CUjit_option_enum {
  Halide::Runtime::Internal::Cuda::CU_JIT_MAX_REGISTERS = 0 , Halide::Runtime::Internal::Cuda::CU_JIT_THREADS_PER_BLOCK = 1 , Halide::Runtime::Internal::Cuda::CU_JIT_WALL_TIME = 2 , Halide::Runtime::Internal::Cuda::CU_JIT_INFO_LOG_BUFFER = 3 ,
  Halide::Runtime::Internal::Cuda::CU_JIT_INFO_LOG_BUFFER_SIZE_BYTES = 4 , Halide::Runtime::Internal::Cuda::CU_JIT_ERROR_LOG_BUFFER = 5 , Halide::Runtime::Internal::Cuda::CU_JIT_ERROR_LOG_BUFFER_SIZE_BYTES = 6 , Halide::Runtime::Internal::Cuda::CU_JIT_OPTIMIZATION_LEVEL = 7 ,
  Halide::Runtime::Internal::Cuda::CU_JIT_TARGET_FROM_CUCONTEXT = 8 , Halide::Runtime::Internal::Cuda::CU_JIT_TARGET = 9 , Halide::Runtime::Internal::Cuda::CU_JIT_FALLBACK_STRATEGY = 10
}
 
enum  Halide::Runtime::Internal::Cuda::CUresult {
  Halide::Runtime::Internal::Cuda::CUDA_SUCCESS = 0 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_VALUE = 1 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_OUT_OF_MEMORY = 2 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NOT_INITIALIZED = 3 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_DEINITIALIZED = 4 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_PROFILER_DISABLED = 5 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_PROFILER_NOT_INITIALIZED = 6 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_PROFILER_ALREADY_STARTED = 7 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_PROFILER_ALREADY_STOPPED = 8 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NO_DEVICE = 100 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_DEVICE = 101 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_IMAGE = 200 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_CONTEXT = 201 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_CONTEXT_ALREADY_CURRENT = 202 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_MAP_FAILED = 205 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_UNMAP_FAILED = 206 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_ARRAY_IS_MAPPED = 207 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_ALREADY_MAPPED = 208 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NO_BINARY_FOR_GPU = 209 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_ALREADY_ACQUIRED = 210 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_NOT_MAPPED = 211 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NOT_MAPPED_AS_ARRAY = 212 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NOT_MAPPED_AS_POINTER = 213 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_ECC_UNCORRECTABLE = 214 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_UNSUPPORTED_LIMIT = 215 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_CONTEXT_ALREADY_IN_USE = 216 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_PEER_ACCESS_UNSUPPORTED = 217 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_PTX = 218 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_GRAPHICS_CONTEXT = 219 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NVLINK_UNCORRECTABLE = 220 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_JIT_COMPILER_NOT_FOUND = 221 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_SOURCE = 300 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_FILE_NOT_FOUND = 301 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND = 302 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_SHARED_OBJECT_INIT_FAILED = 303 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_OPERATING_SYSTEM = 304 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_HANDLE = 400 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NOT_FOUND = 500 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NOT_READY = 600 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_ILLEGAL_ADDRESS = 700 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES = 701 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_LAUNCH_TIMEOUT = 702 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING = 703 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED = 704 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_PEER_ACCESS_NOT_ENABLED = 705 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE = 708 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_CONTEXT_IS_DESTROYED = 709 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_ILLEGAL_INSTRUCTION = 715 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_MISALIGNED_ADDRESS = 716 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_ADDRESS_SPACE = 717 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_INVALID_PC = 718 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_LAUNCH_FAILED = 719 ,
  Halide::Runtime::Internal::Cuda::CUDA_ERROR_NOT_PERMITTED = 800 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_NOT_SUPPORTED = 801 , Halide::Runtime::Internal::Cuda::CUDA_ERROR_UNKNOWN = 999
}
 
enum  Halide::Runtime::Internal::Cuda::CUdevice_attribute {
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK = 1 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X = 2 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y = 3 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Z = 4 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X = 5 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Y = 6 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Z = 7 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK = 8 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK = 8 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_TOTAL_CONSTANT_MEMORY = 9 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_WARP_SIZE = 10 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_PITCH = 11 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK = 12 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK = 12 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_CLOCK_RATE = 13 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_TEXTURE_ALIGNMENT = 14 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_GPU_OVERLAP = 15 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT = 16 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT = 17 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_INTEGRATED = 18 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY = 19 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_COMPUTE_MODE = 20 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_WIDTH = 21 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_WIDTH = 22 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_HEIGHT = 23 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH = 24 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT = 25 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH = 26 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH = 27 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT = 28 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_LAYERS = 29 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH = 27 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT = 28 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_NUMSLICES = 29 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT = 30 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS = 31 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_ECC_ENABLED = 32 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_PCI_BUS_ID = 33 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID = 34 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_TCC_DRIVER = 35 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE = 36 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH = 37 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_L2_CACHE_SIZE = 38 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_MULTIPROCESSOR = 39 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT = 40 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING = 41 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_WIDTH = 42 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_LAYERS = 43 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER = 44 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH = 45 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT = 46 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH_ALTERNATE = 47 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT_ALTERNATE = 48 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH_ALTERNATE = 49 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID = 50 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT = 51 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_WIDTH = 52 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_WIDTH = 53 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_LAYERS = 54 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_WIDTH = 55 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_WIDTH = 56 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_HEIGHT = 57 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_WIDTH = 58 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_HEIGHT = 59 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_DEPTH = 60 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_WIDTH = 61 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_LAYERS = 62 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_WIDTH = 63 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_HEIGHT = 64 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_LAYERS = 65 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_WIDTH = 66 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_WIDTH = 67 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_LAYERS = 68 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH = 69 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_WIDTH = 70 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_HEIGHT = 71 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_PITCH = 72 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_WIDTH = 73 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_HEIGHT = 74 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR = 75 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR = 76 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_MIPMAPPED_WIDTH = 77 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED = 78 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_GLOBAL_L1_CACHE_SUPPORTED = 79 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_LOCAL_L1_CACHE_SUPPORTED = 80 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR = 81 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR = 82 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY = 83 ,
  Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD = 84 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID = 85 , Halide::Runtime::Internal::Cuda::CU_DEVICE_ATTRIBUTE_MAX
}
 
enum  Halide::Runtime::Internal::Cuda::CUmemorytype_enum { Halide::Runtime::Internal::Cuda::CU_MEMORYTYPE_HOST = 0x01 , Halide::Runtime::Internal::Cuda::CU_MEMORYTYPE_DEVICE = 0x02 , Halide::Runtime::Internal::Cuda::CU_MEMORYTYPE_ARRAY = 0x03 , Halide::Runtime::Internal::Cuda::CU_MEMORYTYPE_UNIFIED = 0x04 }
 

Macro Definition Documentation

◆ CUDAAPI

#define CUDAAPI

Definition at line 12 of file mini_cuda.h.

◆ CU_POINTER_ATTRIBUTE_CONTEXT

#define CU_POINTER_ATTRIBUTE_CONTEXT   1

Definition at line 232 of file mini_cuda.h.