CUDA.Runtime.hpp 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. // CodeGear C++Builder
  2. // Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc.
  3. // All rights reserved
  4. // (DO NOT EDIT: machine generated header) 'CUDA.Runtime.pas' rev: 36.00 (Windows)
  5. #ifndef CUDA_RuntimeHPP
  6. #define CUDA_RuntimeHPP
  7. #pragma delphiheader begin
  8. #pragma option push
  9. #if defined(__BORLANDC__) && !defined(__clang__)
  10. #pragma option -w- // All warnings off
  11. #pragma option -Vx // Zero-length empty class member
  12. #endif
  13. #pragma pack(push,8)
  14. #include <System.hpp>
  15. #include <SysInit.hpp>
  16. #include <Winapi.Windows.hpp>
  17. #include <CUDA.Import.hpp>
  18. //-- user supplied -----------------------------------------------------------
  19. namespace Cuda
  20. {
  21. namespace Runtime
  22. {
  23. //-- forward type declarations -----------------------------------------------
  24. struct TCudaChannelFormatDesc;
  25. struct DECLSPEC_DRECORD TcudaArray
  26. {
  27. };
  28. struct TcudaPitchedPtr;
  29. struct TcudaExtent;
  30. struct TcudaPos;
  31. struct TcudaMemcpy3DParms;
  32. struct TCudaDeviceProp;
  33. struct TTextureReference;
  34. //-- type declarations -------------------------------------------------------
  35. typedef System::StaticArray<System::UnicodeString, 10> Cuda_Runtime__1;
  36. enum DECLSPEC_DENUM TcudaError : unsigned char { cudaSuccess, cudaErrorMissingConfiguration, cudaErrorMemoryAllocation, cudaErrorInitializationError, cudaErrorLaunchFailure, cudaErrorPriorLaunchFailure, cudaErrorLaunchTimeout, cudaErrorLaunchOutOfResources, cudaErrorInvalidDeviceFunction, cudaErrorInvalidConfiguration, cudaErrorInvalidDevice, cudaErrorInvalidValue, cudaErrorInvalidPitchValue, cudaErrorInvalidSymbol, cudaErrorMapBufferObjectFailed, cudaErrorUnmapBufferObjectFailed, cudaErrorInvalidHostPointer, cudaErrorInvalidDevicePointer, cudaErrorInvalidTexture, cudaErrorInvalidTextureBinding, cudaErrorInvalidChannelDescriptor, cudaErrorInvalidMemcpyDirection, cudaErrorAddressOfConstant, cudaErrorTextureFetchFailed, cudaErrorTextureNotBound,
  37. cudaErrorSynchronizationError, cudaErrorInvalidFilterSetting, cudaErrorInvalidNormSetting, cudaErrorMixedDeviceExecution, cudaErrorCudartUnloading, cudaErrorUnknown, cudaErrorNotYetImplemented, cudaErrorMemoryValueTooLarge, cudaErrorInvalidResourceHandle, cudaErrorNotReady, cudaErrorStartupFailure, cudaErrorApiFailureBase };
  38. enum DECLSPEC_DENUM TCudaChannelFormatKind : unsigned char { cudaChannelFormatKindSigned, cudaChannelFormatKindUnsigned, cudaChannelFormatKindFloat };
  39. enum DECLSPEC_DENUM TCudaGLMapFlags : unsigned char { cudaGLMapFlagsNone, cudaGLMapFlagsReadOnly, cudaGLMapFlagsWriteDiscard };
  40. typedef TCudaChannelFormatDesc *PcudaChannelFormatDesc;
  41. struct DECLSPEC_DRECORD TCudaChannelFormatDesc
  42. {
  43. public:
  44. int x;
  45. int y;
  46. int z;
  47. int w;
  48. TCudaChannelFormatKind f;
  49. };
  50. enum DECLSPEC_DENUM TcudaMemcpyKind : unsigned char { cudaMemcpyHostToHost, cudaMemcpyHostToDevice, cudaMemcpyDeviceToHost, cudaMemcpyDeviceToDevice };
  51. struct DECLSPEC_DRECORD TcudaPitchedPtr
  52. {
  53. public:
  54. void *ptr;
  55. System::NativeUInt pitch;
  56. System::NativeUInt xsize;
  57. System::NativeUInt ysize;
  58. };
  59. struct DECLSPEC_DRECORD TcudaExtent
  60. {
  61. public:
  62. System::NativeUInt width;
  63. System::NativeUInt height;
  64. System::NativeUInt depth;
  65. };
  66. struct DECLSPEC_DRECORD TcudaPos
  67. {
  68. public:
  69. System::NativeUInt x;
  70. System::NativeUInt y;
  71. System::NativeUInt z;
  72. };
  73. struct DECLSPEC_DRECORD TcudaMemcpy3DParms
  74. {
  75. public:
  76. void *srcArray;
  77. TcudaPos srcPos;
  78. TcudaPitchedPtr srcPtr;
  79. void *dstArray;
  80. TcudaPos dstPos;
  81. TcudaPitchedPtr dstPtr;
  82. TcudaExtent extent;
  83. TcudaMemcpyKind kind;
  84. };
  85. typedef TCudaDeviceProp *PCudaDeviceProp;
  86. struct DECLSPEC_DRECORD TCudaDeviceProp
  87. {
  88. public:
  89. System::StaticArray<char, 256> name;
  90. System::NativeUInt totalGlobalMem;
  91. System::NativeUInt sharedMemPerBlock;
  92. int regsPerBlock;
  93. int warpSize;
  94. System::NativeUInt memPitch;
  95. int maxThreadsPerBlock;
  96. System::StaticArray<int, 3> maxThreadsDim;
  97. System::StaticArray<int, 3> maxGridSize;
  98. int clockRate;
  99. System::NativeUInt totalConstMem;
  100. int major;
  101. int minor;
  102. System::NativeUInt textureAlignment;
  103. int deviceOverlap;
  104. int multiProcessorCount;
  105. int kernelExecTimeoutEnabled;
  106. int egrated;
  107. int canMapHostMemory;
  108. int computeMode;
  109. int maxTexture1D;
  110. System::StaticArray<int, 2> maxTexture2D;
  111. System::StaticArray<int, 3> maxTexture3D;
  112. System::StaticArray<int, 3> maxTexture2DArray;
  113. System::NativeUInt surfaceAlignment;
  114. int concurrentKernels;
  115. int ECCEnabled;
  116. int pciBusID;
  117. int pciDeviceID;
  118. int tccDriver;
  119. System::StaticArray<int, 21> __cudaReserved;
  120. };
  121. enum DECLSPEC_DENUM TcudaTextureAddressMode : unsigned char { cudaAddressModeWrap, cudaAddressModeClamp, cudaAddressModeMirror };
  122. enum DECLSPEC_DENUM TcudaTextureFilterMode : unsigned char { cudaFilterModePoint, cudaFilterModeLinear };
  123. enum DECLSPEC_DENUM TcudaTextureReadMode : unsigned char { cudaReadModeElementType, cudaReadModeNormalizedFloat };
  124. typedef TTextureReference *PTextureReference;
  125. struct DECLSPEC_DRECORD TTextureReference
  126. {
  127. public:
  128. int normalized;
  129. TcudaTextureFilterMode filterMode;
  130. System::StaticArray<TcudaTextureAddressMode, 3> addressMode;
  131. TCudaChannelFormatDesc channelDesc;
  132. System::StaticArray<int, 16> __cudaReserved;
  133. };
  134. typedef TcudaArray *PcudaArray;
  135. typedef TcudaError cudaError_t;
  136. typedef int cudaStream_t;
  137. typedef int cudaEvent_t;
  138. //-- var, const, procedure ---------------------------------------------------
  139. extern DELPHI_PACKAGE Cuda_Runtime__1 CUDARTDLLNAMES;
  140. extern DELPHI_PACKAGE float CUDART_INF_F;
  141. extern DELPHI_PACKAGE float CUDART_NAN_F;
  142. extern DELPHI_PACKAGE float CUDART_MIN_DENORM_F;
  143. extern DELPHI_PACKAGE float CUDART_MAX_NORMAL_F;
  144. extern DELPHI_PACKAGE float CUDART_NEG_ZERO_F;
  145. #define CUDART_ZERO_F (0.000000E+00)
  146. #define CUDART_ONE_F (1.000000E+00)
  147. static const System::Extended CUDART_SQRT_HALF_F = 7.071068E-01;
  148. static const System::Extended CUDART_SQRT_TWO_F = 1.414214E+00;
  149. static const System::Extended CUDART_THIRD_F = 3.333333E-01;
  150. static const System::Extended CUDART_PIO4_F = 7.853982E-01;
  151. static const System::Extended CUDART_PIO2_F = 1.570796E+00;
  152. static const System::Extended CUDART_3PIO4_F = 2.356194E+00;
  153. static const System::Extended CUDART_2_OVER_PI_F = 6.366198E-01;
  154. static const System::Extended CUDART_PI_F = 3.141593E+00;
  155. static const System::Extended CUDART_L2E_F = 1.442695E+00;
  156. static const System::Extended CUDART_L2T_F = 3.321928E+00;
  157. static const System::Extended CUDART_LG2_F = 3.010300E-01;
  158. static const System::Extended CUDART_LGE_F = 4.342945E-01;
  159. static const System::Extended CUDART_LN2_F = 6.931472E-01;
  160. static const System::Extended CUDART_LNT_F = 2.302585E+00;
  161. static const System::Extended CUDART_LNPI_F = 1.144730E+00;
  162. static const System::Extended CUDART_TWO_TO_M126_F = 1.175494E-38;
  163. static const System::Extended CUDART_TWO_TO_126_F = 8.507059E+37;
  164. static const System::Extended CUDART_NORM_HUGE_F = 3.402823E+38;
  165. #define CUDART_TWO_TO_23_F (8.388608E+06)
  166. #define CUDART_TWO_TO_24_F (1.677722E+07)
  167. #define CUDART_TWO_TO_31_F (2.147484E+09)
  168. #define CUDART_TWO_TO_32_F (4.294967E+09)
  169. static _DELPHI_CONST System::Int8 CUDART_REMQUO_BITS_F = System::Int8(0x3);
  170. static _DELPHI_CONST System::Int8 CUDART_REMQUO_MASK_F = System::Int8(0x3);
  171. #define CUDART_TRIG_PLOSS_F (4.803900E+04)
  172. extern DELPHI_PACKAGE double CUDART_INF;
  173. extern DELPHI_PACKAGE double CUDART_NAN;
  174. extern DELPHI_PACKAGE double CUDART_NEG_ZERO;
  175. extern DELPHI_PACKAGE double CUDART_MIN_DENORM;
  176. #define CUDART_ZERO (0.000000E+00)
  177. #define CUDART_ONE (1.000000E+00)
  178. static const System::Extended CUDART_SQRT_TWO = 1.414214E+00;
  179. static const System::Extended CUDART_SQRT_HALF = 7.071068E-01;
  180. static const System::Extended CUDART_THIRD = 3.333333E-01;
  181. static const System::Extended CUDART_TWOTHIRD = 6.666667E-01;
  182. static const System::Extended CUDART_PIO4 = 7.853982E-01;
  183. static const System::Extended CUDART_PIO4_HI = 7.853982E-01;
  184. static const System::Extended CUDART_PIO4_LO = 3.061617E-17;
  185. static const System::Extended CUDART_PIO2 = 1.570796E+00;
  186. static const System::Extended CUDART_PIO2_HI = 1.570796E+00;
  187. static const System::Extended CUDART_PIO2_LO = 6.123234E-17;
  188. static const System::Extended CUDART_3PIO4 = 2.356194E+00;
  189. static const System::Extended CUDART_2_OVER_PI = 6.366198E-01;
  190. static const System::Extended CUDART_PI = 3.141593E+00;
  191. static const System::Extended CUDART_PI_HI = 3.141593E+00;
  192. static const System::Extended CUDART_PI_LO = 1.224647E-16;
  193. static const System::Extended CUDART_SQRT_2PI_HI = 2.506628E+00;
  194. static const System::Extended CUDART_SQRT_2PI_LO = -1.832858E-16;
  195. static const System::Extended CUDART_SQRT_PIO2_HI = 1.253314E+00;
  196. static const System::Extended CUDART_SQRT_PIO2_LO = -9.164290E-17;
  197. static const System::Extended CUDART_L2E = 1.442695E+00;
  198. static const System::Extended CUDART_L2E_HI = 1.442695E+00;
  199. static const System::Extended CUDART_L2E_LO = 2.035527E-17;
  200. static const System::Extended CUDART_L2T = 3.321928E+00;
  201. static const System::Extended CUDART_LG2 = 3.010300E-01;
  202. static const System::Extended CUDART_LG2_HI = 3.010300E-01;
  203. static const System::Extended CUDART_LG2_LO = -2.803728E-18;
  204. static const System::Extended CUDART_LGE = 4.342945E-01;
  205. static const System::Extended CUDART_LGE_HI = 4.342945E-01;
  206. static const System::Extended CUDART_LGE_LO = 1.098320E-17;
  207. static const System::Extended CUDART_LN2 = 6.931472E-01;
  208. static const System::Extended CUDART_LN2_HI = 6.931472E-01;
  209. static const System::Extended CUDART_LN2_LO = 2.319047E-17;
  210. static const System::Extended CUDART_LNT = 2.302585E+00;
  211. static const System::Extended CUDART_LNT_HI = 2.302585E+00;
  212. static const System::Extended CUDART_LNT_LO = -2.170756E-16;
  213. static const System::Extended CUDART_LNPI = 1.144730E+00;
  214. static const System::Extended CUDART_LN2_X_1024 = 7.097827E+02;
  215. static const System::Extended CUDART_LN2_X_1025 = 7.104759E+02;
  216. static const System::Extended CUDART_LN2_X_1075 = 7.451332E+02;
  217. static const System::Extended CUDART_LG2_X_1024 = 3.082547E+02;
  218. static const System::Extended CUDART_LG2_X_1075 = 3.236072E+02;
  219. #define CUDART_TWO_TO_23 (8.388608E+06)
  220. static const System::Extended CUDART_TWO_TO_52 = 4.503600E+15;
  221. static const System::Extended CUDART_TWO_TO_54 = 1.801440E+16;
  222. static const System::Extended CUDART_TWO_TO_M54 = 5.551115E-17;
  223. static const System::Extended CUDART_TWO_TO_M1022 = 2.225074E-308;
  224. #define CUDART_TRIG_PLOSS (2.147484E+09)
  225. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaBindTexture)(System::NativeUInt &offset, const PTextureReference texref, void * &devPtr, TCudaChannelFormatDesc &desc, System::NativeUInt size);
  226. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaBindTexture2D)(System::NativeUInt &offset, const PTextureReference texref, const void * devPtr, TCudaChannelFormatDesc &desc, System::NativeUInt width, System::NativeUInt height, System::NativeUInt pitch);
  227. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaBindTextureToArray)(const PTextureReference texref, const PcudaArray cudaArray);
  228. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaUnbindTexture)(const PTextureReference texref);
  229. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetTextureAlignmentOffset)(System::NativeUInt offset, const PTextureReference texref);
  230. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetTextureReference)(const PTextureReference texref, const char * symbol);
  231. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetChannelDesc)(TCudaChannelFormatDesc &desc, const void * array_);
  232. extern DELPHI_PACKAGE TCudaChannelFormatDesc __stdcall (*cudaCreateChannelDesc)(int x, int y, int z, int w, TCudaChannelFormatKind f);
  233. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMalloc3D)(TcudaPitchedPtr &pitchedDevPtr, TcudaExtent extent);
  234. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMalloc3DArray)(PcudaArray &arrayPtr, const TCudaChannelFormatDesc &desc, TcudaExtent extent, unsigned flags);
  235. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemset3D)(TcudaPitchedPtr pitchedDevPtr, int value, TcudaExtent extent);
  236. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy3D)(const TcudaMemcpy3DParms &p);
  237. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy3DAsync)(const TcudaMemcpy3DParms &p, cudaStream_t stream);
  238. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMalloc)(void *devPtr, System::NativeUInt size);
  239. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMallocHost)(void * &ptr, System::NativeUInt size);
  240. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMallocPitch)(void *devPtr, System::NativeUInt &pitch, System::NativeUInt width, System::NativeUInt height);
  241. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMallocArray)(void * &aarray, TCudaChannelFormatDesc &desc, System::NativeUInt width, System::NativeUInt height);
  242. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaFree)(void * devPtr);
  243. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaFreeHost)(void * ptr);
  244. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaFreeArray)(const void * aarray);
  245. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaHostAlloc)(void * &pHost, System::NativeUInt bytes, unsigned flags);
  246. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaHostGetDevicePointer)(void * &pDevice, void * pHost, unsigned flags);
  247. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaHostGetFlags)(unsigned &pFlags, void * pHost);
  248. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemGetInfo)(System::NativeUInt &free, System::NativeUInt &total);
  249. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy)(void * dst, void * src, System::NativeUInt count, TcudaMemcpyKind kind);
  250. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyToArray)(PcudaArray &dst, System::NativeUInt wOffset, System::NativeUInt hOffset, void *src, System::NativeUInt count, TcudaMemcpyKind kind);
  251. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyFromArray)(void *dst, const PcudaArray src, System::NativeUInt wOffset, System::NativeUInt hOffset, System::NativeUInt count, TcudaMemcpyKind kind);
  252. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyArrayToArray)(PcudaArray dst, System::NativeUInt wOffsetDst, System::NativeUInt hOffsetDst, const PcudaArray src, System::NativeUInt wOffsetSrc, System::NativeUInt hOffsetSrc, System::NativeUInt count, const TcudaMemcpyKind kind/* = (TcudaMemcpyKind)(0x3)*/);
  253. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy2D)(void *dst, System::NativeUInt dpitch, void *src, System::NativeUInt spitch, System::NativeUInt width, System::NativeUInt height, TcudaMemcpyKind kind);
  254. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy2DToArray)(PcudaArray dst, System::NativeUInt wOffset, System::NativeUInt hOffset, void *src, System::NativeUInt spitch, System::NativeUInt width, System::NativeUInt height, TcudaMemcpyKind kind);
  255. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy2DFromArray)(void *dst, System::NativeUInt dpitch, PcudaArray src, System::NativeUInt wOffset, System::NativeUInt hOffset, System::NativeUInt width, System::NativeUInt height, TcudaMemcpyKind kind);
  256. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy2DArrayToArray)(PcudaArray dst, System::NativeUInt wOffsetDst, System::NativeUInt hOffsetDst, PcudaArray src, System::NativeUInt wOffsetSrc, System::NativeUInt hOffsetSrc, System::NativeUInt width, System::NativeUInt height, const TcudaMemcpyKind kind/* = (TcudaMemcpyKind)(0x3)*/);
  257. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyToSymbol)(char * symbol, void *src, System::NativeUInt count, const System::NativeUInt offset/* = (unsigned)(0x0)*/, const TcudaMemcpyKind kind/* = (TcudaMemcpyKind)(0x1)*/);
  258. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyFromSymbol)(void *dst, char * symbol, System::NativeUInt count, const System::NativeUInt offset/* = (unsigned)(0x0)*/, const TcudaMemcpyKind kind/* = (TcudaMemcpyKind)(0x2)*/);
  259. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyAsync)(void *dst, const void *src, System::NativeUInt count, TcudaMemcpyKind kind, cudaStream_t stream);
  260. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyToArrayAsync)(PcudaArray dst, System::NativeUInt wOffset, System::NativeUInt hOffset, const void *src, System::NativeUInt count, TcudaMemcpyKind kind, cudaStream_t stream);
  261. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyFromArrayAsync)(void *dst, const PcudaArray src, System::NativeUInt wOffset, System::NativeUInt hOffset, System::NativeUInt count, TcudaMemcpyKind kind, cudaStream_t stream);
  262. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy2DAsync)(void *dst, System::NativeUInt dpitch, const void *src, System::NativeUInt spitch, System::NativeUInt width, System::NativeUInt height, TcudaMemcpyKind kind, cudaStream_t stream);
  263. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy2DToArrayAsync)(PcudaArray dst, System::NativeUInt wOffset, System::NativeUInt hOffset, const void *src, System::NativeUInt spitch, System::NativeUInt width, System::NativeUInt height, TcudaMemcpyKind kind, cudaStream_t stream);
  264. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpy2DFromArrayAsync)(void *dst, System::NativeUInt dpitch, const PcudaArray src, System::NativeUInt wOffset, System::NativeUInt hOffset, System::NativeUInt width, System::NativeUInt height, TcudaMemcpyKind kind, cudaStream_t stream);
  265. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyToSymbolAsync)(const char * symbol, const void *src, System::NativeUInt count, System::NativeUInt offset, TcudaMemcpyKind kind, cudaStream_t stream);
  266. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemcpyFromSymbolAsync)(void *dst, const char * symbol, System::NativeUInt count, System::NativeUInt offset, TcudaMemcpyKind kind, cudaStream_t stream);
  267. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemset)(void *devPtr, int value, System::NativeUInt count);
  268. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaMemset2D)(void *devPtr, System::NativeUInt pitch, int value, System::NativeUInt width, System::NativeUInt height);
  269. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetSymbolAddress)(void * &devPtr, const char * symbol);
  270. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetSymbolSize)(System::NativeUInt &size, const char * symbol);
  271. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetDeviceCount)(int &count);
  272. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetDeviceProperties)(TCudaDeviceProp &prop, int device);
  273. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaChooseDevice)(int &device, const PCudaDeviceProp prop);
  274. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaSetDevice)(int device);
  275. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetDevice)(int &device);
  276. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaSetDeviceFlags)(int flags);
  277. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaSetValidDevices)(System::PInteger device_arr, int len);
  278. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaConfigureCall)(const Cuda::Import::TDim3 &gridDim, const Cuda::Import::TDim3 &blockDim, System::NativeUInt sharedMem, cudaStream_t stream);
  279. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaSetupArgument)(const void * arg, System::NativeUInt size, System::NativeUInt offset);
  280. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaFuncSetCacheConfig)(const char * func, Cuda::Import::TcudaFuncCache cacheConfig);
  281. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaLaunch)(const char * entry);
  282. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaFuncGetAttributes)(Cuda::Import::TcudaFuncAttributes &attr, const char * func);
  283. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGetLastError)(void);
  284. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGLSetGLDevice)(int device);
  285. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGLRegisterBufferObject)(unsigned bufObj);
  286. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGraphicsGLRegisterImage)(const Cuda::Import::PCUgraphicsResource resource, unsigned image, unsigned target, unsigned flags);
  287. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGraphicsGLRegisterBuffer)(const Cuda::Import::PCUgraphicsResource resource, unsigned buffer, unsigned flags);
  288. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGLMapBufferObject)(void * devPtr, unsigned bufObj);
  289. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGLUnmapBufferObject)(unsigned bufObj);
  290. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGLUnregisterBufferObject)(unsigned bufObj);
  291. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGLSetBufferObjectMapFlags)(unsigned bufObj, TCudaGLMapFlags flags);
  292. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGLMapBufferObjectAsync)(void * &devPtr, unsigned bufObj, cudaStream_t stream);
  293. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGLUnmapBufferObjectAsync)(unsigned bufObj, cudaStream_t stream);
  294. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGraphicsUnregisterResource)(Cuda::Import::PCUgraphicsResource resource);
  295. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGraphicsResourceSetMapFlags)(Cuda::Import::PCUgraphicsResource resource, unsigned flags);
  296. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGraphicsMapResources)(int count, const Cuda::Import::PCUgraphicsResource resources, cudaStream_t stream);
  297. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGraphicsUnmapResources)(int count, const Cuda::Import::PCUgraphicsResource resources, cudaStream_t stream);
  298. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGraphicsResourceGetMappedPointer)(Cuda::Import::TCUdeviceptr &pDevPtr, unsigned &pSize, Cuda::Import::PCUgraphicsResource resource);
  299. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaGraphicsSubResourceGetMappedArray)(Cuda::Import::PCUarray &pArray, Cuda::Import::PCUgraphicsResource resource, unsigned arrayIndex, unsigned mipLevel);
  300. extern DELPHI_PACKAGE char * __stdcall (*cudaGetErrorString)(cudaError_t error);
  301. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaDriverGetVersion)(/* out */ int &driverVersion);
  302. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaRuntimeGetVersion)(/* out */ int &runtimeVersion);
  303. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaSetDoubleForDevice)(double &d);
  304. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaSetDoubleForHost)(double &d);
  305. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaStreamCreate)(cudaStream_t &pStream);
  306. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaStreamDestroy)(cudaStream_t stream);
  307. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaStreamSynchronize)(cudaStream_t stream);
  308. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaStreamQuery)(cudaStream_t stream);
  309. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaEventCreate)(cudaEvent_t &event);
  310. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaEventCreateWithFlags)(cudaEvent_t &event, int flags);
  311. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaEventRecord)(cudaEvent_t event, cudaStream_t stream);
  312. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaEventQuery)(cudaEvent_t event);
  313. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaEventSynchronize)(cudaEvent_t event);
  314. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaEventDestroy)(cudaEvent_t event);
  315. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaEventElapsedTime)(float &ms, cudaEvent_t start, cudaEvent_t ending);
  316. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaWGLGetDevice)(int &device, Cuda::Import::HGPUNV hGpu);
  317. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaThreadExit)(void);
  318. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaThreadSynchronize)(void);
  319. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaThreadSetLimit)(Cuda::Import::TcudaLimit limit, System::NativeUInt value);
  320. extern DELPHI_PACKAGE TcudaError __stdcall (*cudaThreadGetLimit)(System::NativeUInt &value, Cuda::Import::TcudaLimit limit);
  321. extern DELPHI_PACKAGE System::UnicodeString __fastcall cudaGetLastErrorString(void);
  322. extern DELPHI_PACKAGE bool __fastcall InitCUDART(void);
  323. extern DELPHI_PACKAGE void __fastcall CloseCUDART(void);
  324. extern DELPHI_PACKAGE bool __fastcall InitCUDARTFromLibrary(const System::WideString LibName);
  325. extern DELPHI_PACKAGE bool __fastcall IsCUDARTInitialized(void);
  326. } /* namespace Runtime */
  327. } /* namespace Cuda */
  328. #if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_CUDA_RUNTIME)
  329. using namespace Cuda::Runtime;
  330. #endif
  331. #if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_CUDA)
  332. using namespace Cuda;
  333. #endif
  334. #pragma pack(pop)
  335. #pragma option pop
  336. #pragma delphiheader end.
  337. //-- end unit ----------------------------------------------------------------
  338. #endif // CUDA_RuntimeHPP