HIP: Heterogenous-computing Interface for Portability
hip_runtime_api.h
Go to the documentation of this file.
1 /*
2 Copyright (c) 2015 - 2022 Advanced Micro Devices, Inc. All rights reserved.
3 
4 Permission is hereby granted, free of charge, to any person obtaining a copy
5 of this software and associated documentation files (the "Software"), to deal
6 in the Software without restriction, including without limitation the rights
7 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 copies of the Software, and to permit persons to whom the Software is
9 furnished to do so, subject to the following conditions:
10 
11 The above copyright notice and this permission notice shall be included in
12 all copies or substantial portions of the Software.
13 
14 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 THE SOFTWARE.
21 */
22 
30 #ifndef HIP_INCLUDE_HIP_HIP_RUNTIME_API_H
31 #define HIP_INCLUDE_HIP_HIP_RUNTIME_API_H
32 
33 
34 #include <string.h> // for getDeviceProp
35 #include <hip/hip_version.h>
36 #include <hip/hip_common.h>
37 
38 enum {
39  HIP_SUCCESS = 0,
40  HIP_ERROR_INVALID_VALUE,
41  HIP_ERROR_NOT_INITIALIZED,
42  HIP_ERROR_LAUNCH_OUT_OF_RESOURCES
43 };
44 
45 typedef struct {
46  // 32-bit Atomics
47  unsigned hasGlobalInt32Atomics : 1;
48  unsigned hasGlobalFloatAtomicExch : 1;
49  unsigned hasSharedInt32Atomics : 1;
50  unsigned hasSharedFloatAtomicExch : 1;
51  unsigned hasFloatAtomicAdd : 1;
52 
53  // 64-bit Atomics
54  unsigned hasGlobalInt64Atomics : 1;
55  unsigned hasSharedInt64Atomics : 1;
56 
57  // Doubles
58  unsigned hasDoubles : 1;
59 
60  // Warp cross-lane operations
61  unsigned hasWarpVote : 1;
62  unsigned hasWarpBallot : 1;
63  unsigned hasWarpShuffle : 1;
64  unsigned hasFunnelShift : 1;
65 
66  // Sync
67  unsigned hasThreadFenceSystem : 1;
68  unsigned hasSyncThreadsExt : 1;
69 
70  // Misc
71  unsigned hasSurfaceFuncs : 1;
72  unsigned has3dGrid : 1;
73  unsigned hasDynamicParallelism : 1;
75 
76 typedef struct hipUUID_t {
77  char bytes[16];
78 } hipUUID;
79 
80 //---
81 // Common headers for both NVCC and HCC paths:
82 
87 typedef struct hipDeviceProp_t {
88  char name[256];
89  size_t totalGlobalMem;
92  int warpSize;
94  int maxThreadsDim[3];
95  int maxGridSize[3];
96  int clockRate;
99  size_t totalConstMem;
100  int major;
101  int minor;
104  int multiProcessorCount;
115  int pciBusID;
120  int gcnArch;
121  char gcnArchName[256];
127  int maxTexture2D[2];
128  int maxTexture3D[3];
129  unsigned int* hdpMemFlushCntl;
130  unsigned int* hdpRegFlushCntl;
131  size_t memPitch;
136  int tccDriver;
144  int isLargeBar;
154 
155 
159 typedef enum hipMemoryType {
168 
172 typedef struct hipPointerAttribute_t {
173  enum hipMemoryType memoryType;
174  int device;
175  void* devicePointer;
176  void* hostPointer;
177  int isManaged;
178  unsigned allocationFlags; /* flags specified when memory was allocated*/
179  /* peers? */
181 
182 
183 // hack to get these to show up in Doxygen:
190 // Ignoring error-code return values from hip APIs is discouraged. On C++17,
191 // we can make that yield a warning
192 #if __cplusplus >= 201703L
193 #define __HIP_NODISCARD [[nodiscard]]
194 #else
195 #define __HIP_NODISCARD
196 #endif
197 
198 /*
199  * @brief hipError_t
200  * @enum
201  * @ingroup Enumerations
202  */
203 // Developer note - when updating these, update the hipErrorName and hipErrorString functions in
204 // NVCC and HCC paths Also update the hipCUDAErrorTohipError function in NVCC path.
205 
206 typedef enum __HIP_NODISCARD hipError_t {
209  hipErrorOutOfMemory = 2,
211  // Deprecated
213  hipErrorNotInitialized = 3,
214  // Deprecated
215  hipErrorInitializationError = 3,
216  hipErrorDeinitialized = 4,
217  hipErrorProfilerDisabled = 5,
218  hipErrorProfilerNotInitialized = 6,
219  hipErrorProfilerAlreadyStarted = 7,
220  hipErrorProfilerAlreadyStopped = 8,
221  hipErrorInvalidConfiguration = 9,
222  hipErrorInvalidPitchValue = 12,
223  hipErrorInvalidSymbol = 13,
226  hipErrorInsufficientDriver = 35,
227  hipErrorMissingConfiguration = 52,
228  hipErrorPriorLaunchFailure = 53,
229  hipErrorInvalidDeviceFunction = 98,
232  hipErrorInvalidImage = 200,
234  hipErrorContextAlreadyCurrent = 202,
235  hipErrorMapFailed = 205,
236  // Deprecated
238  hipErrorUnmapFailed = 206,
239  hipErrorArrayIsMapped = 207,
240  hipErrorAlreadyMapped = 208,
241  hipErrorNoBinaryForGpu = 209,
242  hipErrorAlreadyAcquired = 210,
243  hipErrorNotMapped = 211,
244  hipErrorNotMappedAsArray = 212,
245  hipErrorNotMappedAsPointer = 213,
246  hipErrorECCNotCorrectable = 214,
247  hipErrorUnsupportedLimit = 215,
248  hipErrorContextAlreadyInUse = 216,
249  hipErrorPeerAccessUnsupported = 217,
251  hipErrorInvalidGraphicsContext = 219,
252  hipErrorInvalidSource = 300,
253  hipErrorFileNotFound = 301,
254  hipErrorSharedObjectSymbolNotFound = 302,
255  hipErrorSharedObjectInitFailed = 303,
256  hipErrorOperatingSystem = 304,
257  hipErrorInvalidHandle = 400,
258  // Deprecated
261  hipErrorNotFound = 500,
263  hipErrorIllegalAddress = 700,
268  hipErrorLaunchTimeOut = 702,
270  704,
272  705,
273  hipErrorSetOnActiveProcess = 708,
274  hipErrorContextIsDestroyed = 709,
277  712,
279  713,
281  719,
283  720,
284  hipErrorNotSupported = 801,
301  hipErrorCapturedEvent = 907,
310  hipErrorUnknown = 999, //< Unknown error.
314  // HSA Runtime Error Codes start here.
316  hipErrorRuntimeOther = 1053,
318  hipErrorTbd
320 } hipError_t;
321 
322 #undef __HIP_NODISCARD
323 
324 /*
325  * @brief hipDeviceAttribute_t
326  * @enum
327  * @ingroup Enumerations
328  */
329 typedef enum hipDeviceAttribute_t {
330  hipDeviceAttributeCudaCompatibleBegin = 0,
331 
332  hipDeviceAttributeEccEnabled = hipDeviceAttributeCudaCompatibleBegin,
428 
429  hipDeviceAttributeCudaCompatibleEnd = 9999,
430  hipDeviceAttributeAmdSpecificBegin = 10000,
431 
432  hipDeviceAttributeClockInstructionRate = hipDeviceAttributeAmdSpecificBegin,
456 
457  hipDeviceAttributeAmdSpecificEnd = 19999,
458  hipDeviceAttributeVendorSpecificBegin = 20000,
459  // Extended attributes for vendors
461 
462 enum hipComputeMode {
463  hipComputeModeDefault = 0,
464  hipComputeModeExclusive = 1,
465  hipComputeModeProhibited = 2,
466  hipComputeModeExclusiveProcess = 3
467 };
468 
473 #if (defined(__HIP_PLATFORM_HCC__) || defined(__HIP_PLATFORM_AMD__)) && !(defined(__HIP_PLATFORM_NVCC__) || defined(__HIP_PLATFORM_NVIDIA__))
474 
475 #include <stdint.h>
476 #include <stddef.h>
477 #ifndef GENERIC_GRID_LAUNCH
478 #define GENERIC_GRID_LAUNCH 1
479 #endif
480 #include <hip/amd_detail/host_defines.h>
481 #include <hip/driver_types.h>
482 #include <hip/texture_types.h>
483 #include <hip/surface_types.h>
484 #if defined(_MSC_VER)
485 #define DEPRECATED(msg) __declspec(deprecated(msg))
486 #else // !defined(_MSC_VER)
487 #define DEPRECATED(msg) __attribute__ ((deprecated(msg)))
488 #endif // !defined(_MSC_VER)
489 #define DEPRECATED_MSG "This API is marked as deprecated and may not be supported in future releases. For more details please refer https://github.com/ROCm-Developer-Tools/HIP/blob/master/docs/markdown/hip_deprecated_api_list.md"
490 #define HIP_LAUNCH_PARAM_BUFFER_POINTER ((void*)0x01)
491 #define HIP_LAUNCH_PARAM_BUFFER_SIZE ((void*)0x02)
492 #define HIP_LAUNCH_PARAM_END ((void*)0x03)
493 #ifdef __cplusplus
494  #define __dparm(x) \
495  = x
496 #else
497  #define __dparm(x)
498 #endif
499 #ifdef __GNUC__
500 #pragma GCC visibility push (default)
501 #endif
502 #ifdef __cplusplus
503 namespace hip_impl {
504 hipError_t hip_init();
505 } // namespace hip_impl
506 #endif
507 // Structure definitions:
508 #ifdef __cplusplus
509 extern "C" {
510 #endif
511 //---
512 // API-visible structures
513 typedef struct ihipCtx_t* hipCtx_t;
514 // Note many APIs also use integer deviceIds as an alternative to the device pointer:
515 typedef int hipDevice_t;
516 typedef enum hipDeviceP2PAttr {
517  hipDevP2PAttrPerformanceRank = 0,
518  hipDevP2PAttrAccessSupported,
519  hipDevP2PAttrNativeAtomicSupported,
520  hipDevP2PAttrHipArrayAccessSupported
521 } hipDeviceP2PAttr;
522 typedef struct ihipStream_t* hipStream_t;
523 #define hipIpcMemLazyEnablePeerAccess 0
524 #define HIP_IPC_HANDLE_SIZE 64
525 typedef struct hipIpcMemHandle_st {
526  char reserved[HIP_IPC_HANDLE_SIZE];
528 typedef struct hipIpcEventHandle_st {
529  char reserved[HIP_IPC_HANDLE_SIZE];
531 typedef struct ihipModule_t* hipModule_t;
532 typedef struct ihipModuleSymbol_t* hipFunction_t;
536 typedef struct ihipMemPoolHandle_t* hipMemPool_t;
537 
538 typedef struct hipFuncAttributes {
539  int binaryVersion;
540  int cacheModeCA;
541  size_t constSizeBytes;
542  size_t localSizeBytes;
543  int maxDynamicSharedSizeBytes;
544  int maxThreadsPerBlock;
545  int numRegs;
546  int preferredShmemCarveout;
547  int ptxVersion;
548  size_t sharedSizeBytes;
550 typedef struct ihipEvent_t* hipEvent_t;
551 enum hipLimit_t {
552  hipLimitStackSize = 0x0, // limit device stack size
553  hipLimitPrintfFifoSize = 0x01, // limit printf fifo size
554  hipLimitMallocHeapSize = 0x02, // limit heap size
555  hipLimitRange // supported limit range
556 };
561 //Flags that can be used with hipStreamCreateWithFlags.
563 #define hipStreamDefault 0x00
564 
566 #define hipStreamNonBlocking 0x01
567 
568 //Flags that can be used with hipEventCreateWithFlags.
570 #define hipEventDefault 0x0
571 
573 #define hipEventBlockingSync 0x1
574 
576 #define hipEventDisableTiming 0x2
577 
579 #define hipEventInterprocess 0x4
580 
583 #define hipEventReleaseToDevice 0x40000000
584 
587 #define hipEventReleaseToSystem 0x80000000
588 
589 //Flags that can be used with hipHostMalloc.
591 #define hipHostMallocDefault 0x0
592 
594 #define hipHostMallocPortable 0x1
595 
598 #define hipHostMallocMapped 0x2
599 
603 #define hipHostMallocWriteCombined 0x4
604 
606 #define hipHostMallocNumaUser 0x20000000
607 
609 #define hipHostMallocCoherent 0x40000000
610 
612 #define hipHostMallocNonCoherent 0x80000000
613 
615 #define hipMemAttachGlobal 0x01
616 
618 #define hipMemAttachHost 0x02
619 
621 #define hipMemAttachSingle 0x04
622 
623 #define hipDeviceMallocDefault 0x0
624 
626 #define hipDeviceMallocFinegrained 0x1
627 
629 #define hipMallocSignalMemory 0x2
630 
631 //Flags that can be used with hipHostRegister.
633 #define hipHostRegisterDefault 0x0
634 
636 #define hipHostRegisterPortable 0x1
637 
640 #define hipHostRegisterMapped 0x2
641 
643 #define hipHostRegisterIoMemory 0x4
644 
646 #define hipExtHostRegisterCoarseGrained 0x8
647 
649 #define hipDeviceScheduleAuto 0x0
650 
653 #define hipDeviceScheduleSpin 0x1
654 
657 #define hipDeviceScheduleYield 0x2
658 #define hipDeviceScheduleBlockingSync 0x4
659 #define hipDeviceScheduleMask 0x7
660 #define hipDeviceMapHost 0x8
661 #define hipDeviceLmemResizeToMax 0x10
662 
663 #define hipArrayDefault 0x00
664 #define hipArrayLayered 0x01
665 #define hipArraySurfaceLoadStore 0x02
666 #define hipArrayCubemap 0x04
667 #define hipArrayTextureGather 0x08
668 #define hipOccupancyDefault 0x00
669 #define hipCooperativeLaunchMultiDeviceNoPreSync 0x01
670 #define hipCooperativeLaunchMultiDeviceNoPostSync 0x02
671 #define hipCpuDeviceId ((int)-1)
672 #define hipInvalidDeviceId ((int)-2)
673 //Flags that can be used with hipExtLaunch Set of APIs.
675 #define hipExtAnyOrderLaunch 0x01
676 // Flags to be used with hipStreamWaitValue32 and hipStreamWaitValue64.
677 #define hipStreamWaitValueGte 0x0
678 #define hipStreamWaitValueEq 0x1
679 #define hipStreamWaitValueAnd 0x2
680 #define hipStreamWaitValueNor 0x3
681 // Stream per thread
683 #define hipStreamPerThread ((hipStream_t)2)
684 /*
685  * @brief HIP Memory Advise values
686  * @enum
687  * @ingroup Enumerations
688  */
689 typedef enum hipMemoryAdvise {
707 /*
708  * @brief HIP Coherency Mode
709  * @enum
710  * @ingroup Enumerations
711  */
721 /*
722  * @brief HIP range attributes
723  * @enum
724  * @ingroup Enumerations
725  */
726 typedef enum hipMemRangeAttribute {
737 
743 typedef enum hipMemPoolAttr
744 {
804  typedef enum hipMemLocationType {
805  hipMemLocationTypeInvalid = 0,
813 typedef struct hipMemLocation {
815  int id;
822 typedef enum hipMemAccessFlags {
830 typedef struct hipMemAccessDesc {
839 typedef enum hipMemAllocationType {
840  hipMemAllocationTypeInvalid = 0x0,
845  hipMemAllocationTypeMax = 0x7FFFFFFF
861 typedef struct hipMemPoolProps {
865 
869  unsigned char reserved[64];
874 typedef struct hipMemPoolPtrExportData {
875  unsigned char reserved[64];
877 
878 /*
879  * @brief hipJitOption
880  * @enum
881  * @ingroup Enumerations
882  */
883 typedef enum hipJitOption {
884  hipJitOptionMaxRegisters = 0,
885  hipJitOptionThreadsPerBlock,
886  hipJitOptionWallTime,
887  hipJitOptionInfoLogBuffer,
888  hipJitOptionInfoLogBufferSizeBytes,
889  hipJitOptionErrorLogBuffer,
890  hipJitOptionErrorLogBufferSizeBytes,
891  hipJitOptionOptimizationLevel,
892  hipJitOptionTargetFromContext,
893  hipJitOptionTarget,
894  hipJitOptionFallbackStrategy,
895  hipJitOptionGenerateDebugInfo,
896  hipJitOptionLogVerbose,
897  hipJitOptionGenerateLineInfo,
898  hipJitOptionCacheMode,
899  hipJitOptionSm3xOpt,
900  hipJitOptionFastCompile,
901  hipJitOptionNumOptions
902 } hipJitOption;
906 typedef enum hipFuncAttribute {
907  hipFuncAttributeMaxDynamicSharedMemorySize = 8,
908  hipFuncAttributePreferredSharedMemoryCarveout = 9,
909  hipFuncAttributeMax
914 typedef enum hipFuncCache_t {
923 typedef enum hipSharedMemConfig {
934 typedef struct dim3 {
935  uint32_t x;
936  uint32_t y;
937  uint32_t z;
938 #ifdef __cplusplus
939  constexpr __host__ __device__ dim3(uint32_t _x = 1, uint32_t _y = 1, uint32_t _z = 1) : x(_x), y(_y), z(_z){};
940 #endif
942 typedef struct hipLaunchParams_t {
943  void* func;
946  void **args;
947  size_t sharedMem;
948  hipStream_t stream;
950 typedef enum hipExternalMemoryHandleType_enum {
951  hipExternalMemoryHandleTypeOpaqueFd = 1,
952  hipExternalMemoryHandleTypeOpaqueWin32 = 2,
953  hipExternalMemoryHandleTypeOpaqueWin32Kmt = 3,
954  hipExternalMemoryHandleTypeD3D12Heap = 4,
955  hipExternalMemoryHandleTypeD3D12Resource = 5,
956  hipExternalMemoryHandleTypeD3D11Resource = 6,
957  hipExternalMemoryHandleTypeD3D11ResourceKmt = 7,
958 } hipExternalMemoryHandleType;
960  hipExternalMemoryHandleType type;
961  union {
962  int fd;
963  struct {
964  void *handle;
965  const void *name;
966  } win32;
967  } handle;
968  unsigned long long size;
969  unsigned int flags;
972  unsigned long long offset;
973  unsigned long long size;
974  unsigned int flags;
976 typedef void* hipExternalMemory_t;
977 typedef enum hipExternalSemaphoreHandleType_enum {
978  hipExternalSemaphoreHandleTypeOpaqueFd = 1,
979  hipExternalSemaphoreHandleTypeOpaqueWin32 = 2,
980  hipExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3,
981  hipExternalSemaphoreHandleTypeD3D12Fence = 4
982 } hipExternalSemaphoreHandleType;
984  hipExternalSemaphoreHandleType type;
985  union {
986  int fd;
987  struct {
988  void* handle;
989  const void* name;
990  } win32;
991  } handle;
992  unsigned int flags;
994 typedef void* hipExternalSemaphore_t;
996  struct {
997  struct {
998  unsigned long long value;
999  } fence;
1000  struct {
1001  unsigned long long key;
1002  } keyedMutex;
1003  unsigned int reserved[12];
1004  } params;
1005  unsigned int flags;
1006  unsigned int reserved[16];
1012  struct {
1013  struct {
1014  unsigned long long value;
1015  } fence;
1016  struct {
1017  unsigned long long key;
1018  unsigned int timeoutMs;
1019  } keyedMutex;
1020  unsigned int reserved[10];
1021  } params;
1022  unsigned int flags;
1023  unsigned int reserved[16];
1025 
1026 #if __HIP_HAS_GET_PCH
1027 
1032  void __hipGetPCH(const char** pch, unsigned int*size);
1033 #endif
1034 
1035 /*
1036  * @brief HIP Devices used by current OpenGL Context.
1037  * @enum
1038  * @ingroup Enumerations
1039  */
1040 typedef enum hipGLDeviceList {
1045 } hipGLDeviceList;
1047 
1048 /*
1049  * @brief HIP Access falgs for Interop resources.
1050  * @enum
1051  * @ingroup Enumerations
1052  */
1054  hipGraphicsRegisterFlagsNone = 0,
1057  2,
1060  8
1062 
1063 typedef struct _hipGraphicsResource hipGraphicsResource;
1064 
1065 typedef hipGraphicsResource* hipGraphicsResource_t;
1066 
1070 typedef struct ihipGraph* hipGraph_t;
1074 typedef struct hipGraphNode* hipGraphNode_t;
1078 typedef struct hipGraphExec* hipGraphExec_t;
1079 
1083 typedef struct hipUserObject* hipUserObject_t;
1084 
1085 
1091 typedef enum hipGraphNodeType {
1104  hipGraphNodeTypeCount
1106 
1107 typedef void (*hipHostFn_t)(void* userData);
1108 typedef struct hipHostNodeParams {
1109  hipHostFn_t fn;
1110  void* userData;
1112 typedef struct hipKernelNodeParams {
1113  dim3 blockDim;
1114  void** extra;
1115  void* func;
1116  dim3 gridDim;
1117  void** kernelParams;
1118  unsigned int sharedMemBytes;
1120 typedef struct hipMemsetParams {
1121  void* dst;
1122  unsigned int elementSize;
1123  size_t height;
1124  size_t pitch;
1125  unsigned int value;
1126  size_t width;
1127 } hipMemsetParams;
1128 
1134 typedef enum hipKernelNodeAttrID {
1135  hipKernelNodeAttributeAccessPolicyWindow = 1,
1136  hipKernelNodeAttributeCooperative = 2,
1137 } hipKernelNodeAttrID;
1138 typedef enum hipAccessProperty {
1139  hipAccessPropertyNormal = 0,
1140  hipAccessPropertyStreaming = 1,
1141  hipAccessPropertyPersisting = 2,
1142 } hipAccessProperty;
1143 typedef struct hipAccessPolicyWindow {
1144  void* base_ptr;
1145  hipAccessProperty hitProp;
1146  float hitRatio;
1147  hipAccessProperty missProp;
1148  size_t num_bytes;
1150 typedef union hipKernelNodeAttrValue {
1151  hipAccessPolicyWindow accessPolicyWindow;
1152  int cooperative;
1154 
1162  hipGraphExecUpdateError = 0x1,
1167  0x4,
1169  0x5,
1171  0x6,
1172  hipGraphExecUpdateErrorUnsupportedFunctionChange = 0x7
1174 
1175 typedef enum hipStreamCaptureMode {
1176  hipStreamCaptureModeGlobal = 0,
1177  hipStreamCaptureModeThreadLocal,
1178  hipStreamCaptureModeRelaxed
1179 } hipStreamCaptureMode;
1186 
1191 
1198 typedef enum hipUserObjectFlags {
1201 
1205 
1208  1,
1210 
1214 typedef struct hipMemAllocationProp {
1219  struct {
1220  unsigned char compressionType;
1221  unsigned char gpuDirectRDMACapable;
1222  unsigned short usage;
1223  } allocFlags;
1225 
1229 typedef struct ihipMemGenericAllocationHandle* hipMemGenericAllocationHandle_t;
1230 
1240 
1246 typedef enum hipMemHandleType {
1249 
1255 typedef enum hipMemOperationType {
1259 
1269 
1273 typedef struct hipArrayMapInfo {
1274  hipResourceType resourceType;
1275  union {
1276  hipMipmappedArray mipmap;
1277  hipArray_t array;
1278  } resource;
1280  union {
1281  struct {
1282  unsigned int level;
1283  unsigned int layer;
1284  unsigned int offsetX;
1285  unsigned int offsetY;
1286  unsigned int offsetZ;
1287  unsigned int extentWidth;
1288  unsigned int extentHeight;
1289  unsigned int extentDepth;
1290  } sparseLevel;
1291  struct {
1292  unsigned int layer;
1293  unsigned long long offset;
1294  unsigned long long size;
1295  } miptail;
1296  } subresource;
1299  union {
1301  } memHandle;
1302  unsigned long long offset;
1303  unsigned int deviceBitMask;
1304  unsigned int flags;
1305  unsigned int reserved[2];
1307 // Doxygen end group GlobalDefs
1309 //-------------------------------------------------------------------------------------------------
1310 // The handle allows the async commands to use the stream even if the parent hipStream_t goes
1311 // out-of-scope.
1312 // typedef class ihipStream_t * hipStream_t;
1313 /*
1314  * Opaque structure allows the true event (pointed at by the handle) to remain "live" even if the
1315  * surrounding hipEvent_t goes out-of-scope. This is handy for cases where the hipEvent_t goes
1316  * out-of-scope but the true event is being written by some async queue or device */
1317 // typedef struct hipEvent_t {
1318 // struct ihipEvent_t *_handle;
1319 //} hipEvent_t;
1338 // TODO-ctx - more description on error codes.
1339 hipError_t hipInit(unsigned int flags);
1355 hipError_t hipDriverGetVersion(int* driverVersion);
1370 hipError_t hipRuntimeGetVersion(int* runtimeVersion);
1378 hipError_t hipDeviceGet(hipDevice_t* device, int ordinal);
1379 
1388 hipError_t hipDeviceComputeCapability(int* major, int* minor, hipDevice_t device);
1397 hipError_t hipDeviceGetName(char* name, int len, hipDevice_t device);
1409 hipError_t hipDeviceGetUuid(hipUUID* uuid, hipDevice_t device);
1419 hipError_t hipDeviceGetP2PAttribute(int* value, hipDeviceP2PAttr attr,
1420  int srcDevice, int dstDevice);
1429 hipError_t hipDeviceGetPCIBusId(char* pciBusId, int len, int device);
1437 hipError_t hipDeviceGetByPCIBusId(int* device, const char* pciBusId);
1445 hipError_t hipDeviceTotalMem(size_t* bytes, hipDevice_t device);
1446 // doxygen end initialization
1465 hipError_t hipDeviceSynchronize(void);
1477 hipError_t hipDeviceReset(void);
1509 hipError_t hipSetDevice(int deviceId);
1523 hipError_t hipGetDevice(int* deviceId);
1536 hipError_t hipGetDeviceCount(int* count);
1546 hipError_t hipDeviceGetAttribute(int* pi, hipDeviceAttribute_t attr, int deviceId);
1561 hipError_t hipDeviceGetDefaultMemPool(hipMemPool_t* mem_pool, int device);
1583 hipError_t hipDeviceSetMemPool(int device, hipMemPool_t mem_pool);
1603 hipError_t hipDeviceGetMemPool(hipMemPool_t* mem_pool, int device);
1617 hipError_t hipGetDeviceProperties(hipDeviceProp_t* prop, int deviceId);
1628 hipError_t hipDeviceSetCacheConfig(hipFuncCache_t cacheConfig);
1639 hipError_t hipDeviceGetCacheConfig(hipFuncCache_t* cacheConfig);
1650 hipError_t hipDeviceGetLimit(size_t* pValue, enum hipLimit_t limit);
1660 hipError_t hipDeviceSetLimit ( enum hipLimit_t limit, size_t value );
1680 hipError_t hipGetDeviceFlags(unsigned int* flags);
1717 hipError_t hipSetDeviceFlags(unsigned flags);
1726 hipError_t hipChooseDevice(int* device, const hipDeviceProp_t* prop);
1739 hipError_t hipExtGetLinkTypeAndHopCount(int device1, int device2, uint32_t* linktype, uint32_t* hopcount);
1740 // TODO: implement IPC apis
1766 hipError_t hipIpcGetMemHandle(hipIpcMemHandle_t* handle, void* devPtr);
1804 hipError_t hipIpcOpenMemHandle(void** devPtr, hipIpcMemHandle_t handle, unsigned int flags);
1823 hipError_t hipIpcCloseMemHandle(void* devPtr);
1824 
1839 hipError_t hipIpcGetEventHandle(hipIpcEventHandle_t* handle, hipEvent_t event);
1840 
1856 hipError_t hipIpcOpenEventHandle(hipEvent_t* event, hipIpcEventHandle_t handle);
1857 
1858 // end doxygen Device
1882 hipError_t hipFuncSetAttribute(const void* func, hipFuncAttribute attr, int value);
1893 hipError_t hipFuncSetCacheConfig(const void* func, hipFuncCache_t config);
1906 hipError_t hipFuncSetSharedMemConfig(const void* func, hipSharedMemConfig config);
1907 //doxygen end execution
1929 hipError_t hipGetLastError(void);
1940 hipError_t hipPeekAtLastError(void);
1949 const char* hipGetErrorName(hipError_t hip_error);
1958 const char* hipGetErrorString(hipError_t hipError);
1968 hipError_t hipDrvGetErrorName(hipError_t hipError, const char** errorString);
1978 hipError_t hipDrvGetErrorString(hipError_t hipError, const char** errorString);
1979 // end doxygen Error
2009 hipError_t hipStreamCreate(hipStream_t* stream);
2026 hipError_t hipStreamCreateWithFlags(hipStream_t* stream, unsigned int flags);
2044 hipError_t hipStreamCreateWithPriority(hipStream_t* stream, unsigned int flags, int priority);
2058 hipError_t hipDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
2077 hipError_t hipStreamDestroy(hipStream_t stream);
2093 hipError_t hipStreamQuery(hipStream_t stream);
2113 hipError_t hipStreamSynchronize(hipStream_t stream);
2133 hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags);
2147 hipError_t hipStreamGetFlags(hipStream_t stream, unsigned int* flags);
2161 hipError_t hipStreamGetPriority(hipStream_t stream, int* priority);
2181 hipError_t hipExtStreamCreateWithCUMask(hipStream_t* stream, uint32_t cuMaskSize, const uint32_t* cuMask);
2194 hipError_t hipExtStreamGetCUMask(hipStream_t stream, uint32_t cuMaskSize, uint32_t* cuMask);
2198 typedef void (*hipStreamCallback_t)(hipStream_t stream, hipError_t status, void* userData);
2214 hipError_t hipStreamAddCallback(hipStream_t stream, hipStreamCallback_t callback, void* userData,
2215  unsigned int flags);
2216 // end doxygen Stream
2259 hipError_t hipStreamWaitValue32(hipStream_t stream, void* ptr, uint32_t value, unsigned int flags,
2260  uint32_t mask __dparm(0xFFFFFFFF));
2293 hipError_t hipStreamWaitValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags,
2294  uint64_t mask __dparm(0xFFFFFFFFFFFFFFFF));
2314 hipError_t hipStreamWriteValue32(hipStream_t stream, void* ptr, uint32_t value, unsigned int flags);
2334 hipError_t hipStreamWriteValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags);
2335 // end doxygen Stream Memory Operations
2368 hipError_t hipEventCreateWithFlags(hipEvent_t* event, unsigned flags);
2380 hipError_t hipEventCreate(hipEvent_t* event);
2408 #ifdef __cplusplus
2409 hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream = NULL);
2410 #else
2411 hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream);
2412 #endif
2413 
2429 hipError_t hipEventDestroy(hipEvent_t event);
2447 hipError_t hipEventSynchronize(hipEvent_t event);
2476 hipError_t hipEventElapsedTime(float* ms, hipEvent_t start, hipEvent_t stop);
2492 hipError_t hipEventQuery(hipEvent_t event);
2493 // end doxygen Events
2520 hipError_t hipPointerGetAttributes(hipPointerAttribute_t* attributes, const void* ptr);
2535 hipError_t hipPointerGetAttribute(void* data, hipPointer_attribute attribute,
2536  hipDeviceptr_t ptr);
2553 hipError_t hipDrvPointerGetAttributes(unsigned int numAttributes, hipPointer_attribute* attributes,
2554  void** data, hipDeviceptr_t ptr);
2565 hipError_t hipImportExternalSemaphore(hipExternalSemaphore_t* extSem_out,
2566  const hipExternalSemaphoreHandleDesc* semHandleDesc);
2579 hipError_t hipSignalExternalSemaphoresAsync(const hipExternalSemaphore_t* extSemArray,
2580  const hipExternalSemaphoreSignalParams* paramsArray,
2581  unsigned int numExtSems, hipStream_t stream);
2594 hipError_t hipWaitExternalSemaphoresAsync(const hipExternalSemaphore_t* extSemArray,
2595  const hipExternalSemaphoreWaitParams* paramsArray,
2596  unsigned int numExtSems, hipStream_t stream);
2606 hipError_t hipDestroyExternalSemaphore(hipExternalSemaphore_t extSem);
2607 
2618 hipError_t hipImportExternalMemory(hipExternalMemory_t* extMem_out, const hipExternalMemoryHandleDesc* memHandleDesc);
2630 hipError_t hipExternalMemoryGetMappedBuffer(void **devPtr, hipExternalMemory_t extMem, const hipExternalMemoryBufferDesc *bufferDesc);
2640 hipError_t hipDestroyExternalMemory(hipExternalMemory_t extMem);
2654 hipError_t hipMalloc(void** ptr, size_t size);
2669 hipError_t hipExtMallocWithFlags(void** ptr, size_t sizeBytes, unsigned int flags);
2682 DEPRECATED("use hipHostMalloc instead")
2683 hipError_t hipMallocHost(void** ptr, size_t size);
2696 DEPRECATED("use hipHostMalloc instead")
2697 hipError_t hipMemAllocHost(void** ptr, size_t size);
2711 hipError_t hipHostMalloc(void** ptr, size_t size, unsigned int flags);
2731 hipError_t hipMallocManaged(void** dev_ptr,
2732  size_t size,
2733  unsigned int flags __dparm(hipMemAttachGlobal));
2744 hipError_t hipMemPrefetchAsync(const void* dev_ptr,
2745  size_t count,
2746  int device,
2747  hipStream_t stream __dparm(0));
2758 hipError_t hipMemAdvise(const void* dev_ptr,
2759  size_t count,
2760  hipMemoryAdvise advice,
2761  int device);
2774 hipError_t hipMemRangeGetAttribute(void* data,
2775  size_t data_size,
2776  hipMemRangeAttribute attribute,
2777  const void* dev_ptr,
2778  size_t count);
2793 hipError_t hipMemRangeGetAttributes(void** data,
2794  size_t* data_sizes,
2795  hipMemRangeAttribute* attributes,
2796  size_t num_attributes,
2797  const void* dev_ptr,
2798  size_t count);
2811 hipError_t hipStreamAttachMemAsync(hipStream_t stream,
2812  void* dev_ptr,
2813  size_t length __dparm(0),
2814  unsigned int flags __dparm(hipMemAttachSingle));
2815 // end doxygen Managed Memory
2871 hipError_t hipMallocAsync(void** dev_ptr, size_t size, hipStream_t stream);
2894 hipError_t hipFreeAsync(void* dev_ptr, hipStream_t stream);
2920 hipError_t hipMemPoolTrimTo(hipMemPool_t mem_pool, size_t min_bytes_to_hold);
2957 hipError_t hipMemPoolSetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void* value);
2994 hipError_t hipMemPoolGetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void* value);
3010 hipError_t hipMemPoolSetAccess(hipMemPool_t mem_pool, const hipMemAccessDesc* desc_list, size_t count);
3028 hipError_t hipMemPoolGetAccess(hipMemAccessFlags* flags, hipMemPool_t mem_pool, hipMemLocation* location);
3050 hipError_t hipMemPoolCreate(hipMemPool_t* mem_pool, const hipMemPoolProps* pool_props);
3075 hipError_t hipMemPoolDestroy(hipMemPool_t mem_pool);
3107 hipError_t hipMallocFromPoolAsync(void** dev_ptr, size_t size, hipMemPool_t mem_pool, hipStream_t stream);
3133  void* shared_handle,
3134  hipMemPool_t mem_pool,
3135  hipMemAllocationHandleType handle_type,
3136  unsigned int flags);
3159  hipMemPool_t* mem_pool,
3160  void* shared_handle,
3161  hipMemAllocationHandleType handle_type,
3162  unsigned int flags);
3180 hipError_t hipMemPoolExportPointer(hipMemPoolPtrExportData* export_data, void* dev_ptr);
3208  void** dev_ptr,
3209  hipMemPool_t mem_pool,
3210  hipMemPoolPtrExportData* export_data);
3211 // Doxygen end of ordered memory allocator
3229 DEPRECATED("use hipHostMalloc instead")
3230 hipError_t hipHostAlloc(void** ptr, size_t size, unsigned int flags);
3242 hipError_t hipHostGetDevicePointer(void** devPtr, void* hstPtr, unsigned int flags);
3252 hipError_t hipHostGetFlags(unsigned int* flagsPtr, void* hostPtr);
3289 hipError_t hipHostRegister(void* hostPtr, size_t sizeBytes, unsigned int flags);
3298 hipError_t hipHostUnregister(void* hostPtr);
3317 hipError_t hipMallocPitch(void** ptr, size_t* pitch, size_t width, size_t height);
3339 hipError_t hipMemAllocPitch(hipDeviceptr_t* dptr, size_t* pitch, size_t widthInBytes, size_t height, unsigned int elementSizeBytes);
3353 hipError_t hipFree(void* ptr);
3363 DEPRECATED("use hipHostFree instead")
3364 hipError_t hipFreeHost(void* ptr);
3378 hipError_t hipHostFree(void* ptr);
3408 hipError_t hipMemcpy(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind);
3409 // TODO: Add description
3410 hipError_t hipMemcpyWithStream(void* dst, const void* src, size_t sizeBytes,
3411  hipMemcpyKind kind, hipStream_t stream);
3429 hipError_t hipMemcpyHtoD(hipDeviceptr_t dst, void* src, size_t sizeBytes);
3447 hipError_t hipMemcpyDtoH(void* dst, hipDeviceptr_t src, size_t sizeBytes);
3465 hipError_t hipMemcpyDtoD(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes);
3483 hipError_t hipMemcpyHtoDAsync(hipDeviceptr_t dst, void* src, size_t sizeBytes, hipStream_t stream);
3501 hipError_t hipMemcpyDtoHAsync(void* dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream);
3519 hipError_t hipMemcpyDtoDAsync(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes,
3520  hipStream_t stream);
3521 
3536 hipError_t hipModuleGetGlobal(hipDeviceptr_t* dptr, size_t* bytes,
3537  hipModule_t hmod, const char* name);
3538 
3548 hipError_t hipGetSymbolAddress(void** devPtr, const void* symbol);
3549 
3559 hipError_t hipGetSymbolSize(size_t* size, const void* symbol);
3560 
3579 hipError_t hipMemcpyToSymbol(const void* symbol, const void* src,
3580  size_t sizeBytes, size_t offset __dparm(0),
3581  hipMemcpyKind kind __dparm(hipMemcpyHostToDevice));
3582 
3596 hipError_t hipMemcpyToSymbolAsync(const void* symbol, const void* src,
3597  size_t sizeBytes, size_t offset,
3598  hipMemcpyKind kind, hipStream_t stream __dparm(0));
3599 
3612 hipError_t hipMemcpyFromSymbol(void* dst, const void* symbol,
3613  size_t sizeBytes, size_t offset __dparm(0),
3614  hipMemcpyKind kind __dparm(hipMemcpyDeviceToHost));
3615 
3629 hipError_t hipMemcpyFromSymbolAsync(void* dst, const void* symbol,
3630  size_t sizeBytes, size_t offset,
3631  hipMemcpyKind kind,
3632  hipStream_t stream __dparm(0));
3661 hipError_t hipMemcpyAsync(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind,
3662  hipStream_t stream __dparm(0));
3672 hipError_t hipMemset(void* dst, int value, size_t sizeBytes);
3682 hipError_t hipMemsetD8(hipDeviceptr_t dest, unsigned char value, size_t count);
3698 hipError_t hipMemsetD8Async(hipDeviceptr_t dest, unsigned char value, size_t count, hipStream_t stream __dparm(0));
3708 hipError_t hipMemsetD16(hipDeviceptr_t dest, unsigned short value, size_t count);
3724 hipError_t hipMemsetD16Async(hipDeviceptr_t dest, unsigned short value, size_t count, hipStream_t stream __dparm(0));
3734 hipError_t hipMemsetD32(hipDeviceptr_t dest, int value, size_t count);
3750 hipError_t hipMemsetAsync(void* dst, int value, size_t sizeBytes, hipStream_t stream __dparm(0));
3766 hipError_t hipMemsetD32Async(hipDeviceptr_t dst, int value, size_t count,
3767  hipStream_t stream __dparm(0));
3778 hipError_t hipMemset2D(void* dst, size_t pitch, int value, size_t width, size_t height);
3790 hipError_t hipMemset2DAsync(void* dst, size_t pitch, int value, size_t width, size_t height,hipStream_t stream __dparm(0));
3799 hipError_t hipMemset3D(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent );
3809 hipError_t hipMemset3DAsync(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent ,hipStream_t stream __dparm(0));
3819 hipError_t hipMemGetInfo(size_t* free, size_t* total);
3820 hipError_t hipMemPtrGetInfo(void* ptr, size_t* size);
3833 hipError_t hipMallocArray(hipArray** array, const hipChannelFormatDesc* desc, size_t width,
3834  size_t height __dparm(0), unsigned int flags __dparm(hipArrayDefault));
3835 hipError_t hipArrayCreate(hipArray** pHandle, const HIP_ARRAY_DESCRIPTOR* pAllocateArray);
3836 hipError_t hipArrayDestroy(hipArray* array);
3837 hipError_t hipArray3DCreate(hipArray** array, const HIP_ARRAY3D_DESCRIPTOR* pAllocateArray);
3838 hipError_t hipMalloc3D(hipPitchedPtr* pitchedDevPtr, hipExtent extent);
3847 hipError_t hipFreeArray(hipArray* array);
3855 hipError_t hipFreeMipmappedArray(hipMipmappedArray_t mipmappedArray);
3867 hipError_t hipMalloc3DArray(hipArray** array, const struct hipChannelFormatDesc* desc,
3868  struct hipExtent extent, unsigned int flags);
3881  hipMipmappedArray_t *mipmappedArray,
3882  const struct hipChannelFormatDesc* desc,
3883  struct hipExtent extent,
3884  unsigned int numLevels,
3885  unsigned int flags __dparm(0));
3896  hipArray_t *levelArray,
3897  hipMipmappedArray_const_t mipmappedArray,
3898  unsigned int level);
3915 hipError_t hipMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width,
3916  size_t height, hipMemcpyKind kind);
3926 hipError_t hipMemcpyParam2D(const hip_Memcpy2D* pCopy);
3937 hipError_t hipMemcpyParam2DAsync(const hip_Memcpy2D* pCopy, hipStream_t stream __dparm(0));
3955 hipError_t hipMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width,
3956  size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0));
3974 hipError_t hipMemcpy2DToArray(hipArray* dst, size_t wOffset, size_t hOffset, const void* src,
3975  size_t spitch, size_t width, size_t height, hipMemcpyKind kind);
3994 hipError_t hipMemcpy2DToArrayAsync(hipArray* dst, size_t wOffset, size_t hOffset, const void* src,
3995  size_t spitch, size_t width, size_t height, hipMemcpyKind kind,
3996  hipStream_t stream __dparm(0));
4012 DEPRECATED(DEPRECATED_MSG)
4013 hipError_t hipMemcpyToArray(hipArray* dst, size_t wOffset, size_t hOffset, const void* src,
4014  size_t count, hipMemcpyKind kind);
4030 DEPRECATED(DEPRECATED_MSG)
4031 hipError_t hipMemcpyFromArray(void* dst, hipArray_const_t srcArray, size_t wOffset, size_t hOffset,
4032  size_t count, hipMemcpyKind kind);
4050 hipError_t hipMemcpy2DFromArray( void* dst, size_t dpitch, hipArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, hipMemcpyKind kind);
4069 hipError_t hipMemcpy2DFromArrayAsync( void* dst, size_t dpitch, hipArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0));
4083 hipError_t hipMemcpyAtoH(void* dst, hipArray* srcArray, size_t srcOffset, size_t count);
4097 hipError_t hipMemcpyHtoA(hipArray* dstArray, size_t dstOffset, const void* srcHost, size_t count);
4108 hipError_t hipMemcpy3D(const struct hipMemcpy3DParms* p);
4120 hipError_t hipMemcpy3DAsync(const struct hipMemcpy3DParms* p, hipStream_t stream __dparm(0));
4131 hipError_t hipDrvMemcpy3D(const HIP_MEMCPY3D* pCopy);
4143 hipError_t hipDrvMemcpy3DAsync(const HIP_MEMCPY3D* pCopy, hipStream_t stream);
4144 // doxygen end Memory
4172 hipError_t hipDeviceCanAccessPeer(int* canAccessPeer, int deviceId, int peerDeviceId);
4189 hipError_t hipDeviceEnablePeerAccess(int peerDeviceId, unsigned int flags);
4201 hipError_t hipDeviceDisablePeerAccess(int peerDeviceId);
4214 hipError_t hipMemGetAddressRange(hipDeviceptr_t* pbase, size_t* psize, hipDeviceptr_t dptr);
4215 #ifndef USE_PEER_NON_UNIFIED
4216 #define USE_PEER_NON_UNIFIED 1
4217 #endif
4218 #if USE_PEER_NON_UNIFIED == 1
4219 
4230 hipError_t hipMemcpyPeer(void* dst, int dstDeviceId, const void* src, int srcDeviceId,
4231  size_t sizeBytes);
4244 hipError_t hipMemcpyPeerAsync(void* dst, int dstDeviceId, const void* src, int srcDevice,
4245  size_t sizeBytes, hipStream_t stream __dparm(0));
4246 #endif
4247 // doxygen end PeerToPeer
4277 DEPRECATED(DEPRECATED_MSG)
4278 hipError_t hipCtxCreate(hipCtx_t* ctx, unsigned int flags, hipDevice_t device);
4289 DEPRECATED(DEPRECATED_MSG)
4290 hipError_t hipCtxDestroy(hipCtx_t ctx);
4301 DEPRECATED(DEPRECATED_MSG)
4302 hipError_t hipCtxPopCurrent(hipCtx_t* ctx);
4313 DEPRECATED(DEPRECATED_MSG)
4314 hipError_t hipCtxPushCurrent(hipCtx_t ctx);
4325 DEPRECATED(DEPRECATED_MSG)
4326 hipError_t hipCtxSetCurrent(hipCtx_t ctx);
4337 DEPRECATED(DEPRECATED_MSG)
4338 hipError_t hipCtxGetCurrent(hipCtx_t* ctx);
4349 DEPRECATED(DEPRECATED_MSG)
4350 hipError_t hipCtxGetDevice(hipDevice_t* device);
4368 DEPRECATED(DEPRECATED_MSG)
4369 hipError_t hipCtxGetApiVersion(hipCtx_t ctx, int* apiVersion);
4383 DEPRECATED(DEPRECATED_MSG)
4384 hipError_t hipCtxGetCacheConfig(hipFuncCache_t* cacheConfig);
4398 DEPRECATED(DEPRECATED_MSG)
4399 hipError_t hipCtxSetCacheConfig(hipFuncCache_t cacheConfig);
4413 DEPRECATED(DEPRECATED_MSG)
4428 DEPRECATED(DEPRECATED_MSG)
4441 DEPRECATED(DEPRECATED_MSG)
4442 hipError_t hipCtxSynchronize(void);
4453 DEPRECATED(DEPRECATED_MSG)
4454 hipError_t hipCtxGetFlags(unsigned int* flags);
4474 DEPRECATED(DEPRECATED_MSG)
4475 hipError_t hipCtxEnablePeerAccess(hipCtx_t peerCtx, unsigned int flags);
4492 DEPRECATED(DEPRECATED_MSG)
4493 hipError_t hipCtxDisablePeerAccess(hipCtx_t peerCtx);
4494 // doxygen end Context deprecated
4510 hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int* flags, int* active);
4523 hipError_t hipDevicePrimaryCtxRelease(hipDevice_t dev);
4535 hipError_t hipDevicePrimaryCtxRetain(hipCtx_t* pctx, hipDevice_t dev);
4546 hipError_t hipDevicePrimaryCtxReset(hipDevice_t dev);
4558 hipError_t hipDevicePrimaryCtxSetFlags(hipDevice_t dev, unsigned int flags);
4559 // doxygen end Context Management
4583 hipError_t hipModuleLoad(hipModule_t* module, const char* fname);
4593 hipError_t hipModuleUnload(hipModule_t module);
4604 hipError_t hipModuleGetFunction(hipFunction_t* function, hipModule_t module, const char* kname);
4613 hipError_t hipFuncGetAttributes(struct hipFuncAttributes* attr, const void* func);
4623 hipError_t hipFuncGetAttribute(int* value, hipFunction_attribute attrib, hipFunction_t hfunc);
4633 hipError_t hipModuleGetTexRef(textureReference** texRef, hipModule_t hmod, const char* name);
4643 hipError_t hipModuleLoadData(hipModule_t* module, const void* image);
4656 hipError_t hipModuleLoadDataEx(hipModule_t* module, const void* image, unsigned int numOptions,
4657  hipJitOption* options, void** optionValues);
4686 hipError_t hipModuleLaunchKernel(hipFunction_t f, unsigned int gridDimX, unsigned int gridDimY,
4687  unsigned int gridDimZ, unsigned int blockDimX,
4688  unsigned int blockDimY, unsigned int blockDimZ,
4689  unsigned int sharedMemBytes, hipStream_t stream,
4690  void** kernelParams, void** extra);
4709 hipError_t hipLaunchCooperativeKernel(const void* f, dim3 gridDim, dim3 blockDimX,
4710  void** kernelParams, unsigned int sharedMemBytes,
4711  hipStream_t stream);
4723  int numDevices, unsigned int flags);
4736  int numDevices, unsigned int flags);
4737 // doxygen end Module
4762 //TODO - Match CUoccupancyB2DSize
4763 hipError_t hipModuleOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
4764  hipFunction_t f, size_t dynSharedMemPerBlk,
4765  int blockSizeLimit);
4781 //TODO - Match CUoccupancyB2DSize
4782 hipError_t hipModuleOccupancyMaxPotentialBlockSizeWithFlags(int* gridSize, int* blockSize,
4783  hipFunction_t f, size_t dynSharedMemPerBlk,
4784  int blockSizeLimit, unsigned int flags);
4794  int* numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk);
4805  int* numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags);
4815  int* numBlocks, const void* f, int blockSize, size_t dynSharedMemPerBlk);
4826  int* numBlocks, const void* f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags __dparm(hipOccupancyDefault));
4841 hipError_t hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
4842  const void* f, size_t dynSharedMemPerBlk,
4843  int blockSizeLimit);
4844 // doxygen end Occupancy
4858 // TODO - expand descriptions:
4864 DEPRECATED("use roctracer/rocTX instead")
4865 hipError_t hipProfilerStart();
4871 DEPRECATED("use roctracer/rocTX instead")
4872 hipError_t hipProfilerStop();
4873 // doxygen end profiler
4900 hipError_t hipConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0));
4911 hipError_t hipSetupArgument(const void* arg, size_t size, size_t offset);
4920 hipError_t hipLaunchByPtr(const void* func);
4938  dim3 blockDim,
4939  size_t sharedMem __dparm(0),
4940  hipStream_t stream __dparm(0));
4960 hipError_t __hipPopCallConfiguration(dim3 *gridDim,
4961  dim3 *blockDim,
4962  size_t *sharedMem,
4963  hipStream_t *stream);
4979 hipError_t hipLaunchKernel(const void* function_address,
4980  dim3 numBlocks,
4981  dim3 dimBlocks,
4982  void** args,
4983  size_t sharedMemBytes __dparm(0),
4984  hipStream_t stream __dparm(0));
4992 hipError_t hipDrvMemcpy2DUnaligned(const hip_Memcpy2D* pCopy);
4993 //TODO: Move this to hip_ext.h
5014 hipError_t hipExtLaunchKernel(const void* function_address, dim3 numBlocks, dim3 dimBlocks,
5015  void** args, size_t sharedMemBytes, hipStream_t stream,
5016  hipEvent_t startEvent, hipEvent_t stopEvent, int flags);
5017 // doxygen end Clang launch
5040  const textureReference* tex,
5041  hipMipmappedArray_const_t mipmappedArray,
5042  const hipChannelFormatDesc* desc);
5043 
5059  hipTextureObject_t* pTexObject,
5060  const hipResourceDesc* pResDesc,
5061  const hipTextureDesc* pTexDesc,
5062  const struct hipResourceViewDesc* pResViewDesc);
5063 
5072 hipError_t hipDestroyTextureObject(hipTextureObject_t textureObject);
5073 
5084  hipChannelFormatDesc* desc,
5085  hipArray_const_t array);
5086 
5097  hipResourceDesc* pResDesc,
5098  hipTextureObject_t textureObject);
5099 
5110  struct hipResourceViewDesc* pResViewDesc,
5111  hipTextureObject_t textureObject);
5112 
5123  hipTextureDesc* pTexDesc,
5124  hipTextureObject_t textureObject);
5125 
5138  hipTextureObject_t* pTexObject,
5139  const HIP_RESOURCE_DESC* pResDesc,
5140  const HIP_TEXTURE_DESC* pTexDesc,
5141  const HIP_RESOURCE_VIEW_DESC* pResViewDesc);
5142 
5152  hipTextureObject_t texObject);
5153 
5164  HIP_RESOURCE_DESC* pResDesc,
5165  hipTextureObject_t texObject);
5166 
5177  HIP_RESOURCE_VIEW_DESC* pResViewDesc,
5178  hipTextureObject_t texObject);
5179 
5190  HIP_TEXTURE_DESC* pTexDesc,
5191  hipTextureObject_t texObject);
5192 
5209 DEPRECATED(DEPRECATED_MSG)
5211  const textureReference** texref,
5212  const void* symbol);
5213 
5214 DEPRECATED(DEPRECATED_MSG)
5215 hipError_t hipTexRefSetAddressMode(
5216  textureReference* texRef,
5217  int dim,
5218  enum hipTextureAddressMode am);
5219 DEPRECATED(DEPRECATED_MSG)
5220 hipError_t hipTexRefSetArray(
5221  textureReference* tex,
5222  hipArray_const_t array,
5223  unsigned int flags);
5224 DEPRECATED(DEPRECATED_MSG)
5225 hipError_t hipTexRefSetFilterMode(
5226  textureReference* texRef,
5227  enum hipTextureFilterMode fm);
5228 DEPRECATED(DEPRECATED_MSG)
5229 hipError_t hipTexRefSetFlags(
5230  textureReference* texRef,
5231  unsigned int Flags);
5232 DEPRECATED(DEPRECATED_MSG)
5233 hipError_t hipTexRefSetFormat(
5234  textureReference* texRef,
5235  hipArray_Format fmt,
5236  int NumPackedComponents);
5237 DEPRECATED(DEPRECATED_MSG)
5238 hipError_t hipBindTexture(
5239  size_t* offset,
5240  const textureReference* tex,
5241  const void* devPtr,
5242  const hipChannelFormatDesc* desc,
5243  size_t size __dparm(UINT_MAX));
5244 DEPRECATED(DEPRECATED_MSG)
5245 hipError_t hipBindTexture2D(
5246  size_t* offset,
5247  const textureReference* tex,
5248  const void* devPtr,
5249  const hipChannelFormatDesc* desc,
5250  size_t width,
5251  size_t height,
5252  size_t pitch);
5253 DEPRECATED(DEPRECATED_MSG)
5254 hipError_t hipBindTextureToArray(
5255  const textureReference* tex,
5256  hipArray_const_t array,
5257  const hipChannelFormatDesc* desc);
5258 DEPRECATED(DEPRECATED_MSG)
5259 hipError_t hipGetTextureAlignmentOffset(
5260  size_t* offset,
5261  const textureReference* texref);
5262 DEPRECATED(DEPRECATED_MSG)
5263 hipError_t hipUnbindTexture(const textureReference* tex);
5264 DEPRECATED(DEPRECATED_MSG)
5265 hipError_t hipTexRefGetAddress(
5266  hipDeviceptr_t* dev_ptr,
5267  const textureReference* texRef);
5268 DEPRECATED(DEPRECATED_MSG)
5269 hipError_t hipTexRefGetAddressMode(
5270  enum hipTextureAddressMode* pam,
5271  const textureReference* texRef,
5272  int dim);
5273 DEPRECATED(DEPRECATED_MSG)
5274 hipError_t hipTexRefGetFilterMode(
5275  enum hipTextureFilterMode* pfm,
5276  const textureReference* texRef);
5277 DEPRECATED(DEPRECATED_MSG)
5278 hipError_t hipTexRefGetFlags(
5279  unsigned int* pFlags,
5280  const textureReference* texRef);
5281 DEPRECATED(DEPRECATED_MSG)
5282 hipError_t hipTexRefGetFormat(
5283  hipArray_Format* pFormat,
5284  int* pNumChannels,
5285  const textureReference* texRef);
5286 DEPRECATED(DEPRECATED_MSG)
5287 hipError_t hipTexRefGetMaxAnisotropy(
5288  int* pmaxAnsio,
5289  const textureReference* texRef);
5290 DEPRECATED(DEPRECATED_MSG)
5291 hipError_t hipTexRefGetMipmapFilterMode(
5292  enum hipTextureFilterMode* pfm,
5293  const textureReference* texRef);
5294 DEPRECATED(DEPRECATED_MSG)
5295 hipError_t hipTexRefGetMipmapLevelBias(
5296  float* pbias,
5297  const textureReference* texRef);
5298 DEPRECATED(DEPRECATED_MSG)
5299 hipError_t hipTexRefGetMipmapLevelClamp(
5300  float* pminMipmapLevelClamp,
5301  float* pmaxMipmapLevelClamp,
5302  const textureReference* texRef);
5303 DEPRECATED(DEPRECATED_MSG)
5304 hipError_t hipTexRefGetMipMappedArray(
5305  hipMipmappedArray_t* pArray,
5306  const textureReference* texRef);
5307 DEPRECATED(DEPRECATED_MSG)
5308 hipError_t hipTexRefSetAddress(
5309  size_t* ByteOffset,
5310  textureReference* texRef,
5311  hipDeviceptr_t dptr,
5312  size_t bytes);
5313 DEPRECATED(DEPRECATED_MSG)
5314 hipError_t hipTexRefSetAddress2D(
5315  textureReference* texRef,
5316  const HIP_ARRAY_DESCRIPTOR* desc,
5317  hipDeviceptr_t dptr,
5318  size_t Pitch);
5319 DEPRECATED(DEPRECATED_MSG)
5320 hipError_t hipTexRefSetMaxAnisotropy(
5321  textureReference* texRef,
5322  unsigned int maxAniso);
5323  DEPRECATED(DEPRECATED_MSG)
5324 hipError_t hipTexRefSetBorderColor(
5325  textureReference* texRef,
5326  float* pBorderColor);
5327 DEPRECATED(DEPRECATED_MSG)
5328 hipError_t hipTexRefSetMipmapFilterMode(
5329  textureReference* texRef,
5330  enum hipTextureFilterMode fm);
5331 DEPRECATED(DEPRECATED_MSG)
5332 hipError_t hipTexRefSetMipmapLevelBias(
5333  textureReference* texRef,
5334  float bias);
5335 DEPRECATED(DEPRECATED_MSG)
5336 hipError_t hipTexRefSetMipmapLevelClamp(
5337  textureReference* texRef,
5338  float minMipMapLevelClamp,
5339  float maxMipMapLevelClamp);
5340 DEPRECATED(DEPRECATED_MSG)
5341 hipError_t hipTexRefSetMipmappedArray(
5342  textureReference* texRef,
5343  struct hipMipmappedArray* mipmappedArray,
5344  unsigned int Flags);
5345 
5346 // doxygen end deprecated texture management
5351 // The following are not supported.
5360 hipError_t hipMipmappedArrayCreate(
5361  hipMipmappedArray_t* pHandle,
5362  HIP_ARRAY3D_DESCRIPTOR* pMipmappedArrayDesc,
5363  unsigned int numMipmapLevels);
5364 hipError_t hipMipmappedArrayDestroy(
5365  hipMipmappedArray_t hMipmappedArray);
5366 hipError_t hipMipmappedArrayGetLevel(
5367  hipArray_t* pLevelArray,
5368  hipMipmappedArray_t hMipMappedArray,
5369  unsigned int level);
5370 // doxygen end unsuppported texture management
5375 // doxygen end Texture management
5387 // This group is for HIPrtc
5388 
5389 // doxygen end Runtime
5400 const char* hipApiName(uint32_t id);
5401 const char* hipKernelNameRef(const hipFunction_t f);
5402 const char* hipKernelNameRefByPtr(const void* hostFunction, hipStream_t stream);
5403 int hipGetStreamDeviceId(hipStream_t stream);
5404 
5405 // doxygen end Callback
5430 hipError_t hipStreamBeginCapture(hipStream_t stream, hipStreamCaptureMode mode);
5431 
5444 hipError_t hipStreamEndCapture(hipStream_t stream, hipGraph_t* pGraph);
5445 
5459 hipError_t hipStreamGetCaptureInfo(hipStream_t stream, hipStreamCaptureStatus* pCaptureStatus,
5460  unsigned long long* pId);
5461 
5478 hipError_t hipStreamGetCaptureInfo_v2(hipStream_t stream, hipStreamCaptureStatus* captureStatus_out,
5479  unsigned long long* id_out __dparm(0),
5480  hipGraph_t* graph_out __dparm(0),
5481  const hipGraphNode_t** dependencies_out __dparm(0),
5482  size_t* numDependencies_out __dparm(0));
5483 
5496 hipError_t hipStreamIsCapturing(hipStream_t stream, hipStreamCaptureStatus* pCaptureStatus);
5497 
5510 hipError_t hipStreamUpdateCaptureDependencies(hipStream_t stream, hipGraphNode_t* dependencies,
5511  size_t numDependencies,
5512  unsigned int flags __dparm(0));
5513 
5525 hipError_t hipLaunchHostFunc(hipStream_t stream, hipHostFn_t fn, void* userData);
5526 
5537 hipError_t hipThreadExchangeStreamCaptureMode(hipStreamCaptureMode* mode);
5538 
5551 hipError_t hipGraphCreate(hipGraph_t* pGraph, unsigned int flags);
5552 
5564 hipError_t hipGraphDestroy(hipGraph_t graph);
5565 
5579 hipError_t hipGraphAddDependencies(hipGraph_t graph, const hipGraphNode_t* from,
5580  const hipGraphNode_t* to, size_t numDependencies);
5581 
5596  const hipGraphNode_t* to, size_t numDependencies);
5597 
5616  size_t* numEdges);
5617 
5634 hipError_t hipGraphGetNodes(hipGraph_t graph, hipGraphNode_t* nodes, size_t* numNodes);
5635 
5652 hipError_t hipGraphGetRootNodes(hipGraph_t graph, hipGraphNode_t* pRootNodes,
5653  size_t* pNumRootNodes);
5654 
5672  size_t* pNumDependencies);
5673 
5692  size_t* pNumDependentNodes);
5693 
5706 
5718 
5730 hipError_t hipGraphClone(hipGraph_t* pGraphClone, hipGraph_t originalGraph);
5731 
5745  hipGraph_t clonedGraph);
5746 
5763 hipError_t hipGraphInstantiate(hipGraphExec_t* pGraphExec, hipGraph_t graph,
5764  hipGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize);
5765 
5779  unsigned long long flags);
5780 
5791 hipError_t hipGraphLaunch(hipGraphExec_t graphExec, hipStream_t stream);
5792 
5803 hipError_t hipGraphUpload(hipGraphExec_t graphExec, hipStream_t stream);
5804 
5815 hipError_t hipGraphExecDestroy(hipGraphExec_t graphExec);
5816 
5817 // Check whether an executable graph can be updated with a graph and perform the update if possible.
5831 hipError_t hipGraphExecUpdate(hipGraphExec_t hGraphExec, hipGraph_t hGraph,
5832  hipGraphNode_t* hErrorNode_out,
5833  hipGraphExecUpdateResult* updateResult_out);
5834 
5847 hipError_t hipGraphAddKernelNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
5848  const hipGraphNode_t* pDependencies, size_t numDependencies,
5849  const hipKernelNodeParams* pNodeParams);
5850 
5861 
5872 
5884  const hipKernelNodeParams* pNodeParams);
5885 
5898 hipError_t hipGraphAddMemcpyNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
5899  const hipGraphNode_t* pDependencies, size_t numDependencies,
5900  const hipMemcpy3DParms* pCopyParams);
5911 
5921 hipError_t hipGraphMemcpyNodeSetParams(hipGraphNode_t node, const hipMemcpy3DParms* pNodeParams);
5922 
5933 hipError_t hipGraphKernelNodeSetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr,
5934  const hipKernelNodeAttrValue* value);
5945 hipError_t hipGraphKernelNodeGetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr,
5946  hipKernelNodeAttrValue* value);
5958  hipMemcpy3DParms* pNodeParams);
5959 
5975 hipError_t hipGraphAddMemcpyNode1D(hipGraphNode_t* pGraphNode, hipGraph_t graph,
5976  const hipGraphNode_t* pDependencies, size_t numDependencies,
5977  void* dst, const void* src, size_t count, hipMemcpyKind kind);
5978 
5991 hipError_t hipGraphMemcpyNodeSetParams1D(hipGraphNode_t node, void* dst, const void* src,
5992  size_t count, hipMemcpyKind kind);
5993 
6009  void* dst, const void* src, size_t count,
6010  hipMemcpyKind kind);
6011 
6029  const hipGraphNode_t* pDependencies,
6030  size_t numDependencies, void* dst, const void* symbol,
6031  size_t count, size_t offset, hipMemcpyKind kind);
6032 
6046 hipError_t hipGraphMemcpyNodeSetParamsFromSymbol(hipGraphNode_t node, void* dst, const void* symbol,
6047  size_t count, size_t offset, hipMemcpyKind kind);
6048 
6065  void* dst, const void* symbol, size_t count,
6066  size_t offset, hipMemcpyKind kind);
6067 
6085  const hipGraphNode_t* pDependencies,
6086  size_t numDependencies, const void* symbol,
6087  const void* src, size_t count, size_t offset,
6088  hipMemcpyKind kind);
6089 
6103 hipError_t hipGraphMemcpyNodeSetParamsToSymbol(hipGraphNode_t node, const void* symbol,
6104  const void* src, size_t count, size_t offset,
6105  hipMemcpyKind kind);
6106 
6107 
6123  const void* symbol, const void* src,
6124  size_t count, size_t offset, hipMemcpyKind kind);
6125 
6138 hipError_t hipGraphAddMemsetNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
6139  const hipGraphNode_t* pDependencies, size_t numDependencies,
6140  const hipMemsetParams* pMemsetParams);
6141 
6152 
6162 hipError_t hipGraphMemsetNodeSetParams(hipGraphNode_t node, const hipMemsetParams* pNodeParams);
6163 
6175  const hipMemsetParams* pNodeParams);
6176 
6189 hipError_t hipGraphAddHostNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
6190  const hipGraphNode_t* pDependencies, size_t numDependencies,
6191  const hipHostNodeParams* pNodeParams);
6192 
6203 
6213 hipError_t hipGraphHostNodeSetParams(hipGraphNode_t node, const hipHostNodeParams* pNodeParams);
6214 
6226  const hipHostNodeParams* pNodeParams);
6227 
6241  const hipGraphNode_t* pDependencies, size_t numDependencies,
6242  hipGraph_t childGraph);
6243 
6254 
6266  hipGraph_t childGraph);
6267 
6279 hipError_t hipGraphAddEmptyNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
6280  const hipGraphNode_t* pDependencies, size_t numDependencies);
6281 
6282 
6296  const hipGraphNode_t* pDependencies, size_t numDependencies,
6297  hipEvent_t event);
6298 
6308 hipError_t hipGraphEventRecordNodeGetEvent(hipGraphNode_t node, hipEvent_t* event_out);
6309 
6319 hipError_t hipGraphEventRecordNodeSetEvent(hipGraphNode_t node, hipEvent_t event);
6320 
6332  hipEvent_t event);
6333 
6347  const hipGraphNode_t* pDependencies, size_t numDependencies,
6348  hipEvent_t event);
6349 
6350 
6360 hipError_t hipGraphEventWaitNodeGetEvent(hipGraphNode_t node, hipEvent_t* event_out);
6361 
6371 hipError_t hipGraphEventWaitNodeSetEvent(hipGraphNode_t node, hipEvent_t event);
6372 
6384  hipEvent_t event);
6385 
6396 hipError_t hipDeviceGetGraphMemAttribute(int device, hipGraphMemAttributeType attr, void* value);
6397 
6408 hipError_t hipDeviceSetGraphMemAttribute(int device, hipGraphMemAttributeType attr, void* value);
6409 
6417 hipError_t hipDeviceGraphMemTrim(int device);
6418 
6431 hipError_t hipUserObjectCreate(hipUserObject_t* object_out, void* ptr, hipHostFn_t destroy, unsigned int initialRefcount, unsigned int flags);
6432 
6442 hipError_t hipUserObjectRelease(hipUserObject_t object, unsigned int count __dparm(1));
6443 
6453 hipError_t hipUserObjectRetain(hipUserObject_t object, unsigned int count __dparm(1));
6454 
6466 hipError_t hipGraphRetainUserObject(hipGraph_t graph, hipUserObject_t object, unsigned int count __dparm(1), unsigned int flags __dparm(0));
6467 
6478 hipError_t hipGraphReleaseUserObject(hipGraph_t graph, hipUserObject_t object, unsigned int count);
6479 // doxygen end graph API
6502 hipError_t hipMemAddressFree(void* devPtr, size_t size);
6503 
6516 hipError_t hipMemAddressReserve(void** ptr, size_t size, size_t alignment, void* addr, unsigned long long flags);
6517 
6529 hipError_t hipMemCreate(hipMemGenericAllocationHandle_t* handle, size_t size, const hipMemAllocationProp* prop, unsigned long long flags);
6530 
6542 hipError_t hipMemExportToShareableHandle(void* shareableHandle, hipMemGenericAllocationHandle_t handle, hipMemAllocationHandleType handleType, unsigned long long flags);
6543 
6554 hipError_t hipMemGetAccess(unsigned long long* flags, const hipMemLocation* location, void* ptr);
6555 
6567 
6578 
6590 
6603 hipError_t hipMemMap(void* ptr, size_t size, size_t offset, hipMemGenericAllocationHandle_t handle, unsigned long long flags);
6604 
6615 hipError_t hipMemMapArrayAsync(hipArrayMapInfo* mapInfoList, unsigned int count, hipStream_t stream);
6616 
6626 
6637 
6649 hipError_t hipMemSetAccess(void* ptr, size_t size, const hipMemAccessDesc* desc, size_t count);
6650 
6660 hipError_t hipMemUnmap(void* ptr, size_t size);
6661 
6662 // doxygen end virtual memory management API
6674 typedef unsigned int GLuint;
6675 typedef unsigned int GLenum;
6676 
6677 // Queries devices associated with GL Context.
6678 hipError_t hipGLGetDevices(unsigned int* pHipDeviceCount, int* pHipDevices,
6679  unsigned int hipDeviceCount, hipGLDeviceList deviceList);
6680 // Registers a GL Buffer for interop and returns corresponding graphics resource.
6681 hipError_t hipGraphicsGLRegisterBuffer(hipGraphicsResource** resource, GLuint buffer,
6682  unsigned int flags);
6683 // Register a GL Image for interop and returns the corresponding graphic resource
6684 hipError_t hipGraphicsGLRegisterImage(hipGraphicsResource** resource, GLuint image,
6685  GLenum target, unsigned int flags);
6686 // Maps a graphics resource for hip access.
6687 hipError_t hipGraphicsMapResources(int count, hipGraphicsResource_t* resources,
6688  hipStream_t stream __dparm(0) );
6689 // Get an array through which to access a subresource of a mapped graphics resource.
6690 hipError_t hipGraphicsSubResourceGetMappedArray(hipArray_t* array, hipGraphicsResource_t resource,
6691  unsigned int arrayIndex, unsigned int mipLevel);
6692 // Gets device accessible address of a graphics resource.
6693 hipError_t hipGraphicsResourceGetMappedPointer(void** devPtr, size_t* size,
6694  hipGraphicsResource_t resource);
6695 // Unmaps a graphics resource for hip access.
6696 hipError_t hipGraphicsUnmapResources(int count, hipGraphicsResource_t* resources,
6697  hipStream_t stream __dparm(0));
6698 // Unregisters a graphics resource.
6699 hipError_t hipGraphicsUnregisterResource(hipGraphicsResource_t resource);
6700 // doxygen end GL Interop
6706 #ifdef __cplusplus
6707 } /* extern "c" */
6708 #endif
6709 #ifdef __cplusplus
6710 #if defined(__clang__) && defined(__HIP__)
6711 template <typename T>
6712 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
6713  T f, size_t dynSharedMemPerBlk = 0, int blockSizeLimit = 0) {
6714  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, reinterpret_cast<const void*>(f),dynSharedMemPerBlk,blockSizeLimit);
6715 }
6716 template <typename T>
6717 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSizeWithFlags(int* gridSize, int* blockSize,
6718  T f, size_t dynSharedMemPerBlk = 0, int blockSizeLimit = 0, unsigned int flags = 0 ) {
6719  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, reinterpret_cast<const void*>(f),dynSharedMemPerBlk,blockSizeLimit);
6720 }
6721 #endif // defined(__clang__) && defined(__HIP__)
6722 template <typename T>
6723 hipError_t hipGetSymbolAddress(void** devPtr, const T &symbol) {
6724  return ::hipGetSymbolAddress(devPtr, (const void *)&symbol);
6725 }
6726 template <typename T>
6727 hipError_t hipGetSymbolSize(size_t* size, const T &symbol) {
6728  return ::hipGetSymbolSize(size, (const void *)&symbol);
6729 }
6730 template <typename T>
6731 hipError_t hipMemcpyToSymbol(const T& symbol, const void* src, size_t sizeBytes,
6732  size_t offset __dparm(0),
6733  hipMemcpyKind kind __dparm(hipMemcpyHostToDevice)) {
6734  return ::hipMemcpyToSymbol((const void*)&symbol, src, sizeBytes, offset, kind);
6735 }
6736 template <typename T>
6737 hipError_t hipMemcpyToSymbolAsync(const T& symbol, const void* src, size_t sizeBytes, size_t offset,
6738  hipMemcpyKind kind, hipStream_t stream __dparm(0)) {
6739  return ::hipMemcpyToSymbolAsync((const void*)&symbol, src, sizeBytes, offset, kind, stream);
6740 }
6741 template <typename T>
6742 hipError_t hipMemcpyFromSymbol(void* dst, const T &symbol,
6743  size_t sizeBytes, size_t offset __dparm(0),
6744  hipMemcpyKind kind __dparm(hipMemcpyDeviceToHost)) {
6745  return ::hipMemcpyFromSymbol(dst, (const void*)&symbol, sizeBytes, offset, kind);
6746 }
6747 template <typename T>
6748 hipError_t hipMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t sizeBytes, size_t offset,
6749  hipMemcpyKind kind, hipStream_t stream __dparm(0)) {
6750  return ::hipMemcpyFromSymbolAsync(dst, (const void*)&symbol, sizeBytes, offset, kind, stream);
6751 }
6752 template <class T>
6754  int* numBlocks, T f, int blockSize, size_t dynSharedMemPerBlk) {
6756  numBlocks, reinterpret_cast<const void*>(f), blockSize, dynSharedMemPerBlk);
6757 }
6758 template <class T>
6760  int* numBlocks, T f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags) {
6762  numBlocks, reinterpret_cast<const void*>(f), blockSize, dynSharedMemPerBlk, flags);
6763 }
6764 template <typename F>
6765 inline hipError_t hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
6766  F kernel, size_t dynSharedMemPerBlk, uint32_t blockSizeLimit) {
6767 return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize,(hipFunction_t)kernel, dynSharedMemPerBlk, blockSizeLimit);
6768 }
6769 template <class T>
6770 inline hipError_t hipLaunchCooperativeKernel(T f, dim3 gridDim, dim3 blockDim,
6771  void** kernelParams, unsigned int sharedMemBytes, hipStream_t stream) {
6772  return hipLaunchCooperativeKernel(reinterpret_cast<const void*>(f), gridDim,
6773  blockDim, kernelParams, sharedMemBytes, stream);
6774 }
6775 template <class T>
6776 inline hipError_t hipLaunchCooperativeKernelMultiDevice(hipLaunchParams* launchParamsList,
6777  unsigned int numDevices, unsigned int flags = 0) {
6778  return hipLaunchCooperativeKernelMultiDevice(launchParamsList, numDevices, flags);
6779 }
6780 template <class T>
6781 inline hipError_t hipExtLaunchMultiKernelMultiDevice(hipLaunchParams* launchParamsList,
6782  unsigned int numDevices, unsigned int flags = 0) {
6783  return hipExtLaunchMultiKernelMultiDevice(launchParamsList, numDevices, flags);
6784 }
6785 hipError_t hipCreateSurfaceObject(hipSurfaceObject_t* pSurfObject, const hipResourceDesc* pResDesc);
6786 hipError_t hipDestroySurfaceObject(hipSurfaceObject_t surfaceObject);
6787 template <class T, int dim, enum hipTextureReadMode readMode>
6788 DEPRECATED(DEPRECATED_MSG)
6789 static inline hipError_t hipBindTexture(size_t* offset, const struct texture<T, dim, readMode>& tex,
6790  const void* devPtr, size_t size = UINT_MAX) {
6791  return hipBindTexture(offset, &tex, devPtr, &tex.channelDesc, size);
6792 }
6793 template <class T, int dim, enum hipTextureReadMode readMode>
6794 DEPRECATED(DEPRECATED_MSG)
6795 static inline hipError_t
6796  hipBindTexture(size_t* offset, const struct texture<T, dim, readMode>& tex, const void* devPtr,
6797  const struct hipChannelFormatDesc& desc, size_t size = UINT_MAX) {
6798  return hipBindTexture(offset, &tex, devPtr, &desc, size);
6799 }
6800 template<class T, int dim, enum hipTextureReadMode readMode>
6801 DEPRECATED(DEPRECATED_MSG)
6802 static inline hipError_t hipBindTexture2D(
6803  size_t *offset,
6804  const struct texture<T, dim, readMode> &tex,
6805  const void *devPtr,
6806  size_t width,
6807  size_t height,
6808  size_t pitch)
6809 {
6810  return hipBindTexture2D(offset, &tex, devPtr, &tex.channelDesc, width, height, pitch);
6811 }
6812 template<class T, int dim, enum hipTextureReadMode readMode>
6813 DEPRECATED(DEPRECATED_MSG)
6814 static inline hipError_t hipBindTexture2D(
6815  size_t *offset,
6816  const struct texture<T, dim, readMode> &tex,
6817  const void *devPtr,
6818  const struct hipChannelFormatDesc &desc,
6819  size_t width,
6820  size_t height,
6821  size_t pitch)
6822 {
6823  return hipBindTexture2D(offset, &tex, devPtr, &desc, width, height, pitch);
6824 }
6825 template<class T, int dim, enum hipTextureReadMode readMode>
6826 DEPRECATED(DEPRECATED_MSG)
6827 static inline hipError_t hipBindTextureToArray(
6828  const struct texture<T, dim, readMode> &tex,
6829  hipArray_const_t array)
6830 {
6831  struct hipChannelFormatDesc desc;
6832  hipError_t err = hipGetChannelDesc(&desc, array);
6833  return (err == hipSuccess) ? hipBindTextureToArray(&tex, array, &desc) : err;
6834 }
6835 template<class T, int dim, enum hipTextureReadMode readMode>
6836 DEPRECATED(DEPRECATED_MSG)
6837 static inline hipError_t hipBindTextureToArray(
6838  const struct texture<T, dim, readMode> &tex,
6839  hipArray_const_t array,
6840  const struct hipChannelFormatDesc &desc)
6841 {
6842  return hipBindTextureToArray(&tex, array, &desc);
6843 }
6844 template<class T, int dim, enum hipTextureReadMode readMode>
6845 static inline hipError_t hipBindTextureToMipmappedArray(
6846  const struct texture<T, dim, readMode> &tex,
6847  hipMipmappedArray_const_t mipmappedArray)
6848 {
6849  struct hipChannelFormatDesc desc;
6850  hipArray_t levelArray;
6851  hipError_t err = hipGetMipmappedArrayLevel(&levelArray, mipmappedArray, 0);
6852  if (err != hipSuccess) {
6853  return err;
6854  }
6855  err = hipGetChannelDesc(&desc, levelArray);
6856  return (err == hipSuccess) ? hipBindTextureToMipmappedArray(&tex, mipmappedArray, &desc) : err;
6857 }
6858 template<class T, int dim, enum hipTextureReadMode readMode>
6859 static inline hipError_t hipBindTextureToMipmappedArray(
6860  const struct texture<T, dim, readMode> &tex,
6861  hipMipmappedArray_const_t mipmappedArray,
6862  const struct hipChannelFormatDesc &desc)
6863 {
6864  return hipBindTextureToMipmappedArray(&tex, mipmappedArray, &desc);
6865 }
6866 template<class T, int dim, enum hipTextureReadMode readMode>
6867 DEPRECATED(DEPRECATED_MSG)
6868 static inline hipError_t hipUnbindTexture(
6869  const struct texture<T, dim, readMode> &tex)
6870 {
6871  return hipUnbindTexture(&tex);
6872 }
6880 static inline hipError_t hipMallocAsync(
6881  void** dev_ptr,
6882  size_t size,
6883  hipMemPool_t mem_pool,
6884  hipStream_t stream) {
6885  return hipMallocFromPoolAsync(dev_ptr, size, mem_pool, stream);
6886 }
6887 
6888 template<class T>
6889 static inline hipError_t hipMallocAsync(
6890  T** dev_ptr,
6891  size_t size,
6892  hipMemPool_t mem_pool,
6893  hipStream_t stream) {
6894  return hipMallocFromPoolAsync(reinterpret_cast<void**>(dev_ptr), size, mem_pool, stream);
6895 }
6896 
6897 template<class T>
6898 static inline hipError_t hipMallocAsync(
6899  T** dev_ptr,
6900  size_t size,
6901  hipStream_t stream) {
6902  return hipMallocAsync(reinterpret_cast<void**>(dev_ptr), size, stream);
6903 }
6904 
6905 template<class T>
6906 static inline hipError_t hipMallocFromPoolAsync(
6907  T** dev_ptr,
6908  size_t size,
6909  hipMemPool_t mem_pool,
6910  hipStream_t stream) {
6911  return hipMallocFromPoolAsync(reinterpret_cast<void**>(dev_ptr), size, mem_pool, stream);
6912 }
6913 #endif // __cplusplus
6914 
6915 #ifdef __GNUC__
6916 #pragma GCC visibility pop
6917 #endif
6918 // doxygen end HIP API
6923 #elif !(defined(__HIP_PLATFORM_HCC__) || defined(__HIP_PLATFORM_AMD__)) && (defined(__HIP_PLATFORM_NVCC__) || defined(__HIP_PLATFORM_NVIDIA__))
6924 #include "hip/nvidia_detail/nvidia_hip_runtime_api.h"
6925 #else
6926 #error("Must define exactly one of __HIP_PLATFORM_AMD__ or __HIP_PLATFORM_NVIDIA__");
6927 #endif
6928 
6929 
6941 #if defined(__cplusplus) && !defined(__HIP_DISABLE_CPP_FUNCTIONS__)
6942 template <class T>
6943 static inline hipError_t hipMalloc(T** devPtr, size_t size) {
6944  return hipMalloc((void**)devPtr, size);
6945 }
6946 
6947 // Provide an override to automatically typecast the pointer type from void**, and also provide a
6948 // default for the flags.
6949 template <class T>
6950 static inline hipError_t hipHostMalloc(T** ptr, size_t size,
6951  unsigned int flags = hipHostMallocDefault) {
6952  return hipHostMalloc((void**)ptr, size, flags);
6953 }
6954 
6955 template <class T>
6956 static inline hipError_t hipMallocManaged(T** devPtr, size_t size,
6957  unsigned int flags = hipMemAttachGlobal) {
6958  return hipMallocManaged((void**)devPtr, size, flags);
6959 }
6960 
6961 #endif
6962 #endif
6963 
6964 #include <hip/amd_detail/amd_hip_runtime_pt_api.h>
6965 
6966 #if USE_PROF_API
6967 #include <hip/amd_detail/hip_prof_str.h>
6968 #endif
hipGraphExecMemcpyNodeSetParams
hipError_t hipGraphExecMemcpyNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, hipMemcpy3DParms *pNodeParams)
Sets the parameters for a memcpy node in the given graphExec.
hipKernelNodeAttrValue
Definition: hip_runtime_api.h:1150
hipGraphNodeTypeExtSemaphoreWait
@ hipGraphNodeTypeExtSemaphoreWait
External Semaphore wait node.
Definition: hip_runtime_api.h:1101
hipUserObject_t
struct hipUserObject * hipUserObject_t
Definition: hip_runtime_api.h:1083
hipArrayMapInfo::deviceBitMask
unsigned int deviceBitMask
Device ordinal bit mask.
Definition: hip_runtime_api.h:1303
hipFuncAttributes
Definition: hip_runtime_api.h:538
hipMemPoolProps::allocType
hipMemAllocationType allocType
Allocation type. Currently must be specified as hipMemAllocationTypePinned.
Definition: hip_runtime_api.h:862
hipExternalMemoryBufferDesc_st
Definition: hip_runtime_api.h:971
hipPointerGetAttributes
hipError_t hipPointerGetAttributes(hipPointerAttribute_t *attributes, const void *ptr)
Return attributes for the specified pointer.
hipDeviceAttributeMaxPitch
@ hipDeviceAttributeMaxPitch
Maximum pitch in bytes allowed by memory copies.
Definition: hip_runtime_api.h:394
hipMemset3DAsync
hipError_t hipMemset3DAsync(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent, hipStream_t stream __dparm(0))
Fills asynchronously the memory area pointed to by pitchedDevPtr with the constant value.
hipMemAccessDesc::flags
hipMemAccessFlags flags
Accessibility flags to set.
Definition: hip_runtime_api.h:832
hipDeviceAttributeAsyncEngineCount
@ hipDeviceAttributeAsyncEngineCount
Cuda only. Asynchronous engines number.
Definition: hip_runtime_api.h:334
hipMemcpy3D
hipError_t hipMemcpy3D(const struct hipMemcpy3DParms *p)
Copies data between host and device.
hipErrorStreamCaptureImplicit
hipErrorStreamCaptureImplicit
Definition: hip_runtime_api.h:300
hipIpcOpenMemHandle
hipError_t hipIpcOpenMemHandle(void **devPtr, hipIpcMemHandle_t handle, unsigned int flags)
Opens an interprocess memory handle exported from another process and returns a device pointer usable...
hipCtxEnablePeerAccess
hipError_t hipCtxEnablePeerAccess(hipCtx_t peerCtx, unsigned int flags)
Enables direct access to memory allocations in a peer context.
hipGraphicsRegisterFlags
hipGraphicsRegisterFlags
Definition: hip_runtime_api.h:1053
hipDeviceProp_t::regsPerBlock
int regsPerBlock
Registers per block.
Definition: hip_runtime_api.h:91
hipMemPoolPtrExportData
Definition: hip_runtime_api.h:874
hipMemSetAccess
hipError_t hipMemSetAccess(void *ptr, size_t size, const hipMemAccessDesc *desc, size_t count)
Set the access flags for each location specified in desc for the given virtual address range.
hipGraphNodeTypeMemcpyToSymbol
@ hipGraphNodeTypeMemcpyToSymbol
MemcpyToSymbol node.
Definition: hip_runtime_api.h:1103
hipMallocPitch
hipError_t hipMallocPitch(void **ptr, size_t *pitch, size_t width, size_t height)
hipSetDevice
hipError_t hipSetDevice(int deviceId)
Set default device to be used for subsequent hip API calls from this thread.
hipDeviceAttributeManagedMemory
@ hipDeviceAttributeManagedMemory
Device supports allocating managed memory on this system.
Definition: hip_runtime_api.h:359
hipArrayMapInfo::offsetX
unsigned int offsetX
X offset in elements.
Definition: hip_runtime_api.h:1284
hipGetTextureObjectResourceViewDesc
hipError_t hipGetTextureObjectResourceViewDesc(struct hipResourceViewDesc *pResViewDesc, hipTextureObject_t textureObject)
Gets resource view descriptor for the texture object.
hipDeviceGetGraphMemAttribute
hipError_t hipDeviceGetGraphMemAttribute(int device, hipGraphMemAttributeType attr, void *value)
Get the mem attribute for graphs.
hipDeviceGetP2PAttribute
hipError_t hipDeviceGetP2PAttribute(int *value, hipDeviceP2PAttr attr, int srcDevice, int dstDevice)
Returns a value for attr of link between two devices.
hipGraphInstantiateFlagAutoFreeOnLaunch
@ hipGraphInstantiateFlagAutoFreeOnLaunch
Automatically free memory allocated in a graph before relaunching.
Definition: hip_runtime_api.h:1207
hipMemsetD16Async
hipError_t hipMemsetD16Async(hipDeviceptr_t dest, unsigned short value, size_t count, hipStream_t stream __dparm(0))
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant short value v...
hipMemcpy2DFromArrayAsync
hipError_t hipMemcpy2DFromArrayAsync(void *dst, size_t dpitch, hipArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data between host and device asynchronously.
hipMemGenericAllocationHandle_t
struct ihipMemGenericAllocationHandle * hipMemGenericAllocationHandle_t
Definition: hip_runtime_api.h:1229
hipMemPoolTrimTo
hipError_t hipMemPoolTrimTo(hipMemPool_t mem_pool, size_t min_bytes_to_hold)
Releases freed memory back to the OS.
hipDeviceAttributeMemoryBusWidth
@ hipDeviceAttributeMemoryBusWidth
Global memory bus width in bits.
Definition: hip_runtime_api.h:395
hipDeviceAttributePageableMemoryAccessUsesHostPageTables
@ hipDeviceAttributePageableMemoryAccessUsesHostPageTables
Device accesses pageable memory via the host's page tables.
Definition: hip_runtime_api.h:403
hipGraphNodeTypeMemcpyFromSymbol
@ hipGraphNodeTypeMemcpyFromSymbol
MemcpyFromSymbol node.
Definition: hip_runtime_api.h:1102
hipDestroyExternalMemory
hipError_t hipDestroyExternalMemory(hipExternalMemory_t extMem)
Destroys an external memory object.
hipGraphRemoveDependencies
hipError_t hipGraphRemoveDependencies(hipGraph_t graph, const hipGraphNode_t *from, const hipGraphNode_t *to, size_t numDependencies)
Removes dependency edges from a graph.
hipDeviceAttributeSingleToDoublePrecisionPerfRatio
@ hipDeviceAttributeSingleToDoublePrecisionPerfRatio
Cuda only. Performance ratio of single precision to double precision.
Definition: hip_runtime_api.h:415
hipGetErrorString
const char * hipGetErrorString(hipError_t hipError)
Return handy text string message to explain the error which occurred.
hipMemRangeGetAttributes
hipError_t hipMemRangeGetAttributes(void **data, size_t *data_sizes, hipMemRangeAttribute *attributes, size_t num_attributes, const void *dev_ptr, size_t count)
Query attributes of a given memory range in HIP.
hipGraphLaunch
hipError_t hipGraphLaunch(hipGraphExec_t graphExec, hipStream_t stream)
launches an executable graph in a stream
hipGetDeviceFlags
hipError_t hipGetDeviceFlags(unsigned int *flags)
Gets the flags set for current device.
hipGraphInstantiateFlags
hipGraphInstantiateFlags
Definition: hip_runtime_api.h:1206
hipGraphNodeTypeGraph
@ hipGraphNodeTypeGraph
Node which executes an embedded graph.
Definition: hip_runtime_api.h:1096
hipDeviceGetByPCIBusId
hipError_t hipDeviceGetByPCIBusId(int *device, const char *pciBusId)
Returns a handle to a compute device.
hipErrorInvalidMemcpyDirection
hipErrorInvalidMemcpyDirection
Invalid memory copy direction.
Definition: hip_runtime_api.h:225
hipMemcpyToSymbolAsync
hipError_t hipMemcpyToSymbolAsync(const void *symbol, const void *src, size_t sizeBytes, size_t offset, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data to the given symbol on the device asynchronously.
hipMalloc3DArray
hipError_t hipMalloc3DArray(hipArray **array, const struct hipChannelFormatDesc *desc, struct hipExtent extent, unsigned int flags)
Allocate an array on the device.
hipDeviceArch_t::hasGlobalInt64Atomics
unsigned hasGlobalInt64Atomics
64-bit integer atomics for global memory.
Definition: hip_runtime_api.h:54
hipStreamCaptureStatus
hipStreamCaptureStatus
Definition: hip_runtime_api.h:1180
hipMemRetainAllocationHandle
hipError_t hipMemRetainAllocationHandle(hipMemGenericAllocationHandle_t *handle, void *addr)
Returns the allocation handle of the backing memory allocation given the address.
hipDeviceAttributeSharedMemPerMultiprocessor
@ hipDeviceAttributeSharedMemPerMultiprocessor
Cuda only. Shared memory available per multiprocessor.
Definition: hip_runtime_api.h:414
hipDeviceProp_t::minor
int minor
Definition: hip_runtime_api.h:103
hipDeviceAttributeMaxBlockDimX
@ hipDeviceAttributeMaxBlockDimX
Max block size in width.
Definition: hip_runtime_api.h:361
hipErrorInvalidDevicePointer
hipErrorInvalidDevicePointer
Invalid Device Pointer.
Definition: hip_runtime_api.h:224
hipChooseDevice
hipError_t hipChooseDevice(int *device, const hipDeviceProp_t *prop)
Device which matches hipDeviceProp_t is returned.
hipDeviceAttributeWallClockRate
@ hipDeviceAttributeWallClockRate
Constant frequency of wall clock in kilohertz.
Definition: hip_runtime_api.h:455
hipGraphGetRootNodes
hipError_t hipGraphGetRootNodes(hipGraph_t graph, hipGraphNode_t *pRootNodes, size_t *pNumRootNodes)
Returns graph's root nodes.
hipGraphClone
hipError_t hipGraphClone(hipGraph_t *pGraphClone, hipGraph_t originalGraph)
Clones a graph.
hipStreamBeginCapture
hipError_t hipStreamBeginCapture(hipStream_t stream, hipStreamCaptureMode mode)
Begins graph capture on a stream.
hipMemcpy2DAsync
hipError_t hipMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data between host and device.
hipUserObjectRetainFlags
hipUserObjectRetainFlags
Definition: hip_runtime_api.h:1202
hipMemAccessFlagsProtRead
@ hipMemAccessFlagsProtRead
Set the address range read accessible.
Definition: hip_runtime_api.h:824
hipLaunchKernel
hipError_t hipLaunchKernel(const void *function_address, dim3 numBlocks, dim3 dimBlocks, void **args, size_t sharedMemBytes __dparm(0), hipStream_t stream __dparm(0))
C compliant kernel launch API.
hipMemsetD32
hipError_t hipMemsetD32(hipDeviceptr_t dest, int value, size_t count)
Fills the memory area pointed to by dest with the constant integer value for specified number of time...
hipArrayMapInfo::memOperationType
hipMemOperationType memOperationType
Memory operation type.
Definition: hip_runtime_api.h:1297
hipGLDeviceList
hipGLDeviceList
Definition: hip_runtime_api.h:1040
hipGraphCreate
hipError_t hipGraphCreate(hipGraph_t *pGraph, unsigned int flags)
Creates a graph.
hipGraphExecUpdateErrorTopologyChanged
@ hipGraphExecUpdateErrorTopologyChanged
The update failed because the topology changed.
Definition: hip_runtime_api.h:1164
hipErrorMapBufferObjectFailed
hipErrorMapBufferObjectFailed
Produced when the IPC memory attach failed from ROCr.
Definition: hip_runtime_api.h:237
hipDeviceProp_t::texturePitchAlignment
size_t texturePitchAlignment
Pitch alignment requirement for texture references bound to pitched memory.
Definition: hip_runtime_api.h:133
hipDeviceAttributeMaxGridDimX
@ hipDeviceAttributeMaxGridDimX
Max grid size in width.
Definition: hip_runtime_api.h:364
hipGraphExecHostNodeSetParams
hipError_t hipGraphExecHostNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipHostNodeParams *pNodeParams)
Sets the parameters for a host node in the given graphExec.
hipDeviceArch_t::hasThreadFenceSystem
unsigned hasThreadFenceSystem
__threadfence_system.
Definition: hip_runtime_api.h:67
hipStreamCreate
hipError_t hipStreamCreate(hipStream_t *stream)
Create an asynchronous stream.
hipGraphAddMemcpyNode1D
hipError_t hipGraphAddMemcpyNode1D(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, void *dst, const void *src, size_t count, hipMemcpyKind kind)
Creates a 1D memcpy node and adds it to a graph.
hipMemPoolAttrReleaseThreshold
@ hipMemPoolAttrReleaseThreshold
Definition: hip_runtime_api.h:775
hipDeviceProp_t::pageableMemoryAccessUsesHostPageTables
int pageableMemoryAccessUsesHostPageTables
Device accesses pageable memory via the host's page tables.
Definition: hip_runtime_api.h:152
hipDeviceGetStreamPriorityRange
hipError_t hipDeviceGetStreamPriorityRange(int *leastPriority, int *greatestPriority)
Returns numerical values that correspond to the least and greatest stream priority.
hipGraphAddKernelNode
hipError_t hipGraphAddKernelNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipKernelNodeParams *pNodeParams)
Creates a kernel execution node and adds it to a graph.
hipWaitExternalSemaphoresAsync
hipError_t hipWaitExternalSemaphoresAsync(const hipExternalSemaphore_t *extSemArray, const hipExternalSemaphoreWaitParams *paramsArray, unsigned int numExtSems, hipStream_t stream)
Waits on a set of external semaphore objects.
hipGraphHostNodeGetParams
hipError_t hipGraphHostNodeGetParams(hipGraphNode_t node, hipHostNodeParams *pNodeParams)
Returns a host node's parameters.
hipArrayMapInfo::offsetZ
unsigned int offsetZ
Z offset in elements.
Definition: hip_runtime_api.h:1286
hipDeviceAttributeMaxThreadsDim
@ hipDeviceAttributeMaxThreadsDim
Maximum dimension of a block.
Definition: hip_runtime_api.h:391
hipIpcEventHandle_st
Definition: hip_runtime_api.h:528
hipStreamGetCaptureInfo
hipError_t hipStreamGetCaptureInfo(hipStream_t stream, hipStreamCaptureStatus *pCaptureStatus, unsigned long long *pId)
Get capture status of a stream.
hipDeviceAttributeImageSupport
@ hipDeviceAttributeImageSupport
'1' if Device supports image, '0' otherwise.
Definition: hip_runtime_api.h:451
hipDeviceAttributeLuid
@ hipDeviceAttributeLuid
Cuda only. 8-byte locally unique identifier in 8 bytes. Undefined on TCC and non-Windows platforms.
Definition: hip_runtime_api.h:356
hipMemAdviseSetPreferredLocation
@ hipMemAdviseSetPreferredLocation
Definition: hip_runtime_api.h:693
hipMemLocation
Definition: hip_runtime_api.h:813
hipDeviceProp_t::maxTexture3D
int maxTexture3D[3]
Maximum dimensions (width, height, depth) of 3D images, in image elements.
Definition: hip_runtime_api.h:128
hipGetTextureObjectTextureDesc
hipError_t hipGetTextureObjectTextureDesc(hipTextureDesc *pTexDesc, hipTextureObject_t textureObject)
Gets texture descriptor for the texture object.
hipGraphNodeGetDependencies
hipError_t hipGraphNodeGetDependencies(hipGraphNode_t node, hipGraphNode_t *pDependencies, size_t *pNumDependencies)
Returns a node's dependencies.
hipStreamCreateWithPriority
hipError_t hipStreamCreateWithPriority(hipStream_t *stream, unsigned int flags, int priority)
Create an asynchronous stream with the specified priority.
hipMemRangeAttributeCoherencyMode
@ hipMemRangeAttributeCoherencyMode
Definition: hip_runtime_api.h:734
hipFuncCache_t
hipFuncCache_t
Definition: hip_runtime_api.h:914
hipArraySparseSubresourceTypeMiptail
@ hipArraySparseSubresourceTypeMiptail
Miptail.
Definition: hip_runtime_api.h:1267
hipGraphAddDependencies
hipError_t hipGraphAddDependencies(hipGraph_t graph, const hipGraphNode_t *from, const hipGraphNode_t *to, size_t numDependencies)
Adds dependency edges to a graph.
hipDeviceProp_t::cooperativeMultiDeviceUnmatchedBlockDim
int cooperativeMultiDeviceUnmatchedBlockDim
Definition: hip_runtime_api.h:141
hipMemImportFromShareableHandle
hipError_t hipMemImportFromShareableHandle(hipMemGenericAllocationHandle_t *handle, void *osHandle, hipMemAllocationHandleType shHandleType)
Imports an allocation from a requested shareable handle type.
hipPeekAtLastError
hipError_t hipPeekAtLastError(void)
Return last error returned by any HIP runtime API call.
hipDeviceAttributeMaxSurfaceCubemapLayered
@ hipDeviceAttributeMaxSurfaceCubemapLayered
Cuda only. Maximum dimension of Cubemap layered surface.
Definition: hip_runtime_api.h:373
hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
hipError_t hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags __dparm(hipOccupancyDefault))
Returns occupancy for a device function.
hipModuleGetTexRef
hipError_t hipModuleGetTexRef(textureReference **texRef, hipModule_t hmod, const char *name)
returns the handle of the texture reference with the name from the module.
hipMemcpy3DAsync
hipError_t hipMemcpy3DAsync(const struct hipMemcpy3DParms *p, hipStream_t stream __dparm(0))
Copies data between host and device asynchronously.
hipDeviceGetPCIBusId
hipError_t hipDeviceGetPCIBusId(char *pciBusId, int len, int device)
Returns a PCI Bus Id string for the device, overloaded to take int device ID.
hipGraphDestroy
hipError_t hipGraphDestroy(hipGraph_t graph)
Destroys a graph.
hipHostGetFlags
hipError_t hipHostGetFlags(unsigned int *flagsPtr, void *hostPtr)
Return flags associated with host pointer.
hipGraphExecUpdateErrorParametersChanged
@ hipGraphExecUpdateErrorParametersChanged
The update failed because the parameters changed in a way that is not supported.
Definition: hip_runtime_api.h:1168
hipErrorHostMemoryNotRegistered
hipErrorHostMemoryNotRegistered
Produced when trying to unlock a non-page-locked memory.
Definition: hip_runtime_api.h:278
hipMemPoolAttrReservedMemCurrent
@ hipMemPoolAttrReservedMemCurrent
Definition: hip_runtime_api.h:780
hipErrorRuntimeOther
hipErrorRuntimeOther
Definition: hip_runtime_api.h:317
hipDeviceAttributeClockRate
@ hipDeviceAttributeClockRate
Peak clock frequency in kilohertz.
Definition: hip_runtime_api.h:338
hipMemGetAddressRange
hipError_t hipMemGetAddressRange(hipDeviceptr_t *pbase, size_t *psize, hipDeviceptr_t dptr)
Get information on memory allocations.
hipDeviceProp_t::asicRevision
int asicRevision
Revision of the GPU in this device.
Definition: hip_runtime_api.h:146
hipDeviceAttributeDirectManagedMemAccessFromHost
@ hipDeviceAttributeDirectManagedMemAccessFromHost
Definition: hip_runtime_api.h:347
hipMemAllocationProp::location
hipMemLocation location
Memory location.
Definition: hip_runtime_api.h:1217
hipDestroyExternalSemaphore
hipError_t hipDestroyExternalSemaphore(hipExternalSemaphore_t extSem)
Destroys an external semaphore object and releases any references to the underlying resource....
hipMemHandleTypeWin32Kmt
@ hipMemHandleTypeWin32Kmt
Allows a Win32 KMT handle for exporting. (D3DKMT_HANDLE)
Definition: hip_runtime_api.h:856
hipGraphReleaseUserObject
hipError_t hipGraphReleaseUserObject(hipGraph_t graph, hipUserObject_t object, unsigned int count)
Release user object from graphs.
hipGraphNodeTypeHost
@ hipGraphNodeTypeHost
Host (executable) node.
Definition: hip_runtime_api.h:1095
hipStreamWaitEvent
hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags)
Make the specified compute stream wait for an event.
hipFuncCachePreferEqual
@ hipFuncCachePreferEqual
prefer equal size L1 cache and shared memory
Definition: hip_runtime_api.h:918
hipMemPoolProps::location
hipMemLocation location
Location where allocations should reside.
Definition: hip_runtime_api.h:864
hipGraphInstantiate
hipError_t hipGraphInstantiate(hipGraphExec_t *pGraphExec, hipGraph_t graph, hipGraphNode_t *pErrorNode, char *pLogBuffer, size_t bufferSize)
Creates an executable graph from a graph.
hipDeviceAttributeMaxGridDimZ
@ hipDeviceAttributeMaxGridDimZ
Max grid size in depth.
Definition: hip_runtime_api.h:366
hipGetDevice
hipError_t hipGetDevice(int *deviceId)
Return the default device id for the calling host thread.
hipDeviceSetGraphMemAttribute
hipError_t hipDeviceSetGraphMemAttribute(int device, hipGraphMemAttributeType attr, void *value)
Set the mem attribute for graphs.
hipMemcpyFromSymbolAsync
hipError_t hipMemcpyFromSymbolAsync(void *dst, const void *symbol, size_t sizeBytes, size_t offset, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data from the given symbol on the device asynchronously.
hipStreamWaitValue64
hipError_t hipStreamWaitValue64(hipStream_t stream, void *ptr, uint64_t value, unsigned int flags, uint64_t mask __dparm(0xFFFFFFFFFFFFFFFF))
Enqueues a wait command to the stream.[BETA].
hipMemLocation::id
int id
Identifier for the provided location type hipMemLocationType.
Definition: hip_runtime_api.h:815
hipGraphExecUpdateResult
hipGraphExecUpdateResult
Definition: hip_runtime_api.h:1160
hipMallocArray
hipError_t hipMallocArray(hipArray **array, const hipChannelFormatDesc *desc, size_t width, size_t height __dparm(0), unsigned int flags __dparm(hipArrayDefault))
Allocate an array on the device.
hipGraphExecKernelNodeSetParams
hipError_t hipGraphExecKernelNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipKernelNodeParams *pNodeParams)
Sets the parameters for a kernel node in the given graphExec.
hipCtxSetCurrent
hipError_t hipCtxSetCurrent(hipCtx_t ctx)
Set the passed context as current/default.
hipMemAllocationProp
struct hipMemAllocationProp hipMemAllocationProp
hipGraphExecDestroy
hipError_t hipGraphExecDestroy(hipGraphExec_t graphExec)
Destroys an executable graph.
hipMemRangeCoherencyModeCoarseGrain
@ hipMemRangeCoherencyModeCoarseGrain
Definition: hip_runtime_api.h:715
hipMemcpyToArray
hipError_t hipMemcpyToArray(hipArray *dst, size_t wOffset, size_t hOffset, const void *src, size_t count, hipMemcpyKind kind)
Copies data between host and device.
hipStreamAttachMemAsync
hipError_t hipStreamAttachMemAsync(hipStream_t stream, void *dev_ptr, size_t length __dparm(0), unsigned int flags __dparm(hipMemAttachSingle))
Attach memory to a stream asynchronously in HIP.
HIP_MEMCPY3D
Definition: driver_types.h:379
hipMemoryTypeDevice
@ hipMemoryTypeDevice
Definition: hip_runtime_api.h:161
hipMemGetAccess
hipError_t hipMemGetAccess(unsigned long long *flags, const hipMemLocation *location, void *ptr)
Get the access flags set for the given location and ptr.
hipDeviceAttributeMaxRegistersPerBlock
@ hipDeviceAttributeMaxRegistersPerBlock
Definition: hip_runtime_api.h:408
hipGraphExecChildGraphNodeSetParams
hipError_t hipGraphExecChildGraphNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, hipGraph_t childGraph)
Updates node parameters in the child graph node in the given graphExec.
hipMemcpyDtoDAsync
hipError_t hipMemcpyDtoDAsync(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream)
Copy data from Device to Device asynchronously.
hipErrorNoDevice
hipErrorNoDevice
Call to hipGetDeviceCount returned 0 devices.
Definition: hip_runtime_api.h:230
hipDeviceProp_t::isLargeBar
int isLargeBar
1: if it is a large PCI bar device, else 0
Definition: hip_runtime_api.h:145
hipDeviceAttributeLocalL1CacheSupported
@ hipDeviceAttributeLocalL1CacheSupported
caching locals in L1 is supported
Definition: hip_runtime_api.h:355
hipDeviceAttributeComputeCapabilityMinor
@ hipDeviceAttributeComputeCapabilityMinor
Minor compute capability version number.
Definition: hip_runtime_api.h:397
hipGraphMemcpyNodeSetParams
hipError_t hipGraphMemcpyNodeSetParams(hipGraphNode_t node, const hipMemcpy3DParms *pNodeParams)
Sets a memcpy node's parameters.
hipDeviceAttributeAsicRevision
@ hipDeviceAttributeAsicRevision
Revision of the GPU in this device.
Definition: hip_runtime_api.h:448
hipMemPoolPtrExportData
struct hipMemPoolPtrExportData hipMemPoolPtrExportData
hipGraphEventWaitNodeGetEvent
hipError_t hipGraphEventWaitNodeGetEvent(hipGraphNode_t node, hipEvent_t *event_out)
Returns the event associated with an event wait node.
hipArrayMapInfo::layer
unsigned int layer
For layered arrays must be a valid layer index. Otherwise, must be zero.
Definition: hip_runtime_api.h:1283
hipMemcpy2DFromArray
hipError_t hipMemcpy2DFromArray(void *dst, size_t dpitch, hipArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, hipMemcpyKind kind)
Copies data between host and device.
hipMemHandleTypeNone
@ hipMemHandleTypeNone
Does not allow any export mechanism.
Definition: hip_runtime_api.h:853
hipModuleOccupancyMaxPotentialBlockSizeWithFlags
hipError_t hipModuleOccupancyMaxPotentialBlockSizeWithFlags(int *gridSize, int *blockSize, hipFunction_t f, size_t dynSharedMemPerBlk, int blockSizeLimit, unsigned int flags)
determine the grid and block sizes to achieves maximum occupancy for a kernel
hipDeviceProp_t::concurrentManagedAccess
int concurrentManagedAccess
Device can coherently access managed memory concurrently with the CPU.
Definition: hip_runtime_api.h:149
hipDeviceProp_t::l2CacheSize
int l2CacheSize
L2 cache size.
Definition: hip_runtime_api.h:107
hipDevicePrimaryCtxRelease
hipError_t hipDevicePrimaryCtxRelease(hipDevice_t dev)
Release the primary context on the GPU.
hipDeviceProp_t::textureAlignment
size_t textureAlignment
Alignment requirement for textures.
Definition: hip_runtime_api.h:132
hipGraphExecUpdateError
@ hipGraphExecUpdateError
Definition: hip_runtime_api.h:1162
hipDeviceAttributeMaxTextureCubemap
@ hipDeviceAttributeMaxTextureCubemap
Cuda only. Maximum dimensions of Cubemap texture.
Definition: hip_runtime_api.h:389
hipMemcpyToSymbol
hipError_t hipMemcpyToSymbol(const void *symbol, const void *src, size_t sizeBytes, size_t offset __dparm(0), hipMemcpyKind kind __dparm(hipMemcpyHostToDevice))
Copies data to the given symbol on the device. Symbol HIP APIs allow a kernel to define a device-side...
hipHostMalloc
hipError_t hipHostMalloc(void **ptr, size_t size, unsigned int flags)
Allocate device accessible page locked host memory.
hipDeviceAttributeKernelExecTimeout
@ hipDeviceAttributeKernelExecTimeout
Run time limit for kernels executed on the device.
Definition: hip_runtime_api.h:353
hipGraphNodeTypeEventRecord
@ hipGraphNodeTypeEventRecord
External event record node.
Definition: hip_runtime_api.h:1099
dim3::y
uint32_t y
y
Definition: hip_runtime_api.h:936
hipDeviceAttributeL2CacheSize
@ hipDeviceAttributeL2CacheSize
Size of L2 cache in bytes. 0 if the device doesn't have L2 cache.
Definition: hip_runtime_api.h:354
hipDeviceAttributeCooperativeMultiDeviceUnmatchedGridDim
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedGridDim
Definition: hip_runtime_api.h:441
hipMemRangeGetAttribute
hipError_t hipMemRangeGetAttribute(void *data, size_t data_size, hipMemRangeAttribute attribute, const void *dev_ptr, size_t count)
Query an attribute of a given memory range in HIP.
hipDeviceGetName
hipError_t hipDeviceGetName(char *name, int len, hipDevice_t device)
Returns an identifer string for the device.
hipArrayMapInfo::subresourceType
hipArraySparseSubresourceType subresourceType
Sparse subresource type.
Definition: hip_runtime_api.h:1279
hipDeviceGetDefaultMemPool
hipError_t hipDeviceGetDefaultMemPool(hipMemPool_t *mem_pool, int device)
Returns the default memory pool of the specified device.
hipDeviceAttributeMaxTexture3DWidth
@ hipDeviceAttributeMaxTexture3DWidth
Maximum dimension width of 3D texture.
Definition: hip_runtime_api.h:385
hipDeviceArch_t::hasSurfaceFuncs
unsigned hasSurfaceFuncs
Surface functions.
Definition: hip_runtime_api.h:71
hipDeviceAttributeIntegrated
@ hipDeviceAttributeIntegrated
Device is integrated GPU.
Definition: hip_runtime_api.h:351
hipDeviceProp_t::isMultiGpuBoard
int isMultiGpuBoard
1 if device is on a multi-GPU board, 0 if not.
Definition: hip_runtime_api.h:118
hipMemcpyParam2DAsync
hipError_t hipMemcpyParam2DAsync(const hip_Memcpy2D *pCopy, hipStream_t stream __dparm(0))
Copies memory for 2D arrays.
hipAccessPolicyWindow
Definition: hip_runtime_api.h:1143
hipMemAdvise
hipError_t hipMemAdvise(const void *dev_ptr, size_t count, hipMemoryAdvise advice, int device)
Advise about the usage of a given memory range to HIP.
hipArrayMapInfo::flags
unsigned int flags
flags for future use, must be zero now.
Definition: hip_runtime_api.h:1304
hipDeviceAttributeMaxGridDimY
@ hipDeviceAttributeMaxGridDimY
Max grid size in height.
Definition: hip_runtime_api.h:365
hipDeviceAttributeUnifiedAddressing
@ hipDeviceAttributeUnifiedAddressing
Cuda only. An unified address space shared with the host.
Definition: hip_runtime_api.h:423
hipMemAdviseUnsetCoarseGrain
@ hipMemAdviseUnsetCoarseGrain
Restores cache coherency policy back to fine-grain.
Definition: hip_runtime_api.h:705
hipMemoryTypeHost
@ hipMemoryTypeHost
Memory is physically located on host.
Definition: hip_runtime_api.h:160
hipDeviceAttributeSurfaceAlignment
@ hipDeviceAttributeSurfaceAlignment
Cuda only. Alignment requirement for surfaces.
Definition: hip_runtime_api.h:417
hipFreeAsync
hipError_t hipFreeAsync(void *dev_ptr, hipStream_t stream)
Frees memory with stream ordered semantics.
hipDeviceEnablePeerAccess
hipError_t hipDeviceEnablePeerAccess(int peerDeviceId, unsigned int flags)
Enable direct access from current device's virtual address space to memory allocations physically loc...
hipCtxSetCacheConfig
hipError_t hipCtxSetCacheConfig(hipFuncCache_t cacheConfig)
Set L1/Shared cache partition.
hipExternalMemoryGetMappedBuffer
hipError_t hipExternalMemoryGetMappedBuffer(void **devPtr, hipExternalMemory_t extMem, const hipExternalMemoryBufferDesc *bufferDesc)
Maps a buffer onto an imported memory object.
hipMemGetAllocationGranularity
hipError_t hipMemGetAllocationGranularity(size_t *granularity, const hipMemAllocationProp *prop, hipMemAllocationGranularity_flags option)
Calculates either the minimal or recommended granularity.
hipMemPoolExportToShareableHandle
hipError_t hipMemPoolExportToShareableHandle(void *shared_handle, hipMemPool_t mem_pool, hipMemAllocationHandleType handle_type, unsigned int flags)
Exports a memory pool to the requested handle type.
hipErrorInvalidContext
hipErrorInvalidContext
Produced when input context is invalid.
Definition: hip_runtime_api.h:233
hipDeviceArch_t::hasSharedInt64Atomics
unsigned hasSharedInt64Atomics
64-bit integer atomics for shared memory.
Definition: hip_runtime_api.h:55
hipDeviceProp_t::computeMode
int computeMode
Compute mode.
Definition: hip_runtime_api.h:109
hipGraphicsRegisterFlagsReadOnly
@ hipGraphicsRegisterFlagsReadOnly
HIP will not write to this registered resource.
Definition: hip_runtime_api.h:1055
hipMallocMipmappedArray
hipError_t hipMallocMipmappedArray(hipMipmappedArray_t *mipmappedArray, const struct hipChannelFormatDesc *desc, struct hipExtent extent, unsigned int numLevels, unsigned int flags __dparm(0))
Allocate a mipmapped array on the device.
hipExternalSemaphoreHandleDesc_st
Definition: hip_runtime_api.h:983
hipCtxPushCurrent
hipError_t hipCtxPushCurrent(hipCtx_t ctx)
Push the context to be set as current/ default context.
hipDeviceAttributeIsMultiGpuBoard
@ hipDeviceAttributeIsMultiGpuBoard
Multiple GPU devices.
Definition: hip_runtime_api.h:352
hipSharedMemConfig
hipSharedMemConfig
Definition: hip_runtime_api.h:923
hipGraphGetNodes
hipError_t hipGraphGetNodes(hipGraph_t graph, hipGraphNode_t *nodes, size_t *numNodes)
Returns graph nodes.
hipDeviceAttributeMaxSurfaceCubemap
@ hipDeviceAttributeMaxSurfaceCubemap
Cuda only. Maximum dimensions of Cubemap surface.
Definition: hip_runtime_api.h:372
hipDrvMemcpy3D
hipError_t hipDrvMemcpy3D(const HIP_MEMCPY3D *pCopy)
Copies data between host and device.
hipDeviceAttributeMaxTexture2DMipmap
@ hipDeviceAttributeMaxTexture2DMipmap
Cuda only. Maximum dimensions of 2D mipmapped texture.
Definition: hip_runtime_api.h:384
dim3::x
uint32_t x
x
Definition: hip_runtime_api.h:935
hipGraphNodeTypeMemset
@ hipGraphNodeTypeMemset
Memset node.
Definition: hip_runtime_api.h:1094
hipDeviceAttributeGcnArchName
@ hipDeviceAttributeGcnArchName
Device gcnArch name in 256 bytes.
Definition: hip_runtime_api.h:436
hipDeviceProp_t::clockRate
int clockRate
Max clock frequency of the multiProcessors in khz.
Definition: hip_runtime_api.h:96
hipMemAccessFlagsProtReadWrite
@ hipMemAccessFlagsProtReadWrite
Set the address range read-write accessible.
Definition: hip_runtime_api.h:825
hipDeviceProp_t::hdpRegFlushCntl
unsigned int * hdpRegFlushCntl
Addres of HDP_REG_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:130
hipErrorPeerAccessNotEnabled
hipErrorPeerAccessNotEnabled
Peer access was never enabled from the current device.
Definition: hip_runtime_api.h:271
hipMemAccessDesc
Definition: hip_runtime_api.h:830
hipDeviceComputeCapability
hipError_t hipDeviceComputeCapability(int *major, int *minor, hipDevice_t device)
Returns the compute capability of the device.
hipStreamCaptureStatusNone
@ hipStreamCaptureStatusNone
Stream is not capturing.
Definition: hip_runtime_api.h:1181
hipStreamCallback_t
void(* hipStreamCallback_t)(hipStream_t stream, hipError_t status, void *userData)
Definition: hip_runtime_api.h:2198
hipDeviceProp_t::maxTexture1DLinear
int maxTexture1DLinear
Maximum size for 1D textures bound to linear memory.
Definition: hip_runtime_api.h:125
hipDeviceAttributeComputePreemptionSupported
@ hipDeviceAttributeComputePreemptionSupported
Cuda only. Device supports Compute Preemption.
Definition: hip_runtime_api.h:340
hipGraphKernelNodeSetParams
hipError_t hipGraphKernelNodeSetParams(hipGraphNode_t node, const hipKernelNodeParams *pNodeParams)
Sets a kernel node's parameters.
hipGraphGetEdges
hipError_t hipGraphGetEdges(hipGraph_t graph, hipGraphNode_t *from, hipGraphNode_t *to, size_t *numEdges)
Returns a graph's dependency edges.
hipDeviceArch_t::hasDynamicParallelism
unsigned hasDynamicParallelism
Dynamic parallelism.
Definition: hip_runtime_api.h:73
hipMemoryAdvise
hipMemoryAdvise
Definition: hip_runtime_api.h:689
hip_Memcpy2D
Definition: driver_types.h:95
hipGetMipmappedArrayLevel
hipError_t hipGetMipmappedArrayLevel(hipArray_t *levelArray, hipMipmappedArray_const_t mipmappedArray, unsigned int level)
Gets a mipmap level of a HIP mipmapped array.
hipDestroyTextureObject
hipError_t hipDestroyTextureObject(hipTextureObject_t textureObject)
Destroys a texture object.
hipExternalSemaphoreWaitParams_st
Definition: hip_runtime_api.h:1011
hipDeviceProp_t::canMapHostMemory
int canMapHostMemory
Check whether HIP can map host memory.
Definition: hip_runtime_api.h:119
hipDeviceProp_t::sharedMemPerBlock
size_t sharedMemPerBlock
Size of shared memory region (in bytes).
Definition: hip_runtime_api.h:90
hipModuleOccupancyMaxPotentialBlockSize
hipError_t hipModuleOccupancyMaxPotentialBlockSize(int *gridSize, int *blockSize, hipFunction_t f, size_t dynSharedMemPerBlk, int blockSizeLimit)
determine the grid and block sizes to achieves maximum occupancy for a kernel
hipDeviceAttributeMaxSurface2DLayered
@ hipDeviceAttributeMaxSurface2DLayered
Cuda only. Maximum dimensions of 2D layered surface.
Definition: hip_runtime_api.h:370
__hipPushCallConfiguration
hipError_t __hipPushCallConfiguration(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0))
Push configuration of a kernel launch.
hipIpcCloseMemHandle
hipError_t hipIpcCloseMemHandle(void *devPtr)
Close memory mapped with hipIpcOpenMemHandle.
hipMemPoolExportPointer
hipError_t hipMemPoolExportPointer(hipMemPoolPtrExportData *export_data, void *dev_ptr)
Export data to share a memory pool allocation between processes.
hipDeviceAttributeConcurrentManagedAccess
@ hipDeviceAttributeConcurrentManagedAccess
Device can coherently access managed memory concurrently with the CPU.
Definition: hip_runtime_api.h:342
hipUserObjectFlags
hipUserObjectFlags
Definition: hip_runtime_api.h:1198
hipDevicePrimaryCtxGetState
hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int *flags, int *active)
Get the state of the primary context.
hipGetSymbolSize
hipError_t hipGetSymbolSize(size_t *size, const void *symbol)
Gets the size of the given symbol on the device.
hipDeviceAttributeCooperativeMultiDeviceLaunch
@ hipDeviceAttributeCooperativeMultiDeviceLaunch
Support cooperative launch on multiple devices.
Definition: hip_runtime_api.h:344
hipLaunchCooperativeKernelMultiDevice
hipError_t hipLaunchCooperativeKernelMultiDevice(hipLaunchParams *launchParamsList, int numDevices, unsigned int flags)
Launches kernels on multiple devices where thread blocks can cooperate and synchronize as they execut...
hipMemAllocationProp::requestedHandleType
hipMemAllocationHandleType requestedHandleType
Requested handle type.
Definition: hip_runtime_api.h:1216
hipDeviceProp_t::maxThreadsPerMultiProcessor
int maxThreadsPerMultiProcessor
Maximum resident threads per multi-processor.
Definition: hip_runtime_api.h:108
hipDeviceSetCacheConfig
hipError_t hipDeviceSetCacheConfig(hipFuncCache_t cacheConfig)
Set L1/Shared cache partition.
hipDeviceAttributeMaxSurface2D
@ hipDeviceAttributeMaxSurface2D
Maximum dimension (width, height) of 2D surface.
Definition: hip_runtime_api.h:369
hipDeviceAttributePhysicalMultiProcessorCount
@ hipDeviceAttributePhysicalMultiProcessorCount
Definition: hip_runtime_api.h:452
hipMallocFromPoolAsync
hipError_t hipMallocFromPoolAsync(void **dev_ptr, size_t size, hipMemPool_t mem_pool, hipStream_t stream)
Allocates memory from a specified pool with stream ordered semantics.
hipMemExportToShareableHandle
hipError_t hipMemExportToShareableHandle(void *shareableHandle, hipMemGenericAllocationHandle_t handle, hipMemAllocationHandleType handleType, unsigned long long flags)
Exports an allocation to a requested shareable handle type.
hipThreadExchangeStreamCaptureMode
hipError_t hipThreadExchangeStreamCaptureMode(hipStreamCaptureMode *mode)
Swaps the stream capture mode of a thread.
hipDeviceProp_t::major
int major
Definition: hip_runtime_api.h:100
hipDeviceAttributeMaxSharedMemoryPerBlock
@ hipDeviceAttributeMaxSharedMemoryPerBlock
Maximum shared memory available per block in bytes.
Definition: hip_runtime_api.h:412
hipMemcpyAtoH
hipError_t hipMemcpyAtoH(void *dst, hipArray *srcArray, size_t srcOffset, size_t count)
Copies data between host and device.
hipGetDeviceCount
hipError_t hipGetDeviceCount(int *count)
Return number of compute-capable devices.
hipExtLaunchKernel
hipError_t hipExtLaunchKernel(const void *function_address, dim3 numBlocks, dim3 dimBlocks, void **args, size_t sharedMemBytes, hipStream_t stream, hipEvent_t startEvent, hipEvent_t stopEvent, int flags)
Launches kernel from the pointer address, with arguments and shared memory on stream.
hipSuccess
hipSuccess
Successful completion.
Definition: hip_runtime_api.h:207
hipExternalSemaphoreWaitParams
struct hipExternalSemaphoreWaitParams_st hipExternalSemaphoreWaitParams
hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags)
Returns occupancy for a device function.
hipSetupArgument
hipError_t hipSetupArgument(const void *arg, size_t size, size_t offset)
Set a kernel argument.
hipArrayMapInfo::extentHeight
unsigned int extentHeight
Height in elements.
Definition: hip_runtime_api.h:1288
hipHostUnregister
hipError_t hipHostUnregister(void *hostPtr)
Un-register host pointer.
hipErrorStreamCaptureInvalidated
hipErrorStreamCaptureInvalidated
Definition: hip_runtime_api.h:289
hipDeviceAttributeMaxTexture3DAlt
@ hipDeviceAttributeMaxTexture3DAlt
Cuda only. Maximum dimensions of alternate 3D texture.
Definition: hip_runtime_api.h:388
hipStreamGetFlags
hipError_t hipStreamGetFlags(hipStream_t stream, unsigned int *flags)
Return flags associated with this stream.
hipMemsetD8Async
hipError_t hipMemsetD8Async(hipDeviceptr_t dest, unsigned char value, size_t count, hipStream_t stream __dparm(0))
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant byte value va...
hipDeviceAttributeMaxThreadsPerBlock
@ hipDeviceAttributeMaxThreadsPerBlock
Maximum number of threads per block.
Definition: hip_runtime_api.h:392
hipArrayMapInfo::reserved
unsigned int reserved[2]
Reserved for future use, must be zero now.
Definition: hip_runtime_api.h:1305
hipMemOperationTypeMap
@ hipMemOperationTypeMap
Map operation.
Definition: hip_runtime_api.h:1256
hipGraphNodeTypeMemcpy
@ hipGraphNodeTypeMemcpy
Memcpy node.
Definition: hip_runtime_api.h:1093
hipExtStreamCreateWithCUMask
hipError_t hipExtStreamCreateWithCUMask(hipStream_t *stream, uint32_t cuMaskSize, const uint32_t *cuMask)
Create an asynchronous stream with the specified CU mask.
hipDeviceProp_t::gcnArch
int gcnArch
DEPRECATED: use gcnArchName instead.
Definition: hip_runtime_api.h:120
hipGraph_t
struct ihipGraph * hipGraph_t
Definition: hip_runtime_api.h:1070
hipTexObjectGetResourceViewDesc
hipError_t hipTexObjectGetResourceViewDesc(HIP_RESOURCE_VIEW_DESC *pResViewDesc, hipTextureObject_t texObject)
Gets resource view descriptor of a texture object.
hipStreamSynchronize
hipError_t hipStreamSynchronize(hipStream_t stream)
Wait for all commands in stream to complete.
hipDeviceArch_t
Definition: hip_runtime_api.h:45
hipMemAddressFree
hipError_t hipMemAddressFree(void *devPtr, size_t size)
Frees an address range reservation made via hipMemAddressReserve.
hipMemUnmap
hipError_t hipMemUnmap(void *ptr, size_t size)
Unmap memory allocation of a given address range.
hipGetErrorName
const char * hipGetErrorName(hipError_t hip_error)
Return hip error as text string form.
hipDeviceProp_t::kernelExecTimeoutEnabled
int kernelExecTimeoutEnabled
Run time limit for kernels executed on the device.
Definition: hip_runtime_api.h:134
dim3
struct dim3 dim3
hipDeviceGet
hipError_t hipDeviceGet(hipDevice_t *device, int ordinal)
Returns a handle to a compute device.
hipMemPoolSetAttribute
hipError_t hipMemPoolSetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void *value)
Sets attributes of a memory pool.
hipArrayMapInfo::offset
unsigned long long offset
Offset within mip tail.
Definition: hip_runtime_api.h:1293
hipMemcpyDtoD
hipError_t hipMemcpyDtoD(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes)
Copy data from Device to Device.
hipDeviceProp_t::maxTexture1D
int maxTexture1D
Maximum number of elements in 1D images.
Definition: hip_runtime_api.h:126
hipMemAllocationProp::compressionType
unsigned char compressionType
Compression type.
Definition: hip_runtime_api.h:1220
hipMemcpy3DParms
Definition: driver_types.h:369
hipDeviceAttributeMaxBlockDimZ
@ hipDeviceAttributeMaxBlockDimZ
Max block size in depth.
Definition: hip_runtime_api.h:363
hipMemPoolAttrReservedMemHigh
@ hipMemPoolAttrReservedMemHigh
Definition: hip_runtime_api.h:786
hipGraphExec_t
struct hipGraphExec * hipGraphExec_t
Definition: hip_runtime_api.h:1078
hipMemcpyFromSymbol
hipError_t hipMemcpyFromSymbol(void *dst, const void *symbol, size_t sizeBytes, size_t offset __dparm(0), hipMemcpyKind kind __dparm(hipMemcpyDeviceToHost))
Copies data from the given symbol on the device.
hipIpcGetMemHandle
hipError_t hipIpcGetMemHandle(hipIpcMemHandle_t *handle, void *devPtr)
Gets an interprocess memory handle for an existing device memory allocation.
hipMemPoolProps::reserved
unsigned char reserved[64]
Reserved for future use, must be 0.
Definition: hip_runtime_api.h:869
hipMemcpyHtoD
hipError_t hipMemcpyHtoD(hipDeviceptr_t dst, void *src, size_t sizeBytes)
Copy data from Host to Device.
hipDriverGetVersion
hipError_t hipDriverGetVersion(int *driverVersion)
Returns the approximate HIP driver version.
hipGraphMemcpyNodeGetParams
hipError_t hipGraphMemcpyNodeGetParams(hipGraphNode_t node, hipMemcpy3DParms *pNodeParams)
Gets a memcpy node's parameters.
hipDeviceArch_t::hasDoubles
unsigned hasDoubles
Double-precision floating point.
Definition: hip_runtime_api.h:58
hipErrorInvalidKernelFile
hipErrorInvalidKernelFile
In CUDA DRV, it is CUDA_ERROR_INVALID_PTX.
Definition: hip_runtime_api.h:250
hipStreamCaptureStatusInvalidated
@ hipStreamCaptureStatusInvalidated
Definition: hip_runtime_api.h:1183
hipDeviceProp_t::maxThreadsPerBlock
int maxThreadsPerBlock
Max work items per work group or workgroup max size.
Definition: hip_runtime_api.h:93
hipMemPoolReuseAllowInternalDependencies
@ hipMemPoolReuseAllowInternalDependencies
Definition: hip_runtime_api.h:766
hipCtxGetFlags
hipError_t hipCtxGetFlags(unsigned int *flags)
Return flags used for creating default context.
hipDeviceAttributeMaxTexture1DMipmap
@ hipDeviceAttributeMaxTexture1DMipmap
Cuda only. Maximum size of 1D mipmapped texture.
Definition: hip_runtime_api.h:378
hipDeviceAttributeMaxBlockDimY
@ hipDeviceAttributeMaxBlockDimY
Max block size in height.
Definition: hip_runtime_api.h:362
hipMemcpy2DToArray
hipError_t hipMemcpy2DToArray(hipArray *dst, size_t wOffset, size_t hOffset, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind)
Copies data between host and device.
hipMemHandleTypeGeneric
@ hipMemHandleTypeGeneric
Generic handle type.
Definition: hip_runtime_api.h:1247
hipMemAllocPitch
hipError_t hipMemAllocPitch(hipDeviceptr_t *dptr, size_t *pitch, size_t widthInBytes, size_t height, unsigned int elementSizeBytes)
hipDeviceProp_t
Definition: hip_runtime_api.h:87
hipStreamUpdateCaptureDependenciesFlags
hipStreamUpdateCaptureDependenciesFlags
Definition: hip_runtime_api.h:1187
hipDeviceAttributeCooperativeMultiDeviceUnmatchedBlockDim
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedBlockDim
Definition: hip_runtime_api.h:443
hipGraphMemAttributeType
hipGraphMemAttributeType
Definition: hip_runtime_api.h:1192
hipArrayMapInfo::size
unsigned long long size
Extent in bytes.
Definition: hip_runtime_api.h:1294
hipErrorStreamCaptureUnjoined
hipErrorStreamCaptureUnjoined
Definition: hip_runtime_api.h:294
hipDeviceAttributeMaxTexture2DHeight
@ hipDeviceAttributeMaxTexture2DHeight
Maximum dimension hight of 2D texture.
Definition: hip_runtime_api.h:380
hipGraphNode_t
struct hipGraphNode * hipGraphNode_t
Definition: hip_runtime_api.h:1074
hipDeviceAttributeMaxSurface1D
@ hipDeviceAttributeMaxSurface1D
Maximum size of 1D surface.
Definition: hip_runtime_api.h:367
hipDeviceArch_t::hasSharedInt32Atomics
unsigned hasSharedInt32Atomics
32-bit integer atomics for shared memory.
Definition: hip_runtime_api.h:49
hipGraphExecMemcpyNodeSetParams1D
hipError_t hipGraphExecMemcpyNodeSetParams1D(hipGraphExec_t hGraphExec, hipGraphNode_t node, void *dst, const void *src, size_t count, hipMemcpyKind kind)
Sets the parameters for a memcpy node in the given graphExec to perform a 1-dimensional copy.
hipErrorInvalidValue
hipErrorInvalidValue
Definition: hip_runtime_api.h:208
hipDeviceProp_t::memPitch
size_t memPitch
Maximum pitch in bytes allowed by memory copies.
Definition: hip_runtime_api.h:131
hipDeviceAttributeDeviceOverlap
@ hipDeviceAttributeDeviceOverlap
Definition: hip_runtime_api.h:345
hipMemRelease
hipError_t hipMemRelease(hipMemGenericAllocationHandle_t handle)
Release a memory handle representing a memory allocation which was previously allocated through hipMe...
hipMemsetD32Async
hipError_t hipMemsetD32Async(hipDeviceptr_t dst, int value, size_t count, hipStream_t stream __dparm(0))
Fills the memory area pointed to by dev with the constant integer value for specified number of times...
hipMallocAsync
hipError_t hipMallocAsync(void **dev_ptr, size_t size, hipStream_t stream)
Allocates memory with stream ordered semantics.
hipDeviceProp_t::pciBusID
int pciBusID
PCI Bus ID.
Definition: hip_runtime_api.h:115
hipStreamEndCapture
hipError_t hipStreamEndCapture(hipStream_t stream, hipGraph_t *pGraph)
Ends capture on a stream, returning the captured graph.
hipMemAccessDesc
struct hipMemAccessDesc hipMemAccessDesc
hipRuntimeGetVersion
hipError_t hipRuntimeGetVersion(int *runtimeVersion)
Returns the approximate HIP Runtime version.
hipDeviceAttributeComputeCapabilityMajor
@ hipDeviceAttributeComputeCapabilityMajor
Major compute capability version number.
Definition: hip_runtime_api.h:358
hipConfigureCall
hipError_t hipConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0))
Configure a kernel launch.
hipLaunchCooperativeKernel
hipError_t hipLaunchCooperativeKernel(const void *f, dim3 gridDim, dim3 blockDimX, void **kernelParams, unsigned int sharedMemBytes, hipStream_t stream)
launches kernel f with launch parameters and shared memory on stream with arguments passed to kernelp...
hipEventQuery
hipError_t hipEventQuery(hipEvent_t event)
Query event status.
hipGetChannelDesc
hipError_t hipGetChannelDesc(hipChannelFormatDesc *desc, hipArray_const_t array)
Gets the channel descriptor in an array.
hipDeviceAttributeMaxTexture3DDepth
@ hipDeviceAttributeMaxTexture3DDepth
Maximum dimension depth of 3D texture.
Definition: hip_runtime_api.h:387
hipExtLaunchMultiKernelMultiDevice
hipError_t hipExtLaunchMultiKernelMultiDevice(hipLaunchParams *launchParamsList, int numDevices, unsigned int flags)
Launches kernels on multiple devices and guarantees all specified kernels are dispatched on respectiv...
hipGraphEventWaitNodeSetEvent
hipError_t hipGraphEventWaitNodeSetEvent(hipGraphNode_t node, hipEvent_t event)
Sets an event wait node's event.
hipTexObjectDestroy
hipError_t hipTexObjectDestroy(hipTextureObject_t texObject)
Destroys a texture object.
hipErrorRuntimeMemory
hipErrorRuntimeMemory
Definition: hip_runtime_api.h:315
hipMemPoolGetAccess
hipError_t hipMemPoolGetAccess(hipMemAccessFlags *flags, hipMemPool_t mem_pool, hipMemLocation *location)
Returns the accessibility of a pool from a device.
hipDeviceAttributeMaxThreadsPerMultiProcessor
@ hipDeviceAttributeMaxThreadsPerMultiProcessor
Maximum resident threads per multiprocessor.
Definition: hip_runtime_api.h:393
hipGraphAddChildGraphNode
hipError_t hipGraphAddChildGraphNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, hipGraph_t childGraph)
Creates a child graph node and adds it to a graph.
hipArrayMapInfo::extentWidth
unsigned int extentWidth
Width in elements.
Definition: hip_runtime_api.h:1287
hipStreamGetPriority
hipError_t hipStreamGetPriority(hipStream_t stream, int *priority)
Query the priority of a stream.
hipOccupancyMaxActiveBlocksPerMultiprocessor
hipError_t hipOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *f, int blockSize, size_t dynSharedMemPerBlk)
Returns occupancy for a device function.
hipDrvGetErrorString
hipError_t hipDrvGetErrorString(hipError_t hipError, const char **errorString)
Return handy text string message to explain the error which occurred.
hipDeviceProp_t::arch
hipDeviceArch_t arch
Architectural feature flags. New for HIP.
Definition: hip_runtime_api.h:112
hipCtxGetApiVersion
hipError_t hipCtxGetApiVersion(hipCtx_t ctx, int *apiVersion)
Returns the approximate HIP api version.
hipSharedMemBankSizeFourByte
@ hipSharedMemBankSizeFourByte
Definition: hip_runtime_api.h:925
hipMemPool_t
struct ihipMemPoolHandle_t * hipMemPool_t
Definition: hip_runtime_api.h:536
hipEventSynchronize
hipError_t hipEventSynchronize(hipEvent_t event)
Wait for an event to complete.
hipFuncCachePreferNone
@ hipFuncCachePreferNone
no preference for shared memory or L1 (default)
Definition: hip_runtime_api.h:915
hipMemCreate
hipError_t hipMemCreate(hipMemGenericAllocationHandle_t *handle, size_t size, const hipMemAllocationProp *prop, unsigned long long flags)
Creates a memory allocation described by the properties and size.
hipDeviceAttributeMaxTexture1DLayered
@ hipDeviceAttributeMaxTexture1DLayered
Cuda only. Maximum dimensions of 1D layered texture.
Definition: hip_runtime_api.h:375
hipCtxCreate
hipError_t hipCtxCreate(hipCtx_t *ctx, unsigned int flags, hipDevice_t device)
Create a context and set it as current/ default context.
hipDeviceAttributeHdpRegFlushCntl
@ hipDeviceAttributeHdpRegFlushCntl
Address of the HDP_REG_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:438
hipMemMap
hipError_t hipMemMap(void *ptr, size_t size, size_t offset, hipMemGenericAllocationHandle_t handle, unsigned long long flags)
Maps an allocation handle to a reserved virtual address range.
hipErrorStreamCaptureUnmatched
hipErrorStreamCaptureUnmatched
The capture was not initiated in this stream.
Definition: hip_runtime_api.h:293
hipMemLocationTypeDevice
@ hipMemLocationTypeDevice
Device location, thus it's HIP device ID.
Definition: hip_runtime_api.h:806
hipMemRangeCoherencyModeFineGrain
@ hipMemRangeCoherencyModeFineGrain
Definition: hip_runtime_api.h:713
hipArraySparseSubresourceType
hipArraySparseSubresourceType
Definition: hip_runtime_api.h:1265
hipGraphNodeType
hipGraphNodeType
Definition: hip_runtime_api.h:1091
hipHostFree
hipError_t hipHostFree(void *ptr)
Free memory allocated by the hcc hip host memory allocation API This API performs an implicit hipDevi...
hipDeviceAttributePciBusId
@ hipDeviceAttributePciBusId
PCI Bus ID.
Definition: hip_runtime_api.h:404
hipMemsetD16
hipError_t hipMemsetD16(hipDeviceptr_t dest, unsigned short value, size_t count)
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant short value v...
hipMemoryTypeManaged
@ hipMemoryTypeManaged
Managed memory, automaticallly managed by the unified memory system.
Definition: hip_runtime_api.h:166
hipDeviceProp_t::tccDriver
int tccDriver
1:If device is Tesla device using TCC driver, else 0
Definition: hip_runtime_api.h:136
hipMipmappedArray
Definition: driver_types.h:117
hipMemAllocationType
hipMemAllocationType
Definition: hip_runtime_api.h:839
hipDeviceAttributePersistingL2CacheMaxSize
@ hipDeviceAttributePersistingL2CacheMaxSize
Cuda11 only. Maximum l2 persisting lines capacity in bytes.
Definition: hip_runtime_api.h:407
hipMemRangeAttributeAccessedBy
@ hipMemRangeAttributeAccessedBy
Definition: hip_runtime_api.h:730
hipDeviceGetLimit
hipError_t hipDeviceGetLimit(size_t *pValue, enum hipLimit_t limit)
Get Resource limits of current device.
hipMemPoolImportPointer
hipError_t hipMemPoolImportPointer(void **dev_ptr, hipMemPool_t mem_pool, hipMemPoolPtrExportData *export_data)
Import a memory pool allocation from another process.
hipLaunchParams_t::args
void ** args
Arguments.
Definition: hip_runtime_api.h:946
hipMalloc
hipError_t hipMalloc(void **ptr, size_t size)
Allocate memory on the default accelerator.
hipMemoryTypeUnified
@ hipMemoryTypeUnified
Not used currently.
Definition: hip_runtime_api.h:165
hipMemsetParams
Definition: hip_runtime_api.h:1120
hipGetTextureReference
hipError_t hipGetTextureReference(const textureReference **texref, const void *symbol)
Gets the texture reference related with the symbol.
hipGraphNodeTypeKernel
@ hipGraphNodeTypeKernel
GPU kernel node.
Definition: hip_runtime_api.h:1092
hipDeviceAttributeMaxTexture1DLinear
@ hipDeviceAttributeMaxTexture1DLinear
Definition: hip_runtime_api.h:376
hipTexObjectGetResourceDesc
hipError_t hipTexObjectGetResourceDesc(HIP_RESOURCE_DESC *pResDesc, hipTextureObject_t texObject)
Gets resource descriptor of a texture object.
hipIpcMemHandle_st
Definition: hip_runtime_api.h:525
hipMemPoolAttrUsedMemCurrent
@ hipMemPoolAttrUsedMemCurrent
Definition: hip_runtime_api.h:791
hipDeviceAttributeMemoryPoolsSupported
@ hipDeviceAttributeMemoryPoolsSupported
Device supports HIP Stream Ordered Memory Allocator.
Definition: hip_runtime_api.h:426
hipEventElapsedTime
hipError_t hipEventElapsedTime(float *ms, hipEvent_t start, hipEvent_t stop)
Return the elapsed time between two events.
hipGraphInstantiateWithFlags
hipError_t hipGraphInstantiateWithFlags(hipGraphExec_t *pGraphExec, hipGraph_t graph, unsigned long long flags)
Creates an executable graph from a graph.
hipGetLastError
hipError_t hipGetLastError(void)
Return last error returned by any HIP runtime API call and resets the stored error code to hipSuccess...
hipInit
hipError_t hipInit(unsigned int flags)
Explicitly initializes the HIP runtime.
hipDeviceAttributeTexturePitchAlignment
@ hipDeviceAttributeTexturePitchAlignment
Pitch alignment requirement for 2D texture references bound to pitched memory;.
Definition: hip_runtime_api.h:420
hipGraphExecUpdateErrorFunctionChanged
@ hipGraphExecUpdateErrorFunctionChanged
The update failed because the function of a kernel node changed.
Definition: hip_runtime_api.h:1166
hipDeviceAttributeWarpSize
@ hipDeviceAttributeWarpSize
Warp size in threads.
Definition: hip_runtime_api.h:425
hipGraphMemAttrReservedMemCurrent
@ hipGraphMemAttrReservedMemCurrent
Amount of memory, in bytes, currently allocated for graphs.
Definition: hip_runtime_api.h:1195
hipDeviceArch_t::hasGlobalInt32Atomics
unsigned hasGlobalInt32Atomics
32-bit integer atomics for global memory.
Definition: hip_runtime_api.h:47
HIP_TEXTURE_DESC_st
Definition: driver_types.h:165
hipFuncSetCacheConfig
hipError_t hipFuncSetCacheConfig(const void *func, hipFuncCache_t config)
Set Cache configuration for a specific function.
hipGraphAddMemcpyNodeToSymbol
hipError_t hipGraphAddMemcpyNodeToSymbol(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const void *symbol, const void *src, size_t count, size_t offset, hipMemcpyKind kind)
Creates a memcpy node to copy to a symbol on the device and adds it to a graph.
hipCtxPopCurrent
hipError_t hipCtxPopCurrent(hipCtx_t *ctx)
Pop the current/default context and return the popped context.
hipArray
Definition: driver_types.h:82
hipDeviceArch_t::hasSyncThreadsExt
unsigned hasSyncThreadsExt
__syncthreads_count, syncthreads_and, syncthreads_or.
Definition: hip_runtime_api.h:68
hipGraphExecUpdateSuccess
@ hipGraphExecUpdateSuccess
The update succeeded.
Definition: hip_runtime_api.h:1161
hipHostAlloc
hipError_t hipHostAlloc(void **ptr, size_t size, unsigned int flags)
Allocate device accessible page locked host memory [Deprecated].
hipMemoryTypeArray
@ hipMemoryTypeArray
Definition: hip_runtime_api.h:163
hipMemPoolProps::win32SecurityAttributes
void * win32SecurityAttributes
Definition: hip_runtime_api.h:868
hipGraphNodeTypeWaitEvent
@ hipGraphNodeTypeWaitEvent
External event wait node.
Definition: hip_runtime_api.h:1098
hipErrorInvalidDevice
hipErrorInvalidDevice
DeviceID must be in range 0...#compute-devices.
Definition: hip_runtime_api.h:231
hipDeviceArch_t::hasFunnelShift
unsigned hasFunnelShift
Funnel two words into one with shift&mask caps.
Definition: hip_runtime_api.h:64
hipDeviceAttributeMaxTexture3DHeight
@ hipDeviceAttributeMaxTexture3DHeight
Maximum dimension height of 3D texture.
Definition: hip_runtime_api.h:386
hipDeviceAttributeLuidDeviceNodeMask
@ hipDeviceAttributeLuidDeviceNodeMask
Cuda only. Luid device node mask. Undefined on TCC and non-Windows platforms.
Definition: hip_runtime_api.h:357
hipDeviceAttributeMemoryClockRate
@ hipDeviceAttributeMemoryClockRate
Peak memory clock frequency in kilohertz.
Definition: hip_runtime_api.h:396
hipGraphAddMemcpyNodeFromSymbol
hipError_t hipGraphAddMemcpyNodeFromSymbol(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, void *dst, const void *symbol, size_t count, size_t offset, hipMemcpyKind kind)
Creates a memcpy node to copy from a symbol on the device and adds it to a graph.
hipErrorNotReady
hipErrorNotReady
Definition: hip_runtime_api.h:262
hipDeviceAttributeMaxTexture2DGather
@ hipDeviceAttributeMaxTexture2DGather
Cuda only. Maximum dimensions of 2D texture if gather operations performed.
Definition: hip_runtime_api.h:381
hipHostGetDevicePointer
hipError_t hipHostGetDevicePointer(void **devPtr, void *hstPtr, unsigned int flags)
Get Device pointer from Host Pointer allocated through hipHostMalloc.
hipExternalSemaphoreSignalParams_st
Definition: hip_runtime_api.h:995
hipMemGetInfo
hipError_t hipMemGetInfo(size_t *free, size_t *total)
Query memory info. Return snapshot of free memory, and total allocatable memory on the device.
hipEventDestroy
hipError_t hipEventDestroy(hipEvent_t event)
Destroy the specified event.
hipDeviceAttributeTccDriver
@ hipDeviceAttributeTccDriver
Cuda only. Whether device is a Tesla device using TCC driver.
Definition: hip_runtime_api.h:418
hipMemAdviseSetCoarseGrain
@ hipMemAdviseSetCoarseGrain
Definition: hip_runtime_api.h:700
hipPointerAttribute_t
struct hipPointerAttribute_t hipPointerAttribute_t
hipDeviceSetSharedMemConfig
hipError_t hipDeviceSetSharedMemConfig(hipSharedMemConfig config)
The bank width of shared memory on current device is set.
hipDeviceAttributeUuid
@ hipDeviceAttributeUuid
Cuda only. Unique ID in 16 byte.
Definition: hip_runtime_api.h:424
hipStreamWaitValue32
hipError_t hipStreamWaitValue32(hipStream_t stream, void *ptr, uint32_t value, unsigned int flags, uint32_t mask __dparm(0xFFFFFFFF))
Enqueues a wait command to the stream.[BETA].
hipMemAccessDesc::location
hipMemLocation location
Location on which the accessibility has to change.
Definition: hip_runtime_api.h:831
hipDeviceReset
hipError_t hipDeviceReset(void)
The state of current device is discarded and updated to a fresh state.
hipDeviceProp_t::maxGridSize
int maxGridSize[3]
Max grid dimensions (XYZ).
Definition: hip_runtime_api.h:95
hipDeviceAttributeComputeMode
@ hipDeviceAttributeComputeMode
Compute mode that device is currently in.
Definition: hip_runtime_api.h:339
hipDeviceAttributeName
@ hipDeviceAttributeName
Device name.
Definition: hip_runtime_api.h:400
hipMemPoolDestroy
hipError_t hipMemPoolDestroy(hipMemPool_t mem_pool)
Destroys the specified memory pool.
hipMemAllocationGranularity_flags
hipMemAllocationGranularity_flags
Definition: hip_runtime_api.h:1236
hipSetDeviceFlags
hipError_t hipSetDeviceFlags(unsigned flags)
The current device behavior is changed according the flags passed.
hipCtxGetCurrent
hipError_t hipCtxGetCurrent(hipCtx_t *ctx)
Get the handle of the current/ default context.
hipErrorStreamCaptureIsolation
hipErrorStreamCaptureIsolation
Definition: hip_runtime_api.h:296
hipGraphAddMemcpyNode
hipError_t hipGraphAddMemcpyNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipMemcpy3DParms *pCopyParams)
Creates a memcpy node and adds it to a graph.
hipDeviceAttributePciDeviceId
@ hipDeviceAttributePciDeviceId
PCI Device ID.
Definition: hip_runtime_api.h:405
hipFuncGetAttributes
hipError_t hipFuncGetAttributes(struct hipFuncAttributes *attr, const void *func)
Find out attributes for a given function.
hipDeviceAttributeAccessPolicyMaxWindowSize
@ hipDeviceAttributeAccessPolicyMaxWindowSize
Cuda only. The maximum size of the window policy in bytes.
Definition: hip_runtime_api.h:333
hipStreamCaptureStatusActive
@ hipStreamCaptureStatusActive
Stream is actively capturing.
Definition: hip_runtime_api.h:1182
hipGraphExecUpdateErrorNotSupported
@ hipGraphExecUpdateErrorNotSupported
The update failed because something about the node is not supported.
Definition: hip_runtime_api.h:1170
hipKernelNodeParams
Definition: hip_runtime_api.h:1112
hipErrorIllegalState
hipErrorIllegalState
Resource required is not in a valid state to perform operation.
Definition: hip_runtime_api.h:260
HIP_ARRAY3D_DESCRIPTOR
Definition: driver_types.h:74
hipFuncGetAttribute
hipError_t hipFuncGetAttribute(int *value, hipFunction_attribute attrib, hipFunction_t hfunc)
Find out a specific attribute for a given function.
hipMemGetAllocationPropertiesFromHandle
hipError_t hipMemGetAllocationPropertiesFromHandle(hipMemAllocationProp *prop, hipMemGenericAllocationHandle_t handle)
Retrieve the property structure of the given handle.
hipMemAdviseUnsetReadMostly
@ hipMemAdviseUnsetReadMostly
Undo the effect of hipMemAdviseSetReadMostly.
Definition: hip_runtime_api.h:692
hipDeviceProp_t::maxSharedMemoryPerMultiProcessor
size_t maxSharedMemoryPerMultiProcessor
Maximum Shared Memory Per Multiprocessor.
Definition: hip_runtime_api.h:117
hipDeviceProp_t::clockInstructionRate
int clockInstructionRate
Definition: hip_runtime_api.h:110
hipIpcOpenEventHandle
hipError_t hipIpcOpenEventHandle(hipEvent_t *event, hipIpcEventHandle_t handle)
Opens an interprocess event handles.
dim3
Definition: hip_runtime_api.h:934
hipStreamQuery
hipError_t hipStreamQuery(hipStream_t stream)
Return hipSuccess if all of the operations in the specified stream have completed,...
hipLaunchByPtr
hipError_t hipLaunchByPtr(const void *func)
Launch a kernel.
hipExtStreamGetCUMask
hipError_t hipExtStreamGetCUMask(hipStream_t stream, uint32_t cuMaskSize, uint32_t *cuMask)
Get CU mask associated with an asynchronous stream.
hipDeviceGetUuid
hipError_t hipDeviceGetUuid(hipUUID *uuid, hipDevice_t device)
Returns an UUID for the device.[BETA].
hipExtMallocWithFlags
hipError_t hipExtMallocWithFlags(void **ptr, size_t sizeBytes, unsigned int flags)
Allocate memory on the default accelerator.
hipStreamUpdateCaptureDependencies
hipError_t hipStreamUpdateCaptureDependencies(hipStream_t stream, hipGraphNode_t *dependencies, size_t numDependencies, unsigned int flags __dparm(0))
Update the set of dependencies in a capturing stream.
hipMemAllocationTypePinned
@ hipMemAllocationTypePinned
Definition: hip_runtime_api.h:844
hipMemcpy2DToArrayAsync
hipError_t hipMemcpy2DToArrayAsync(hipArray *dst, size_t wOffset, size_t hOffset, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data between host and device.
hipDeviceProp_t::hdpMemFlushCntl
unsigned int * hdpMemFlushCntl
Addres of HDP_MEM_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:129
hipMemPoolProps::handleTypes
hipMemAllocationHandleType handleTypes
Handle types that will be supported by allocations from the pool.
Definition: hip_runtime_api.h:863
hipDevicePrimaryCtxSetFlags
hipError_t hipDevicePrimaryCtxSetFlags(hipDevice_t dev, unsigned int flags)
Set flags for the primary context.
hipErrorStreamCaptureMerge
hipErrorStreamCaptureMerge
Definition: hip_runtime_api.h:291
hipPointerAttribute_t
Definition: hip_runtime_api.h:172
hipDeviceAttributeTotalConstantMemory
@ hipDeviceAttributeTotalConstantMemory
Constant memory size in bytes.
Definition: hip_runtime_api.h:421
hipFree
hipError_t hipFree(void *ptr)
Free memory allocated by the hcc hip memory allocation API. This API performs an implicit hipDeviceSy...
hipUserObjectCreate
hipError_t hipUserObjectCreate(hipUserObject_t *object_out, void *ptr, hipHostFn_t destroy, unsigned int initialRefcount, unsigned int flags)
Create an instance of userObject to manage lifetime of a resource.
hipTexObjectCreate
hipError_t hipTexObjectCreate(hipTextureObject_t *pTexObject, const HIP_RESOURCE_DESC *pResDesc, const HIP_TEXTURE_DESC *pTexDesc, const HIP_RESOURCE_VIEW_DESC *pResViewDesc)
Creates a texture object.
hipMemMapArrayAsync
hipError_t hipMemMapArrayAsync(hipArrayMapInfo *mapInfoList, unsigned int count, hipStream_t stream)
Maps or unmaps subregions of sparse HIP arrays and sparse HIP mipmapped arrays.
hipGraphMemsetNodeSetParams
hipError_t hipGraphMemsetNodeSetParams(hipGraphNode_t node, const hipMemsetParams *pNodeParams)
Sets a memset node's parameters.
hipDeviceArch_t::hasWarpShuffle
unsigned hasWarpShuffle
Warp shuffle operations. (__shfl_*).
Definition: hip_runtime_api.h:63
hipLaunchParams_t::func
void * func
Device function symbol.
Definition: hip_runtime_api.h:943
hipArrayDefault
#define hipArrayDefault
Definition: hip_runtime_api.h:663
hipGraphExecMemcpyNodeSetParamsToSymbol
hipError_t hipGraphExecMemcpyNodeSetParamsToSymbol(hipGraphExec_t hGraphExec, hipGraphNode_t node, const void *symbol, const void *src, size_t count, size_t offset, hipMemcpyKind kind)
Sets the parameters for a memcpy node in the given graphExec to copy to a symbol on the device.
hipDeviceAttributeGlobalL1CacheSupported
@ hipDeviceAttributeGlobalL1CacheSupported
Cuda only. Device supports caching globals in L1.
Definition: hip_runtime_api.h:349
hipDeviceAttributeTotalGlobalMem
@ hipDeviceAttributeTotalGlobalMem
Global memory available on devicice.
Definition: hip_runtime_api.h:422
hipDevicePrimaryCtxRetain
hipError_t hipDevicePrimaryCtxRetain(hipCtx_t *pctx, hipDevice_t dev)
Retain the primary context on the GPU.
hipGLDeviceListCurrentFrame
@ hipGLDeviceListCurrentFrame
frame
Definition: hip_runtime_api.h:1042
hipGraphEventRecordNodeSetEvent
hipError_t hipGraphEventRecordNodeSetEvent(hipGraphNode_t node, hipEvent_t event)
Sets an event record node's event.
hipCtxSynchronize
hipError_t hipCtxSynchronize(void)
Blocks until the default context has completed all preceding requested tasks.
hipGraphNodeTypeEmpty
@ hipGraphNodeTypeEmpty
Empty (no-op) node.
Definition: hip_runtime_api.h:1097
hipMemcpyHtoA
hipError_t hipMemcpyHtoA(hipArray *dstArray, size_t dstOffset, const void *srcHost, size_t count)
Copies data between host and device.
hipFreeHost
hipError_t hipFreeHost(void *ptr)
Free memory allocated by the hcc hip host memory allocation API. [Deprecated].
surface_types.h
Defines surface types for HIP runtime.
hipLaunchHostFunc
hipError_t hipLaunchHostFunc(hipStream_t stream, hipHostFn_t fn, void *userData)
Enqueues a host function call in a stream.
hipDeviceProp_t::memoryBusWidth
int memoryBusWidth
Global memory bus width in bits.
Definition: hip_runtime_api.h:98
hipStreamAddCallback
hipError_t hipStreamAddCallback(hipStream_t stream, hipStreamCallback_t callback, void *userData, unsigned int flags)
Adds a callback to be called on the host after all currently enqueued items in the stream have comple...
hipDeviceArch_t::hasWarpVote
unsigned hasWarpVote
Warp vote instructions (__any, __all).
Definition: hip_runtime_api.h:61
hipDeviceProp_t::name
char name[256]
Device name.
Definition: hip_runtime_api.h:88
hipDeviceAttributeMaxRegistersPerMultiprocessor
@ hipDeviceAttributeMaxRegistersPerMultiprocessor
32-bit registers available per block.
Definition: hip_runtime_api.h:410
hipMemAllocationProp::win32HandleMetaData
void * win32HandleMetaData
Metadata for Win32 handles.
Definition: hip_runtime_api.h:1218
hipLaunchParams_t::stream
hipStream_t stream
Stream identifier.
Definition: hip_runtime_api.h:948
hipErrorGraphExecUpdateFailure
hipErrorGraphExecUpdateFailure
Definition: hip_runtime_api.h:309
hipMemcpyDtoHAsync
hipError_t hipMemcpyDtoHAsync(void *dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream)
Copy data from Device to Host asynchronously.
hipDeviceArch_t::hasGlobalFloatAtomicExch
unsigned hasGlobalFloatAtomicExch
32-bit float atomic exch for global memory.
Definition: hip_runtime_api.h:48
hipArrayMapInfo::extentDepth
unsigned int extentDepth
Depth in elements.
Definition: hip_runtime_api.h:1289
hipMemRangeCoherencyMode
hipMemRangeCoherencyMode
Definition: hip_runtime_api.h:712
hipErrorStreamCaptureUnsupported
hipErrorStreamCaptureUnsupported
Definition: hip_runtime_api.h:287
hipDeviceProp_t::concurrentKernels
int concurrentKernels
Device can possibly execute multiple kernels concurrently.
Definition: hip_runtime_api.h:113
hipMemRangeAttributeReadMostly
@ hipMemRangeAttributeReadMostly
Definition: hip_runtime_api.h:727
hipUUID_t
Definition: hip_runtime_api.h:76
hipDeviceArch_t::hasWarpBallot
unsigned hasWarpBallot
Warp ballot instructions (__ballot).
Definition: hip_runtime_api.h:62
hipMemAllocationProp::type
hipMemAllocationType type
Memory allocation type.
Definition: hip_runtime_api.h:1215
hipMemRangeAttributeLastPrefetchLocation
@ hipMemRangeAttributeLastPrefetchLocation
prefetched
Definition: hip_runtime_api.h:732
hipDeviceProp_t::totalGlobalMem
size_t totalGlobalMem
Size of global memory region (in bytes).
Definition: hip_runtime_api.h:89
hipMemPoolImportFromShareableHandle
hipError_t hipMemPoolImportFromShareableHandle(hipMemPool_t *mem_pool, void *shared_handle, hipMemAllocationHandleType handle_type, unsigned int flags)
Imports a memory pool from a shared handle.
hipDeviceAttributeTextureAlignment
@ hipDeviceAttributeTextureAlignment
Alignment requirement for textures.
Definition: hip_runtime_api.h:419
hipDrvMemcpy3DAsync
hipError_t hipDrvMemcpy3DAsync(const HIP_MEMCPY3D *pCopy, hipStream_t stream)
Copies data between host and device asynchronously.
hipEventRecord
hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream)
Record an event in the specified stream.
hipExternalMemoryHandleDesc_st
Definition: hip_runtime_api.h:959
hipLaunchParams_t::gridDim
dim3 gridDim
Grid dimentions.
Definition: hip_runtime_api.h:944
hipGraphNodeFindInClone
hipError_t hipGraphNodeFindInClone(hipGraphNode_t *pNode, hipGraphNode_t originalNode, hipGraph_t clonedGraph)
Finds a cloned version of a node.
hipGraphMemAttrUsedMemHigh
@ hipGraphMemAttrUsedMemHigh
High watermark of memory, in bytes, associated with graphs since the last time.
Definition: hip_runtime_api.h:1194
hipMemAccessFlags
hipMemAccessFlags
Definition: hip_runtime_api.h:822
hipDeviceProp_t::directManagedMemAccessFromHost
int directManagedMemAccessFromHost
Host can directly access managed memory on the device without migration.
Definition: hip_runtime_api.h:148
hipMemcpy2D
hipError_t hipMemcpy2D(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind)
Copies data between host and device.
hipMemAllocationProp
Definition: hip_runtime_api.h:1214
hipExtent
Definition: driver_types.h:358
hipPitchedPtr
Definition: driver_types.h:352
hipHostMallocDefault
#define hipHostMallocDefault
Definition: hip_runtime_api.h:591
hipMemOperationType
hipMemOperationType
Definition: hip_runtime_api.h:1255
hipDeviceProp_t::gcnArchName
char gcnArchName[256]
AMD GCN Arch Name.
Definition: hip_runtime_api.h:121
hipMemPoolSetAccess
hipError_t hipMemPoolSetAccess(hipMemPool_t mem_pool, const hipMemAccessDesc *desc_list, size_t count)
Controls visibility of the specified pool between devices.
hipSharedMemBankSizeDefault
@ hipSharedMemBankSizeDefault
The compiler selects a device-specific value for the banking.
Definition: hip_runtime_api.h:924
hipUserObjectRelease
hipError_t hipUserObjectRelease(hipUserObject_t object, unsigned int count __dparm(1))
Release number of references to resource.
hipDeviceAttributeMaxTextureCubemapLayered
@ hipDeviceAttributeMaxTextureCubemapLayered
Cuda only. Maximum dimensions of Cubemap layered texture.
Definition: hip_runtime_api.h:390
hipMemOperationTypeUnmap
@ hipMemOperationTypeUnmap
Unmap operation.
Definition: hip_runtime_api.h:1257
hipMemset2D
hipError_t hipMemset2D(void *dst, size_t pitch, int value, size_t width, size_t height)
Fills the memory area pointed to by dst with the constant value.
hipMemset3D
hipError_t hipMemset3D(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent)
Fills synchronously the memory area pointed to by pitchedDevPtr with the constant value.
hipStreamCreateWithFlags
hipError_t hipStreamCreateWithFlags(hipStream_t *stream, unsigned int flags)
Create an asynchronous stream.
hipGraphKernelNodeSetAttribute
hipError_t hipGraphKernelNodeSetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr, const hipKernelNodeAttrValue *value)
Sets a node attribute.
hipDeviceAttributeMaxSurface3D
@ hipDeviceAttributeMaxSurface3D
Maximum dimension (width, height, depth) of 3D surface.
Definition: hip_runtime_api.h:371
hipDeviceGetAttribute
hipError_t hipDeviceGetAttribute(int *pi, hipDeviceAttribute_t attr, int deviceId)
Query for a specific device attribute.
hipMemcpyFromArray
hipError_t hipMemcpyFromArray(void *dst, hipArray_const_t srcArray, size_t wOffset, size_t hOffset, size_t count, hipMemcpyKind kind)
Copies data between host and device.
hipDeviceAttributeCanMapHostMemory
@ hipDeviceAttributeCanMapHostMemory
Whether host memory can be mapped into device address space.
Definition: hip_runtime_api.h:335
hipGraphExecUpdate
hipError_t hipGraphExecUpdate(hipGraphExec_t hGraphExec, hipGraph_t hGraph, hipGraphNode_t *hErrorNode_out, hipGraphExecUpdateResult *updateResult_out)
Check whether an executable graph can be updated with a graph and perform the update if * possible.
hipDeviceProp_t::maxThreadsDim
int maxThreadsDim[3]
Max number of threads in each dimension (XYZ) of a block.
Definition: hip_runtime_api.h:94
hipMemAllocationHandleType
hipMemAllocationHandleType
Definition: hip_runtime_api.h:852
hipMemAccessFlagsProtNone
@ hipMemAccessFlagsProtNone
Default, make the address range not accessible.
Definition: hip_runtime_api.h:823
hipMemcpyPeerAsync
hipError_t hipMemcpyPeerAsync(void *dst, int dstDeviceId, const void *src, int srcDevice, size_t sizeBytes, hipStream_t stream __dparm(0))
Copies memory from one device to memory on another device.
hipDrvMemcpy2DUnaligned
hipError_t hipDrvMemcpy2DUnaligned(const hip_Memcpy2D *pCopy)
hipDeviceAttributePciDomainID
@ hipDeviceAttributePciDomainID
PCI Domain ID.
Definition: hip_runtime_api.h:406
hipMemcpyHtoDAsync
hipError_t hipMemcpyHtoDAsync(hipDeviceptr_t dst, void *src, size_t sizeBytes, hipStream_t stream)
Copy data from Host to Device asynchronously.
hipDeviceProp_t::cooperativeMultiDeviceLaunch
int cooperativeMultiDeviceLaunch
HIP device supports cooperative launch on multiple devices.
Definition: hip_runtime_api.h:124
hipMemPoolGetAttribute
hipError_t hipMemPoolGetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void *value)
Gets attributes of a memory pool.
hipSignalExternalSemaphoresAsync
hipError_t hipSignalExternalSemaphoresAsync(const hipExternalSemaphore_t *extSemArray, const hipExternalSemaphoreSignalParams *paramsArray, unsigned int numExtSems, hipStream_t stream)
Signals a set of external semaphore objects.
hipMemcpyDtoH
hipError_t hipMemcpyDtoH(void *dst, hipDeviceptr_t src, size_t sizeBytes)
Copy data from Device to Host.
hipDeviceArch_t::has3dGrid
unsigned has3dGrid
Grid and group dims are 3D (rather than 2D).
Definition: hip_runtime_api.h:72
hipDeviceGetCacheConfig
hipError_t hipDeviceGetCacheConfig(hipFuncCache_t *cacheConfig)
Get Cache configuration for a specific Device.
hipModuleGetGlobal
hipError_t hipModuleGetGlobal(hipDeviceptr_t *dptr, size_t *bytes, hipModule_t hmod, const char *name)
Returns a global pointer from a module. Returns in *dptr and *bytes the pointer and size of the globa...
hipGraphAddEventWaitNode
hipError_t hipGraphAddEventWaitNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, hipEvent_t event)
Creates an event wait node and adds it to a graph.
hipMemcpyPeer
hipError_t hipMemcpyPeer(void *dst, int dstDeviceId, const void *src, int srcDeviceId, size_t sizeBytes)
Copies memory from one device to memory on another device.
hipDeviceAttributeMaxTexture1DWidth
@ hipDeviceAttributeMaxTexture1DWidth
Maximum size of 1D texture.
Definition: hip_runtime_api.h:374
hipMemHandleTypePosixFileDescriptor
@ hipMemHandleTypePosixFileDescriptor
Allows a file descriptor for exporting. Permitted only on POSIX systems.
Definition: hip_runtime_api.h:854
hipDeviceAttributeCooperativeLaunch
@ hipDeviceAttributeCooperativeLaunch
Support cooperative launch.
Definition: hip_runtime_api.h:343
hipImportExternalSemaphore
hipError_t hipImportExternalSemaphore(hipExternalSemaphore_t *extSem_out, const hipExternalSemaphoreHandleDesc *semHandleDesc)
Imports an external semaphore.
hipModuleLoadDataEx
hipError_t hipModuleLoadDataEx(hipModule_t *module, const void *image, unsigned int numOptions, hipJitOption *options, void **optionValues)
builds module from code object which resides in host memory. Image is pointer to that location....
hipFreeMipmappedArray
hipError_t hipFreeMipmappedArray(hipMipmappedArray_t mipmappedArray)
Frees a mipmapped array on the device.
hipGraphNodeGetDependentNodes
hipError_t hipGraphNodeGetDependentNodes(hipGraphNode_t node, hipGraphNode_t *pDependentNodes, size_t *pNumDependentNodes)
Returns a node's dependent nodes.
hipDeviceAttributeMultiprocessorCount
@ hipDeviceAttributeMultiprocessorCount
Number of multiprocessors on the device.
Definition: hip_runtime_api.h:399
hipGraphEventRecordNodeGetEvent
hipError_t hipGraphEventRecordNodeGetEvent(hipGraphNode_t node, hipEvent_t *event_out)
Returns the event associated with an event record node.
hipGLDeviceListAll
@ hipGLDeviceListAll
All hip devices used by current OpenGL context.
Definition: hip_runtime_api.h:1041
hipIpcGetEventHandle
hipError_t hipIpcGetEventHandle(hipIpcEventHandle_t *handle, hipEvent_t event)
Gets an opaque interprocess handle for an event.
hipDeviceProp_t::pciDeviceID
int pciDeviceID
PCI Device ID.
Definition: hip_runtime_api.h:116
hipGetDeviceProperties
hipError_t hipGetDeviceProperties(hipDeviceProp_t *prop, int deviceId)
Returns device properties.
hipGraphAddEmptyNode
hipError_t hipGraphAddEmptyNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies)
Creates an empty node and adds it to a graph.
hipGraphAddHostNode
hipError_t hipGraphAddHostNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipHostNodeParams *pNodeParams)
Creates a host execution node and adds it to a graph.
hipDeviceAttributeArch
@ hipDeviceAttributeArch
Device architecture.
Definition: hip_runtime_api.h:433
hipMemcpy
hipError_t hipMemcpy(void *dst, const void *src, size_t sizeBytes, hipMemcpyKind kind)
Copy data from src to dst.
hipDeviceAttributeIsLargeBar
@ hipDeviceAttributeIsLargeBar
Whether it is LargeBar.
Definition: hip_runtime_api.h:447
hipDeviceProp_t::memoryClockRate
int memoryClockRate
Max global memory clock frequency in khz.
Definition: hip_runtime_api.h:97
hipEventCreateWithFlags
hipError_t hipEventCreateWithFlags(hipEvent_t *event, unsigned flags)
Create an event with the specified flags.
hipMemAdviseUnsetAccessedBy
@ hipMemAdviseUnsetAccessedBy
Definition: hip_runtime_api.h:698
hipErrorCooperativeLaunchTooLarge
hipErrorCooperativeLaunchTooLarge
Definition: hip_runtime_api.h:282
hipGraphExecMemcpyNodeSetParamsFromSymbol
hipError_t hipGraphExecMemcpyNodeSetParamsFromSymbol(hipGraphExec_t hGraphExec, hipGraphNode_t node, void *dst, const void *symbol, size_t count, size_t offset, hipMemcpyKind kind)
Sets the parameters for a memcpy node in the given graphExec to copy from a symbol on the.
hipBindTextureToMipmappedArray
hipError_t hipBindTextureToMipmappedArray(const textureReference *tex, hipMipmappedArray_const_t mipmappedArray, const hipChannelFormatDesc *desc)
Binds a mipmapped array to a texture.
hipDeviceProp_t::pageableMemoryAccess
int pageableMemoryAccess
Definition: hip_runtime_api.h:150
hipMemHandleType
hipMemHandleType
Definition: hip_runtime_api.h:1246
hipMemPoolReuseFollowEventDependencies
@ hipMemPoolReuseFollowEventDependencies
Definition: hip_runtime_api.h:753
hipGraphNodeGetType
hipError_t hipGraphNodeGetType(hipGraphNode_t node, hipGraphNodeType *pType)
Returns a node's type.
hipDeviceProp_t::warpSize
int warpSize
Warp size.
Definition: hip_runtime_api.h:92
hipDeviceTotalMem
hipError_t hipDeviceTotalMem(size_t *bytes, hipDevice_t device)
Returns the total amount of memory on the device.
hipDeviceAttributeReservedSharedMemPerBlock
@ hipDeviceAttributeReservedSharedMemPerBlock
Cuda11 only. Shared memory reserved by CUDA driver per block.
Definition: hip_runtime_api.h:411
hipFreeArray
hipError_t hipFreeArray(hipArray *array)
Frees an array on the device.
hipMallocManaged
hipError_t hipMallocManaged(void **dev_ptr, size_t size, unsigned int flags __dparm(hipMemAttachGlobal))
Allocates memory that will be automatically managed by HIP.
hipErrorAssert
hipErrorAssert
Produced when the kernel calls assert.
Definition: hip_runtime_api.h:275
hipGraphHostNodeSetParams
hipError_t hipGraphHostNodeSetParams(hipGraphNode_t node, const hipHostNodeParams *pNodeParams)
Sets a host node's parameters.
textureReference
Definition: texture_types.h:88
hipDeviceAttributeStreamPrioritiesSupported
@ hipDeviceAttributeStreamPrioritiesSupported
Cuda only. Whether to support stream priorities.
Definition: hip_runtime_api.h:416
hipErrorCapturedEvent
hipErrorCapturedEvent
Definition: hip_runtime_api.h:303
hipMemPoolAttr
hipMemPoolAttr
Definition: hip_runtime_api.h:744
hipArrayMapInfo::memHandleType
hipMemHandleType memHandleType
Memory handle type.
Definition: hip_runtime_api.h:1298
hipDeviceProp_t::cooperativeMultiDeviceUnmatchedFunc
int cooperativeMultiDeviceUnmatchedFunc
Definition: hip_runtime_api.h:137
hipCtxGetSharedMemConfig
hipError_t hipCtxGetSharedMemConfig(hipSharedMemConfig *pConfig)
Get Shared memory bank configuration.
hipGetSymbolAddress
hipError_t hipGetSymbolAddress(void **devPtr, const void *symbol)
Gets device pointer associated with symbol on the device.
hipDeviceProp_t::cooperativeMultiDeviceUnmatchedGridDim
int cooperativeMultiDeviceUnmatchedGridDim
Definition: hip_runtime_api.h:139
hipDeviceCanAccessPeer
hipError_t hipDeviceCanAccessPeer(int *canAccessPeer, int deviceId, int peerDeviceId)
Determine if a device can access a peer's memory.
hipDrvGetErrorName
hipError_t hipDrvGetErrorName(hipError_t hipError, const char **errorString)
Return hip error as text string form.
hipMemAdviseUnsetPreferredLocation
@ hipMemAdviseUnsetPreferredLocation
Clear the preferred location for the data.
Definition: hip_runtime_api.h:695
hipModuleGetFunction
hipError_t hipModuleGetFunction(hipFunction_t *function, hipModule_t module, const char *kname)
Function with kname will be extracted if present in module.
hipErrorStreamCaptureWrongThread
hipErrorStreamCaptureWrongThread
Definition: hip_runtime_api.h:305
hipDeviceAttributeMultiGpuBoardGroupID
@ hipDeviceAttributeMultiGpuBoardGroupID
Cuda only. Unique ID of device group on the same multi-GPU board.
Definition: hip_runtime_api.h:398
hipDeviceArch_t::hasFloatAtomicAdd
unsigned hasFloatAtomicAdd
32-bit float atomic add in global and shared memory.
Definition: hip_runtime_api.h:51
hipStreamIsCapturing
hipError_t hipStreamIsCapturing(hipStream_t stream, hipStreamCaptureStatus *pCaptureStatus)
Get stream's capture state.
hipDeviceGetMemPool
hipError_t hipDeviceGetMemPool(hipMemPool_t *mem_pool, int device)
Gets the current memory pool for the specified device.
hipUserObjectNoDestructorSync
@ hipUserObjectNoDestructorSync
Destructor execution is not synchronized.
Definition: hip_runtime_api.h:1199
hipDeviceAttributeClockInstructionRate
@ hipDeviceAttributeClockInstructionRate
Frequency in khz of the timer used by the device-side "clock*".
Definition: hip_runtime_api.h:432
hipStreamGetCaptureInfo_v2
hipError_t hipStreamGetCaptureInfo_v2(hipStream_t stream, hipStreamCaptureStatus *captureStatus_out, unsigned long long *id_out __dparm(0), hipGraph_t *graph_out __dparm(0), const hipGraphNode_t **dependencies_out __dparm(0), size_t *numDependencies_out __dparm(0))
Get stream's capture state.
hipMemLocation
struct hipMemLocation hipMemLocation
hipMemRangeCoherencyModeIndeterminate
@ hipMemRangeCoherencyModeIndeterminate
Definition: hip_runtime_api.h:717
hipGraphExecMemsetNodeSetParams
hipError_t hipGraphExecMemsetNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipMemsetParams *pNodeParams)
Sets the parameters for a memset node in the given graphExec.
hipGraphExecEventRecordNodeSetEvent
hipError_t hipGraphExecEventRecordNodeSetEvent(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, hipEvent_t event)
Sets the event for an event record node in the given graphExec.
hipMemPrefetchAsync
hipError_t hipMemPrefetchAsync(const void *dev_ptr, size_t count, int device, hipStream_t stream __dparm(0))
Prefetches memory to the specified destination device using HIP.
hipCtxDisablePeerAccess
hipError_t hipCtxDisablePeerAccess(hipCtx_t peerCtx)
Disable direct access from current context's virtual address space to memory allocations physically l...
hipDeviceProp_t::cooperativeLaunch
int cooperativeLaunch
HIP device supports cooperative launch.
Definition: hip_runtime_api.h:123
hipMemAddressReserve
hipError_t hipMemAddressReserve(void **ptr, size_t size, size_t alignment, void *addr, unsigned long long flags)
Reserves an address range.
hipArrayMapInfo::offsetY
unsigned int offsetY
Y offset in elements.
Definition: hip_runtime_api.h:1285
hipDeviceArch_t::hasSharedFloatAtomicExch
unsigned hasSharedFloatAtomicExch
32-bit float atomic exch for shared memory.
Definition: hip_runtime_api.h:50
hipDeviceAttributeCooperativeMultiDeviceUnmatchedSharedMem
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedSharedMem
Definition: hip_runtime_api.h:445
HIP_RESOURCE_DESC_st
Definition: driver_types.h:282
hipTextureDesc
Definition: texture_types.h:109
hipResourceViewDesc
Definition: driver_types.h:314
hipStreamWriteValue64
hipError_t hipStreamWriteValue64(hipStream_t stream, void *ptr, uint64_t value, unsigned int flags)
Enqueues a write command to the stream.[BETA].
hipDeviceProp_t::multiProcessorCount
int multiProcessorCount
Number of multi-processors (compute units).
Definition: hip_runtime_api.h:106
hipGraphDestroyNode
hipError_t hipGraphDestroyNode(hipGraphNode_t node)
Remove a node from the graph.
hipDeviceAttributeHostNativeAtomicSupported
@ hipDeviceAttributeHostNativeAtomicSupported
Cuda only. Link between the device and the host supports native atomic operations.
Definition: hip_runtime_api.h:350
hipDeviceGraphMemTrim
hipError_t hipDeviceGraphMemTrim(int device)
Free unused memory on specific device used for graph back to OS.
dim3::z
uint32_t z
z
Definition: hip_runtime_api.h:937
hipGraphKernelNodeGetAttribute
hipError_t hipGraphKernelNodeGetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr, hipKernelNodeAttrValue *value)
Gets a node attribute.
hipUserObjectRetain
hipError_t hipUserObjectRetain(hipUserObject_t object, unsigned int count __dparm(1))
Retain number of references to resource.
hipArrayMapInfo::level
unsigned int level
For mipmapped arrays must be a valid mipmap level. For arrays must be zero.
Definition: hip_runtime_api.h:1282
hipCtxSetSharedMemConfig
hipError_t hipCtxSetSharedMemConfig(hipSharedMemConfig config)
Set Shared memory bank configuration.
hipDeviceProp_t::integrated
int integrated
APU vs dGPU.
Definition: hip_runtime_api.h:122
hipMemsetD8
hipError_t hipMemsetD8(hipDeviceptr_t dest, unsigned char value, size_t count)
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant byte value va...
hipGraphUpload
hipError_t hipGraphUpload(hipGraphExec_t graphExec, hipStream_t stream)
uploads an executable graph in a stream
hipMemset2DAsync
hipError_t hipMemset2DAsync(void *dst, size_t pitch, int value, size_t width, size_t height, hipStream_t stream __dparm(0))
Fills asynchronously the memory area pointed to by dst with the constant value.
hipHostNodeParams
Definition: hip_runtime_api.h:1108
hipDeviceProp_t::ECCEnabled
int ECCEnabled
Device has ECC support enabled.
Definition: hip_runtime_api.h:135
hipGraphMemAttrUsedMemCurrent
@ hipGraphMemAttrUsedMemCurrent
Amount of memory, in bytes, currently associated with graphs.
Definition: hip_runtime_api.h:1193
HIP_ARRAY_DESCRIPTOR
Definition: driver_types.h:68
hipArrayMapInfo::resourceType
hipResourceType resourceType
Resource type.
Definition: hip_runtime_api.h:1274
hipMemAllocationProp::gpuDirectRDMACapable
unsigned char gpuDirectRDMACapable
RDMA capable.
Definition: hip_runtime_api.h:1221
hipGraphMemcpyNodeSetParams1D
hipError_t hipGraphMemcpyNodeSetParams1D(hipGraphNode_t node, void *dst, const void *src, size_t count, hipMemcpyKind kind)
Sets a memcpy node's parameters to perform a 1-dimensional copy.
hipCtxGetDevice
hipError_t hipCtxGetDevice(hipDevice_t *device)
Get the handle of the device associated with current/default context.
hipDeviceAttributeCanUseStreamWaitValue
@ hipDeviceAttributeCanUseStreamWaitValue
Definition: hip_runtime_api.h:449
hipLaunchParams_t::blockDim
dim3 blockDim
Block dimentions.
Definition: hip_runtime_api.h:945
hipDeviceProp_t::totalConstMem
size_t totalConstMem
Size of shared memory region (in bytes).
Definition: hip_runtime_api.h:99
hipDeviceProp_t::maxTexture2D
int maxTexture2D[2]
Maximum dimensions (width, height) of 2D images, in image elements.
Definition: hip_runtime_api.h:127
hipMemAllocHost
hipError_t hipMemAllocHost(void **ptr, size_t size)
Allocate pinned host memory [Deprecated].
hipDeviceAttributeCanUseHostPointerForRegisteredMem
@ hipDeviceAttributeCanUseHostPointerForRegisteredMem
Definition: hip_runtime_api.h:336
hipMemAttachGlobal
#define hipMemAttachGlobal
Definition: hip_runtime_api.h:615
hipCreateTextureObject
hipError_t hipCreateTextureObject(hipTextureObject_t *pTexObject, const hipResourceDesc *pResDesc, const hipTextureDesc *pTexDesc, const struct hipResourceViewDesc *pResViewDesc)
Creates a texture object.
hipLaunchParams_t
Definition: hip_runtime_api.h:942
hipFuncCachePreferShared
@ hipFuncCachePreferShared
prefer larger shared memory and smaller L1 cache
Definition: hip_runtime_api.h:916
hipGraphRetainUserObject
hipError_t hipGraphRetainUserObject(hipGraph_t graph, hipUserObject_t object, unsigned int count __dparm(1), unsigned int flags __dparm(0))
Retain user object for graphs.
hipMemRangeAttributePreferredLocation
@ hipMemRangeAttributePreferredLocation
The preferred location of the range.
Definition: hip_runtime_api.h:729
hipErrorHostMemoryAlreadyRegistered
hipErrorHostMemoryAlreadyRegistered
Produced when trying to lock a page-locked memory.
Definition: hip_runtime_api.h:276
hipDeviceAttributeMaxSurface1DLayered
@ hipDeviceAttributeMaxSurface1DLayered
Cuda only. Maximum dimensions of 1D layered surface.
Definition: hip_runtime_api.h:368
hipMemAdviseSetReadMostly
@ hipMemAdviseSetReadMostly
Definition: hip_runtime_api.h:690
hipFuncAttribute
hipFuncAttribute
Definition: hip_runtime_api.h:906
hipMemLocation::type
hipMemLocationType type
Specifies the location type, which describes the meaning of id.
Definition: hip_runtime_api.h:814
hipMemLocationType
hipMemLocationType
Definition: hip_runtime_api.h:804
hipGraphMemsetNodeGetParams
hipError_t hipGraphMemsetNodeGetParams(hipGraphNode_t node, hipMemsetParams *pNodeParams)
Gets a memset node's parameters.
hipMemPoolReuseAllowOpportunistic
@ hipMemPoolReuseAllowOpportunistic
Definition: hip_runtime_api.h:759
hipSharedMemBankSizeEightByte
@ hipSharedMemBankSizeEightByte
Definition: hip_runtime_api.h:927
hipDeviceAttribute_t
hipDeviceAttribute_t
Definition: hip_runtime_api.h:329
hipMemPoolCreate
hipError_t hipMemPoolCreate(hipMemPool_t *mem_pool, const hipMemPoolProps *pool_props)
Creates a memory pool.
hipGraphChildGraphNodeGetGraph
hipError_t hipGraphChildGraphNodeGetGraph(hipGraphNode_t node, hipGraph_t *pGraph)
Gets a handle to the embedded graph of a child graph node.
hipFuncSetSharedMemConfig
hipError_t hipFuncSetSharedMemConfig(const void *func, hipSharedMemConfig config)
Set shared memory configuation for a specific function.
hipExtGetLinkTypeAndHopCount
hipError_t hipExtGetLinkTypeAndHopCount(int device1, int device2, uint32_t *linktype, uint32_t *hopcount)
Returns the link type and hop count between two devices.
hipArraySparseSubresourceTypeSparseLevel
@ hipArraySparseSubresourceTypeSparseLevel
Sparse level.
Definition: hip_runtime_api.h:1266
hipMemPoolAttrUsedMemHigh
@ hipMemPoolAttrUsedMemHigh
Definition: hip_runtime_api.h:797
hipMemAdviseSetAccessedBy
@ hipMemAdviseSetAccessedBy
Definition: hip_runtime_api.h:696
hipGraphicsRegisterFlagsWriteDiscard
@ hipGraphicsRegisterFlagsWriteDiscard
HIP will only write and will not read from this registered resource.
Definition: hip_runtime_api.h:1056
hipGraphUserObjectMove
@ hipGraphUserObjectMove
Add new reference or retain.
Definition: hip_runtime_api.h:1203
hipTexObjectGetTextureDesc
hipError_t hipTexObjectGetTextureDesc(HIP_TEXTURE_DESC *pTexDesc, hipTextureObject_t texObject)
Gets texture descriptor of a texture object.
hipResourceDesc
Definition: driver_types.h:258
hipErrorMemoryAllocation
hipErrorMemoryAllocation
Memory allocation error.
Definition: hip_runtime_api.h:212
hipErrorLaunchFailure
hipErrorLaunchFailure
An exception occurred on the device while executing a kernel.
Definition: hip_runtime_api.h:280
hipGraphicsRegisterFlagsSurfaceLoadStore
@ hipGraphicsRegisterFlagsSurfaceLoadStore
HIP will bind this resource to a surface.
Definition: hip_runtime_api.h:1058
hipDeviceSynchronize
hipError_t hipDeviceSynchronize(void)
Waits on all active streams on current device.
hipCtxGetCacheConfig
hipError_t hipCtxGetCacheConfig(hipFuncCache_t *cacheConfig)
Set Cache configuration for a specific function.
hipLaunchParams_t::sharedMem
size_t sharedMem
Shared memory.
Definition: hip_runtime_api.h:947
hipMemAllocationGranularityRecommended
@ hipMemAllocationGranularityRecommended
Recommended granularity for performance.
Definition: hip_runtime_api.h:1238
hipStreamAddCaptureDependencies
@ hipStreamAddCaptureDependencies
Add new nodes to the dependency set.
Definition: hip_runtime_api.h:1188
hipDeviceAttributeMaxBlocksPerMultiProcessor
@ hipDeviceAttributeMaxBlocksPerMultiProcessor
Cuda only. Max block size per multiprocessor.
Definition: hip_runtime_api.h:360
hipCtxDestroy
hipError_t hipCtxDestroy(hipCtx_t ctx)
Destroy a HIP context.
hipDeviceAttributeGcnArch
@ hipDeviceAttributeGcnArch
Device gcn architecture.
Definition: hip_runtime_api.h:435
hipModuleLaunchKernel
hipError_t hipModuleLaunchKernel(hipFunction_t f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, hipStream_t stream, void **kernelParams, void **extra)
launches kernel f with launch parameters and shared memory on stream with arguments passed to kernelp...
hipDeviceAttributeConcurrentKernels
@ hipDeviceAttributeConcurrentKernels
Device can possibly execute multiple kernels concurrently.
Definition: hip_runtime_api.h:341
hipGraphKernelNodeGetParams
hipError_t hipGraphKernelNodeGetParams(hipGraphNode_t node, hipKernelNodeParams *pNodeParams)
Gets kernel node's parameters.
hipDeviceAttributeMaxTexture2DLayered
@ hipDeviceAttributeMaxTexture2DLayered
Cuda only. Maximum dimensions of 2D layered texture.
Definition: hip_runtime_api.h:382
hipDeviceProp_t::cooperativeMultiDeviceUnmatchedSharedMem
int cooperativeMultiDeviceUnmatchedSharedMem
Definition: hip_runtime_api.h:143
hipMemAllocationProp::usage
unsigned short usage
Usage.
Definition: hip_runtime_api.h:1222
hipProfilerStart
hipError_t hipProfilerStart()
Start recording of profiling information When using this API, start the profiler with profiling disab...
hipDeviceGetSharedMemConfig
hipError_t hipDeviceGetSharedMemConfig(hipSharedMemConfig *pConfig)
Returns bank width of shared memory for current device.
hipErrorNotSupported
hipErrorNotSupported
Produced when the hip API is not supported/implemented.
Definition: hip_runtime_api.h:286
hipMemcpyAsync
hipError_t hipMemcpyAsync(void *dst, const void *src, size_t sizeBytes, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copy data from src to dst asynchronously.
hipErrorLaunchOutOfResources
hipErrorLaunchOutOfResources
Out of resources error.
Definition: hip_runtime_api.h:267
hipOccupancyMaxPotentialBlockSize
hipError_t hipOccupancyMaxPotentialBlockSize(int *gridSize, int *blockSize, const void *f, size_t dynSharedMemPerBlk, int blockSizeLimit)
determine the grid and block sizes to achieves maximum occupancy for a kernel
hipStreamDestroy
hipError_t hipStreamDestroy(hipStream_t stream)
Destroys the specified stream.
hipHostRegister
hipError_t hipHostRegister(void *hostPtr, size_t sizeBytes, unsigned int flags)
Register host memory so it can be accessed from the current device.
hipStreamSetCaptureDependencies
@ hipStreamSetCaptureDependencies
Replace the dependency set with the new nodes.
Definition: hip_runtime_api.h:1189
hipGraphMemcpyNodeSetParamsToSymbol
hipError_t hipGraphMemcpyNodeSetParamsToSymbol(hipGraphNode_t node, const void *symbol, const void *src, size_t count, size_t offset, hipMemcpyKind kind)
Sets a memcpy node's parameters to copy to a symbol on the device.
hipModuleLoad
hipError_t hipModuleLoad(hipModule_t *module, const char *fname)
Loads code object from file into a hipModule_t.
hipProfilerStop
hipError_t hipProfilerStop()
Stop recording of profiling information. When using this API, start the profiler with profiling disab...
hipDeviceSetLimit
hipError_t hipDeviceSetLimit(enum hipLimit_t limit, size_t value)
Set Resource limits of current device.
hipGetTextureObjectResourceDesc
hipError_t hipGetTextureObjectResourceDesc(hipResourceDesc *pResDesc, hipTextureObject_t textureObject)
Gets resource descriptor for the texture object.
hipErrorInvalidResourceHandle
hipErrorInvalidResourceHandle
Resource handle (hipEvent_t or hipStream_t) invalid.
Definition: hip_runtime_api.h:259
hipEventCreate
hipError_t hipEventCreate(hipEvent_t *event)
hipDeviceAttributePageableMemoryAccess
@ hipDeviceAttributePageableMemoryAccess
Definition: hip_runtime_api.h:401
hipGraphExecEventWaitNodeSetEvent
hipError_t hipGraphExecEventWaitNodeSetEvent(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, hipEvent_t event)
Sets the event for an event record node in the given graphExec.
hipGraphAddMemsetNode
hipError_t hipGraphAddMemsetNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipMemsetParams *pMemsetParams)
Creates a memset node and adds it to a graph.
HIP_RESOURCE_VIEW_DESC_st
Definition: driver_types.h:328
hipMemoryType
hipMemoryType
Definition: hip_runtime_api.h:159
hipDeviceAttributeSharedMemPerBlockOptin
@ hipDeviceAttributeSharedMemPerBlockOptin
Cuda only. Maximum shared memory per block usable by special opt in.
Definition: hip_runtime_api.h:413
hipGraphicsRegisterFlagsTextureGather
@ hipGraphicsRegisterFlagsTextureGather
HIP will perform texture gather operations on this registered resource.
Definition: hip_runtime_api.h:1059
hipGraphMemAttrReservedMemHigh
@ hipGraphMemAttrReservedMemHigh
High watermark of memory, in bytes, currently allocated for graphs.
Definition: hip_runtime_api.h:1196
hipDeviceSetMemPool
hipError_t hipDeviceSetMemPool(int device, hipMemPool_t mem_pool)
Sets the current memory pool of a device.
hipGLDeviceListNextFrame
@ hipGLDeviceListNextFrame
frame.
Definition: hip_runtime_api.h:1044
hipDeviceAttributeVirtualMemoryManagementSupported
@ hipDeviceAttributeVirtualMemoryManagementSupported
Device supports HIP virtual memory management.
Definition: hip_runtime_api.h:427
hipMemsetAsync
hipError_t hipMemsetAsync(void *dst, int value, size_t sizeBytes, hipStream_t stream __dparm(0))
Fills the first sizeBytes bytes of the memory area pointed to by dev with the constant byte value val...
hipMallocHost
hipError_t hipMallocHost(void **ptr, size_t size)
Allocate pinned host memory [Deprecated].
hipDrvPointerGetAttributes
hipError_t hipDrvPointerGetAttributes(unsigned int numAttributes, hipPointer_attribute *attributes, void **data, hipDeviceptr_t ptr)
Returns information about the specified pointer.[BETA].
hipDeviceAttributeMaxTexture2DWidth
@ hipDeviceAttributeMaxTexture2DWidth
Maximum dimension width of 2D texture.
Definition: hip_runtime_api.h:379
hipDeviceProp_t::pciDomainID
int pciDomainID
PCI Domain ID.
Definition: hip_runtime_api.h:114
hipDeviceAttributeCooperativeMultiDeviceUnmatchedFunc
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedFunc
Definition: hip_runtime_api.h:439
hipGraphExecUpdateErrorNodeTypeChanged
@ hipGraphExecUpdateErrorNodeTypeChanged
The update failed because a node type changed.
Definition: hip_runtime_api.h:1165
hipGraphMemcpyNodeSetParamsFromSymbol
hipError_t hipGraphMemcpyNodeSetParamsFromSymbol(hipGraphNode_t node, void *dst, const void *symbol, size_t count, size_t offset, hipMemcpyKind kind)
Sets a memcpy node's parameters to copy from a symbol on the device.
hipModuleLoadData
hipError_t hipModuleLoadData(hipModule_t *module, const void *image)
builds module from code object which resides in host memory. Image is pointer to that location.
hipFuncCachePreferL1
@ hipFuncCachePreferL1
prefer larger L1 cache and smaller shared memory
Definition: hip_runtime_api.h:917
hipMemAttachSingle
#define hipMemAttachSingle
Definition: hip_runtime_api.h:621
hipMemcpyParam2D
hipError_t hipMemcpyParam2D(const hip_Memcpy2D *pCopy)
Copies memory for 2D arrays.
hipDeviceAttributeMaxTexture2DLinear
@ hipDeviceAttributeMaxTexture2DLinear
Cuda only. Maximum dimensions (width, height, pitch) of 2D textures bound to pitched memory.
Definition: hip_runtime_api.h:383
hipGraphAddEventRecordNode
hipError_t hipGraphAddEventRecordNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, hipEvent_t event)
Creates an event record node and adds it to a graph.
hipArrayMapInfo
Definition: hip_runtime_api.h:1273
hipGraphNodeTypeExtSemaphoreSignal
@ hipGraphNodeTypeExtSemaphoreSignal
External Semaphore signal node.
Definition: hip_runtime_api.h:1100
hipDeviceProp_t::managedMemory
int managedMemory
Device supports allocating managed memory on this system.
Definition: hip_runtime_api.h:147
hipMemAllocationGranularityMinimum
@ hipMemAllocationGranularityMinimum
Minimum granularity.
Definition: hip_runtime_api.h:1237
hipDeviceAttributeHdpMemFlushCntl
@ hipDeviceAttributeHdpMemFlushCntl
Address of the HDP_MEM_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:437
hipMemset
hipError_t hipMemset(void *dst, int value, size_t sizeBytes)
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant byte value va...
hipDeviceDisablePeerAccess
hipError_t hipDeviceDisablePeerAccess(int peerDeviceId)
Disable direct access from current device's virtual address space to memory allocations physically lo...
hipDeviceAttributeFineGrainSupport
@ hipDeviceAttributeFineGrainSupport
'1' if Device supports fine grain, '0' otherwise
Definition: hip_runtime_api.h:454
hipModuleOccupancyMaxActiveBlocksPerMultiprocessor
hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk)
Returns occupancy for a device function.
hipFuncSetAttribute
hipError_t hipFuncSetAttribute(const void *func, hipFuncAttribute attr, int value)
Set attribute for a specific function.
hipDeviceAttributeEccEnabled
@ hipDeviceAttributeEccEnabled
Whether ECC support is enabled.
Definition: hip_runtime_api.h:332
__hipPopCallConfiguration
hipError_t __hipPopCallConfiguration(dim3 *gridDim, dim3 *blockDim, size_t *sharedMem, hipStream_t *stream)
Pop configuration of a kernel launch.
hipDeviceProp_t
struct hipDeviceProp_t hipDeviceProp_t
hipDeviceAttributeMaxSharedMemoryPerMultiprocessor
@ hipDeviceAttributeMaxSharedMemoryPerMultiprocessor
Maximum Shared Memory PerMultiprocessor.
Definition: hip_runtime_api.h:434
hipDevicePrimaryCtxReset
hipError_t hipDevicePrimaryCtxReset(hipDevice_t dev)
Resets the primary context on the GPU.
hipArrayMapInfo
struct hipArrayMapInfo hipArrayMapInfo
hipChannelFormatDesc
Definition: driver_types.h:47
hipStreamWriteValue32
hipError_t hipStreamWriteValue32(hipStream_t stream, void *ptr, uint32_t value, unsigned int flags)
Enqueues a write command to the stream.[BETA].
hipModuleUnload
hipError_t hipModuleUnload(hipModule_t module)
Frees the module.
hipMemRangeAttribute
hipMemRangeAttribute
Definition: hip_runtime_api.h:726
hipErrorPeerAccessAlreadyEnabled
hipErrorPeerAccessAlreadyEnabled
Peer access was already enabled from the current device.
Definition: hip_runtime_api.h:269
hipMemPoolProps
struct hipMemPoolProps hipMemPoolProps
hipMemHandleTypeWin32
@ hipMemHandleTypeWin32
Allows a Win32 NT handle for exporting. (HANDLE)
Definition: hip_runtime_api.h:855
hipPointerGetAttribute
hipError_t hipPointerGetAttribute(void *data, hipPointer_attribute attribute, hipDeviceptr_t ptr)
Returns information about the specified pointer.[BETA].
hipImportExternalMemory
hipError_t hipImportExternalMemory(hipExternalMemory_t *extMem_out, const hipExternalMemoryHandleDesc *memHandleDesc)
Imports an external memory object.
hipMemPoolProps
Definition: hip_runtime_api.h:861