This page contains proposed changes for a future release of ROCm. Read the latest Linux release of ROCm documentation for your production environments.

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-hip/checkouts/develop/include/hip/hip_runtime_api.h Source File

/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-hip/checkouts/develop/include/hip/hip_runtime_api.h Source File#

HIP Runtime API Reference: /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-hip/checkouts/develop/include/hip/hip_runtime_api.h Source File
hip_runtime_api.h
Go to the documentation of this file.
1 /*
2 Copyright (c) 2015 - 2023 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 #include <string.h> // for getDeviceProp
34 #include <hip/hip_version.h>
35 #include <hip/hip_common.h>
36 
37 enum {
42 };
43 // hack to get these to show up in Doxygen:
53 typedef struct {
54  // 32-bit Atomics
55  unsigned hasGlobalInt32Atomics : 1;
56  unsigned hasGlobalFloatAtomicExch : 1;
57  unsigned hasSharedInt32Atomics : 1;
58  unsigned hasSharedFloatAtomicExch : 1;
59  unsigned hasFloatAtomicAdd : 1;
60 
61  // 64-bit Atomics
62  unsigned hasGlobalInt64Atomics : 1;
63  unsigned hasSharedInt64Atomics : 1;
64 
65  // Doubles
66  unsigned hasDoubles : 1;
67 
68  // Warp cross-lane operations
69  unsigned hasWarpVote : 1;
70  unsigned hasWarpBallot : 1;
71  unsigned hasWarpShuffle : 1;
72  unsigned hasFunnelShift : 1;
73 
74  // Sync
75  unsigned hasThreadFenceSystem : 1;
76  unsigned hasSyncThreadsExt : 1;
77 
78  // Misc
79  unsigned hasSurfaceFuncs : 1;
80  unsigned has3dGrid : 1;
81  unsigned hasDynamicParallelism : 1;
83 
84 typedef struct hipUUID_t {
85  char bytes[16];
86 } hipUUID;
87 
88 //---
89 // Common headers for both NVCC and HCC paths:
90 
91 #define hipGetDeviceProperties hipGetDevicePropertiesR0600
92 #define hipDeviceProp_t hipDeviceProp_tR0600
93 #define hipChooseDevice hipChooseDeviceR0600
94 
99 typedef struct hipDeviceProp_t {
100  char name[256];
102  char luid[8];
103  unsigned int luidDeviceNodeMask;
104  size_t totalGlobalMem;
107  int warpSize;
108  size_t memPitch;
111  int maxThreadsDim[3];
112  int maxGridSize[3];
113  int clockRate;
114  size_t totalConstMem;
116  int major;
119  int minor;
133  int maxTexture2D[2];
137  int maxTexture3D[3];
145  int maxSurface2D[2];
146  int maxSurface3D[3];
154  int pciBusID;
157  int tccDriver;
185  size_t
204  unsigned int
211  int reserved[63];
212 
213  int hipReserved[32];
214 
215  /* HIP Only struct members */
216  char gcnArchName[256];
221  unsigned int* hdpMemFlushCntl;
222  unsigned int* hdpRegFlushCntl;
238 
245 typedef enum hipMemoryType {
248  hipMemoryTypeDevice = 2,
253  hipMemoryTypeArray = 10,
256 
258 
262 typedef struct hipPointerAttribute_t {
263  enum hipMemoryType type;
264  int device;
266  void* hostPointer;
268  unsigned allocationFlags; /* flags specified when memory was allocated*/
269  /* peers? */
271 
272 // Ignoring error-code return values from hip APIs is discouraged. On C++17,
273 // we can make that yield a warning
274 #if __cplusplus >= 201703L
275 #define __HIP_NODISCARD [[nodiscard]]
276 #else
277 #define __HIP_NODISCARD
278 #endif
279 
284 // Developer note - when updating these, update the hipErrorName and hipErrorString functions in
285 // NVCC and HCC paths Also update the hipCUDAErrorTohipError function in NVCC path.
286 
292  // Deprecated
295  // Deprecated
317  // Deprecated
339  // Deprecated
393  // HSA Runtime Error Codes start here.
398  hipErrorTbd
399 } hipError_t;
400 
401 #undef __HIP_NODISCARD
402 
407 typedef enum hipDeviceAttribute_t {
409 
508 
511 
536 
539  // Extended attributes for vendors
541 
547 
553 };
554 
558 };
559 
564 };
565 
566 #if defined(__HIP_PLATFORM_AMD__) && !defined(__HIP_PLATFORM_NVIDIA__)
567 
568 #include <stdint.h>
569 #include <stddef.h>
570 #ifndef GENERIC_GRID_LAUNCH
571 #define GENERIC_GRID_LAUNCH 1
572 #endif
573 #include <hip/amd_detail/host_defines.h>
574 #include <hip/driver_types.h>
575 #include <hip/texture_types.h>
576 #include <hip/surface_types.h>
577 #if defined(_MSC_VER)
578 #define DEPRECATED(msg) __declspec(deprecated(msg))
579 #else // !defined(_MSC_VER)
580 #define DEPRECATED(msg) __attribute__ ((deprecated(msg)))
581 #endif // !defined(_MSC_VER)
582 #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/HIP/blob/develop/docs/reference/deprecated_api_list.md"
583 #define HIP_LAUNCH_PARAM_BUFFER_POINTER ((void*)0x01)
584 #define HIP_LAUNCH_PARAM_BUFFER_SIZE ((void*)0x02)
585 #define HIP_LAUNCH_PARAM_END ((void*)0x03)
586 #ifdef __cplusplus
587  #define __dparm(x) \
588  = x
589 #else
590  #define __dparm(x)
591 #endif
592 #ifdef __GNUC__
593 #pragma GCC visibility push (default)
594 #endif
595 #ifdef __cplusplus
596 namespace hip_impl {
597 hipError_t hip_init();
598 } // namespace hip_impl
599 #endif
600 // Structure definitions:
601 #ifdef __cplusplus
602 extern "C" {
603 #endif
604 //---
605 // API-visible structures
606 typedef struct ihipCtx_t* hipCtx_t;
607 // Note many APIs also use integer deviceIds as an alternative to the device pointer:
608 typedef int hipDevice_t;
609 typedef enum hipDeviceP2PAttr {
615 typedef struct ihipStream_t* hipStream_t;
616 #define hipIpcMemLazyEnablePeerAccess 0x01
617 #define HIP_IPC_HANDLE_SIZE 64
618 typedef struct hipIpcMemHandle_st {
619  char reserved[HIP_IPC_HANDLE_SIZE];
621 typedef struct hipIpcEventHandle_st {
622  char reserved[HIP_IPC_HANDLE_SIZE];
624 typedef struct ihipModule_t* hipModule_t;
625 typedef struct ihipModuleSymbol_t* hipFunction_t;
629 typedef struct ihipMemPoolHandle_t* hipMemPool_t;
630 
631 typedef struct hipFuncAttributes {
638  int numRegs;
643 typedef struct ihipEvent_t* hipEvent_t;
644 
652  hipLimitStackSize = 0x0,
655  hipLimitPrintfFifoSize = 0x01,
657  hipLimitMallocHeapSize = 0x02,
660 };
664 //Flags that can be used with hipStreamCreateWithFlags.
666 #define hipStreamDefault 0x00
667 
669 #define hipStreamNonBlocking 0x01
670 
671 //Flags that can be used with hipEventCreateWithFlags.
673 #define hipEventDefault 0x0
674 
676 #define hipEventBlockingSync 0x1
677 
679 #define hipEventDisableTiming 0x2
680 
682 #define hipEventInterprocess 0x4
683 
692 #define hipEventDisableSystemFence 0x20000000
693 
696 #define hipEventReleaseToDevice 0x40000000
697 
700 #define hipEventReleaseToSystem 0x80000000
701 
702 //Flags that can be used with hipHostMalloc.
704 #define hipHostMallocDefault 0x0
705 
707 #define hipHostMallocPortable 0x1
708 
711 #define hipHostMallocMapped 0x2
712 
716 #define hipHostMallocWriteCombined 0x4
717 
722 #define hipHostMallocNumaUser 0x20000000
723 
725 #define hipHostMallocCoherent 0x40000000
726 
728 #define hipHostMallocNonCoherent 0x80000000
729 
731 #define hipMemAttachGlobal 0x01
732 
734 #define hipMemAttachHost 0x02
735 
737 #define hipMemAttachSingle 0x04
738 
739 #define hipDeviceMallocDefault 0x0
740 
742 #define hipDeviceMallocFinegrained 0x1
743 
745 #define hipMallocSignalMemory 0x2
746 
748 #define hipDeviceMallocUncached 0x3
749 
751 #define hipDeviceMallocContiguous 0x4
752 
753 //Flags that can be used with hipHostRegister.
755 #define hipHostRegisterDefault 0x0
756 
758 #define hipHostRegisterPortable 0x1
759 
762 #define hipHostRegisterMapped 0x2
763 
765 #define hipHostRegisterIoMemory 0x4
766 
768 #define hipHostRegisterReadOnly 0x08
769 
771 #define hipExtHostRegisterCoarseGrained 0x8
772 
774 #define hipDeviceScheduleAuto 0x0
775 
778 #define hipDeviceScheduleSpin 0x1
779 
782 #define hipDeviceScheduleYield 0x2
783 #define hipDeviceScheduleBlockingSync 0x4
784 #define hipDeviceScheduleMask 0x7
785 #define hipDeviceMapHost 0x8
786 #define hipDeviceLmemResizeToMax 0x10
788 #define hipArrayDefault 0x00
789 #define hipArrayLayered 0x01
790 #define hipArraySurfaceLoadStore 0x02
791 #define hipArrayCubemap 0x04
792 #define hipArrayTextureGather 0x08
793 #define hipOccupancyDefault 0x00
794 #define hipOccupancyDisableCachingOverride 0x01
795 #define hipCooperativeLaunchMultiDeviceNoPreSync 0x01
796 #define hipCooperativeLaunchMultiDeviceNoPostSync 0x02
797 #define hipCpuDeviceId ((int)-1)
798 #define hipInvalidDeviceId ((int)-2)
799 //Flags that can be used with hipExtLaunch Set of APIs.
801 #define hipExtAnyOrderLaunch 0x01
802 // Flags to be used with hipStreamWaitValue32 and hipStreamWaitValue64.
803 #define hipStreamWaitValueGte 0x0
804 #define hipStreamWaitValueEq 0x1
805 #define hipStreamWaitValueAnd 0x2
806 #define hipStreamWaitValueNor 0x3
807 // Stream per thread
809 #define hipStreamPerThread ((hipStream_t)2)
810 
811 #define hipStreamLegacy ((hipStream_t)1)
812 
813 // Indicates that the external memory object is a dedicated resource
814 #define hipExternalMemoryDedicated 0x1
820 typedef enum hipMemoryAdvise {
853 typedef enum hipMemRangeAttribute {
864 
868 typedef enum hipMemPoolAttr
869 {
927  typedef enum hipMemLocationType {
936 typedef struct hipMemLocation {
938  int id;
944 typedef enum hipMemAccessFlags {
952 typedef struct hipMemAccessDesc {
959 typedef enum hipMemAllocationType {
965  hipMemAllocationTypeMax = 0x7FFFFFFF
980 typedef struct hipMemPoolProps {
988  size_t maxSize;
989  unsigned char reserved[56];
994 typedef struct hipMemPoolPtrExportData {
995  unsigned char reserved[64];
997 
1001 typedef enum hipJitOption {
1024 typedef enum hipFuncAttribute {
1032 typedef enum hipFuncCache_t {
1037 } hipFuncCache_t;
1041 typedef enum hipSharedMemConfig {
1051 typedef struct dim3 {
1052  uint32_t x;
1053  uint32_t y;
1054  uint32_t z;
1055 #ifdef __cplusplus
1056  constexpr __host__ __device__ dim3(uint32_t _x = 1, uint32_t _y = 1, uint32_t _z = 1) : x(_x), y(_y), z(_z){};
1057 #endif
1058 } dim3;
1062 typedef struct hipLaunchParams_t {
1063  void* func;
1066  void **args;
1067  size_t sharedMem;
1069 } hipLaunchParams;
1073 typedef struct hipFunctionLaunchParams_t {
1074  hipFunction_t function;
1075  unsigned int gridDimX;
1076  unsigned int gridDimY;
1077  unsigned int gridDimZ;
1078  unsigned int blockDimX;
1079  unsigned int blockDimY;
1080  unsigned int blockDimZ;
1081  unsigned int sharedMemBytes;
1083  void **kernelParams;
1085 typedef enum hipExternalMemoryHandleType_enum {
1095 typedef struct hipExternalMemoryHandleDesc_st {
1097  union {
1098  int fd;
1099  struct {
1100  void *handle;
1101  const void *name;
1102  } win32;
1103  const void *nvSciBufObject;
1104  } handle;
1105  unsigned long long size;
1106  unsigned int flags;
1107  unsigned int reserved[16];
1109 typedef struct hipExternalMemoryBufferDesc_st {
1110  unsigned long long offset;
1111  unsigned long long size;
1112  unsigned int flags;
1113  unsigned int reserved[16];
1115 typedef struct hipExternalMemoryMipmappedArrayDesc_st {
1116  unsigned long long offset;
1119  unsigned int flags;
1120  unsigned int numLevels;
1122 typedef void* hipExternalMemory_t;
1123 typedef enum hipExternalSemaphoreHandleType_enum {
1135 typedef struct hipExternalSemaphoreHandleDesc_st {
1137  union {
1138  int fd;
1139  struct {
1140  void* handle;
1141  const void* name;
1142  } win32;
1143  const void* NvSciSyncObj;
1144  } handle;
1145  unsigned int flags;
1146  unsigned int reserved[16];
1149 typedef struct hipExternalSemaphoreSignalParams_st {
1150  struct {
1151  struct {
1152  unsigned long long value;
1153  } fence;
1154  union {
1155  void *fence;
1156  unsigned long long reserved;
1157  } nvSciSync;
1158  struct {
1159  unsigned long long key;
1160  } keyedMutex;
1161  unsigned int reserved[12];
1162  } params;
1163  unsigned int flags;
1164  unsigned int reserved[16];
1169 typedef struct hipExternalSemaphoreWaitParams_st {
1170  struct {
1171  struct {
1172  unsigned long long value;
1173  } fence;
1174  union {
1175  void *fence;
1176  unsigned long long reserved;
1177  } nvSciSync;
1178  struct {
1179  unsigned long long key;
1180  unsigned int timeoutMs;
1181  } keyedMutex;
1182  unsigned int reserved[10];
1183  } params;
1184  unsigned int flags;
1185  unsigned int reserved[16];
1187 
1188 #if __HIP_HAS_GET_PCH
1193  void __hipGetPCH(const char** pch, unsigned int*size);
1194 #endif
1195 
1203  2,
1206  8
1208 
1209 typedef struct _hipGraphicsResource hipGraphicsResource;
1210 
1212 
1216 typedef struct ihipGraph* hipGraph_t;
1220 typedef struct hipGraphNode* hipGraphNode_t;
1224 typedef struct hipGraphExec* hipGraphExec_t;
1225 
1229 typedef struct hipUserObject* hipUserObject_t;
1230 
1231 
1235 typedef enum hipGraphNodeType {
1252 
1253 typedef void (*hipHostFn_t)(void* userData);
1254 typedef struct hipHostNodeParams {
1256  void* userData;
1258 typedef struct hipKernelNodeParams {
1260  void** extra;
1261  void* func;
1264  unsigned int sharedMemBytes;
1266 typedef struct hipMemsetParams {
1267  void* dst;
1268  unsigned int elementSize;
1269  size_t height;
1270  size_t pitch;
1271  unsigned int value;
1272  size_t width;
1273 } hipMemsetParams;
1274 
1275 typedef struct hipMemAllocNodeParams {
1281  size_t bytesize;
1282  void* dptr;
1284 
1285 
1286 typedef enum hipAccessProperty {
1291 typedef struct hipAccessPolicyWindow {
1292  void* base_ptr;
1294  float hitRatio;
1296  size_t num_bytes;
1298 
1302 typedef enum hipLaunchAttributeID {
1307 
1315  int priority;
1318 
1322 #define hipKernelNodeAttrID hipLaunchAttributeID
1323 #define hipKernelNodeAttributeAccessPolicyWindow hipLaunchAttributeAccessPolicyWindow
1324 #define hipKernelNodeAttributeCooperative hipLaunchAttributeCooperative
1325 #define hipKernelNodeAttributePriority hipLaunchAttributePriority
1326 
1330 #define hipKernelNodeAttrValue hipLaunchAttributeValue
1331 
1335 typedef struct HIP_MEMSET_NODE_PARAMS {
1337  size_t pitch;
1338  unsigned int value;
1339  unsigned int elementSize;
1340  size_t width;
1341  size_t height;
1343 
1349  hipGraphExecUpdateError = 0x1,
1354  0x4,
1356  0x5,
1358  0x6,
1361 
1362 typedef enum hipStreamCaptureMode {
1373 
1378 
1385 typedef enum hipUserObjectFlags {
1388 
1392 
1395  1,
1397  2,
1399  4,
1401  8,
1403 
1406  << 0,
1412  << 6,
1414  << 7,
1416  << 8,
1418  << 9,
1420  << 10
1421 };
1422 
1437 
1443  unsigned long long flags;
1448 
1449 
1453 typedef struct hipMemAllocationProp {
1458  struct {
1459  unsigned char compressionType;
1460  unsigned char gpuDirectRDMACapable;
1461  unsigned short usage;
1464 
1474  unsigned int numExtSems;
1476 
1486  unsigned int numExtSems;
1488 
1492 typedef struct ihipMemGenericAllocationHandle* hipMemGenericAllocationHandle_t;
1493 
1501 
1505 typedef enum hipMemHandleType {
1508 
1512 typedef enum hipMemOperationType {
1516 
1524 
1528 typedef struct hipArrayMapInfo {
1530  union {
1535  union {
1536  struct {
1537  unsigned int level;
1538  unsigned int layer;
1539  unsigned int offsetX;
1540  unsigned int offsetY;
1541  unsigned int offsetZ;
1542  unsigned int extentWidth;
1543  unsigned int extentHeight;
1544  unsigned int extentDepth;
1546  struct {
1547  unsigned int layer;
1548  unsigned long long offset;
1549  unsigned long long size;
1554  union {
1557  unsigned long long offset;
1558  unsigned int deviceBitMask;
1559  unsigned int flags;
1560  unsigned int reserved[2];
1561 } hipArrayMapInfo;
1562 
1566 typedef struct hipMemcpyNodeParams {
1567  int flags;
1568  int reserved[3];
1571 
1575 typedef struct hipChildGraphNodeParams {
1579 
1583 typedef struct hipEventWaitNodeParams {
1586 
1593 
1597 typedef struct hipMemFreeNodeParams {
1598  void *dptr;
1600 
1604 typedef struct hipGraphNodeParams {
1606  int reserved0[3];
1607  union {
1608  long long reserved1[29];
1620  };
1621 
1622  long long reserved2;
1624 
1628 #define hipGraphKernelNodePortDefault 0
1629 
1633 #define hipGraphKernelNodePortLaunchCompletion 2
1634 
1640 #define hipGraphKernelNodePortProgrammatic 1
1641 
1646 
1647 typedef struct hipGraphEdgeData {
1648  unsigned char
1656  unsigned char reserved[5];
1657  unsigned char
1659  unsigned char type;
1661 
1662 // Doxygen end group GlobalDefs
1688 // TODO-ctx - more description on error codes.
1689 hipError_t hipInit(unsigned int flags);
1690 
1706 hipError_t hipDriverGetVersion(int* driverVersion);
1721 hipError_t hipRuntimeGetVersion(int* runtimeVersion);
1729 hipError_t hipDeviceGet(hipDevice_t* device, int ordinal);
1730 
1739 hipError_t hipDeviceComputeCapability(int* major, int* minor, hipDevice_t device);
1748 hipError_t hipDeviceGetName(char* name, int len, hipDevice_t device);
1771  int srcDevice, int dstDevice);
1780 hipError_t hipDeviceGetPCIBusId(char* pciBusId, int len, int device);
1788 hipError_t hipDeviceGetByPCIBusId(int* device, const char* pciBusId);
1797 // doxygen end initialization
1860 hipError_t hipSetDevice(int deviceId);
1872 hipError_t hipSetValidDevices(int* device_arr, int len);
1886 hipError_t hipGetDevice(int* deviceId);
2017 hipError_t hipDeviceGetLimit(size_t* pValue, enum hipLimit_t limit);
2037 hipError_t hipDeviceSetLimit ( enum hipLimit_t limit, size_t value );
2057 hipError_t hipGetDeviceFlags(unsigned int* flags);
2103 hipError_t hipChooseDevice(int* device, const hipDeviceProp_t* prop);
2116 hipError_t hipExtGetLinkTypeAndHopCount(int device1, int device2, uint32_t* linktype, uint32_t* hopcount);
2117 // TODO: implement IPC apis
2177 hipError_t hipIpcOpenMemHandle(void** devPtr, hipIpcMemHandle_t handle, unsigned int flags);
2196 
2214 
2233 
2234 // end doxygen Device
2258 hipError_t hipFuncSetAttribute(const void* func, hipFuncAttribute attr, int value);
2284 //doxygen end execution
2307 
2320 
2340 const char* hipGetErrorName(hipError_t hip_error);
2349 const char* hipGetErrorString(hipError_t hipError);
2359 hipError_t hipDrvGetErrorName(hipError_t hipError, const char** errorString);
2369 hipError_t hipDrvGetErrorString(hipError_t hipError, const char** errorString);
2370 // end doxygen Error
2417 hipError_t hipStreamCreateWithFlags(hipStream_t* stream, unsigned int flags);
2435 hipError_t hipStreamCreateWithPriority(hipStream_t* stream, unsigned int flags, int priority);
2450 hipError_t hipDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
2525 hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags __dparm(0));
2539 hipError_t hipStreamGetFlags(hipStream_t stream, unsigned int* flags);
2584 hipError_t hipExtStreamCreateWithCUMask(hipStream_t* stream, uint32_t cuMaskSize, const uint32_t* cuMask);
2597 hipError_t hipExtStreamGetCUMask(hipStream_t stream, uint32_t cuMaskSize, uint32_t* cuMask);
2601 typedef void (*hipStreamCallback_t)(hipStream_t stream, hipError_t status, void* userData);
2618  unsigned int flags);
2619 // end doxygen Stream
2662 hipError_t hipStreamWaitValue32(hipStream_t stream, void* ptr, uint32_t value, unsigned int flags,
2663  uint32_t mask __dparm(0xFFFFFFFF));
2696 hipError_t hipStreamWaitValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags,
2697  uint64_t mask __dparm(0xFFFFFFFFFFFFFFFF));
2717 hipError_t hipStreamWriteValue32(hipStream_t stream, void* ptr, uint32_t value, unsigned int flags);
2737 hipError_t hipStreamWriteValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags);
2738 // end doxygen Stream Memory Operations
2817 #ifdef __cplusplus
2818 hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream = NULL);
2819 #else
2821 #endif
2904 // end doxygen Events
2936  hipDeviceptr_t ptr);
2937 
2938 
2974  hipDeviceptr_t ptr);
2991 hipError_t hipDrvPointerGetAttributes(unsigned int numAttributes, hipPointer_attribute* attributes,
2992  void** data, hipDeviceptr_t ptr);
3014  const hipExternalSemaphoreHandleDesc* semHandleDesc);
3028  const hipExternalSemaphoreSignalParams* paramsArray,
3029  unsigned int numExtSems, hipStream_t stream);
3043  const hipExternalSemaphoreWaitParams* paramsArray,
3044  unsigned int numExtSems, hipStream_t stream);
3055 
3103  const hipExternalMemoryMipmappedArrayDesc* mipmapDesc);
3104  // end of external resource
3121 hipError_t hipMalloc(void** ptr, size_t size);
3141 hipError_t hipExtMallocWithFlags(void** ptr, size_t sizeBytes, unsigned int flags);
3154 DEPRECATED("use hipHostMalloc instead")
3155 hipError_t hipMallocHost(void** ptr, size_t size);
3168 DEPRECATED("use hipHostMalloc instead")
3169 hipError_t hipMemAllocHost(void** ptr, size_t size);
3201 hipError_t hipHostMalloc(void** ptr, size_t size, unsigned int flags);
3235  size_t size,
3236  unsigned int flags __dparm(hipMemAttachGlobal));
3249 hipError_t hipMemPrefetchAsync(const void* dev_ptr,
3250  size_t count,
3251  int device,
3252  hipStream_t stream __dparm(0));
3272 hipError_t hipMemAdvise(const void* dev_ptr,
3273  size_t count,
3274  hipMemoryAdvise advice,
3275  int device);
3291  size_t data_size,
3292  hipMemRangeAttribute attribute,
3293  const void* dev_ptr,
3294  size_t count);
3312  size_t* data_sizes,
3313  hipMemRangeAttribute* attributes,
3314  size_t num_attributes,
3315  const void* dev_ptr,
3316  size_t count);
3332  void* dev_ptr,
3333  size_t length __dparm(0),
3334  unsigned int flags __dparm(hipMemAttachSingle));
3335 // end doxygen Managed Memory
3395 hipError_t hipMallocAsync(void** dev_ptr, size_t size, hipStream_t stream);
3420 hipError_t hipFreeAsync(void* dev_ptr, hipStream_t stream);
3448 hipError_t hipMemPoolTrimTo(hipMemPool_t mem_pool, size_t min_bytes_to_hold);
3544 hipError_t hipMemPoolSetAccess(hipMemPool_t mem_pool, const hipMemAccessDesc* desc_list, size_t count);
3649 hipError_t hipMallocFromPoolAsync(void** dev_ptr, size_t size, hipMemPool_t mem_pool, hipStream_t stream);
3677  void* shared_handle,
3678  hipMemPool_t mem_pool,
3679  hipMemAllocationHandleType handle_type,
3680  unsigned int flags);
3705  hipMemPool_t* mem_pool,
3706  void* shared_handle,
3707  hipMemAllocationHandleType handle_type,
3708  unsigned int flags);
3758  void** dev_ptr,
3759  hipMemPool_t mem_pool,
3760  hipMemPoolPtrExportData* export_data);
3761 // Doxygen end of ordered memory allocator
3777 hipError_t hipHostAlloc(void** ptr, size_t size, unsigned int flags);
3789 hipError_t hipHostGetDevicePointer(void** devPtr, void* hstPtr, unsigned int flags);
3799 hipError_t hipHostGetFlags(unsigned int* flagsPtr, void* hostPtr);
3836 hipError_t hipHostRegister(void* hostPtr, size_t sizeBytes, unsigned int flags);
3864 hipError_t hipMallocPitch(void** ptr, size_t* pitch, size_t width, size_t height);
3887 hipError_t hipMemAllocPitch(hipDeviceptr_t* dptr, size_t* pitch, size_t widthInBytes, size_t height,
3888  unsigned int elementSizeBytes);
3902 hipError_t hipFree(void* ptr);
3913 DEPRECATED("use hipHostFree instead")
3958 hipError_t hipMemcpy(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind);
3973 hipError_t hipMemcpyWithStream(void* dst, const void* src, size_t sizeBytes,
3974  hipMemcpyKind kind, hipStream_t stream);
3992 hipError_t hipMemcpyHtoD(hipDeviceptr_t dst, void* src, size_t sizeBytes);
4010 hipError_t hipMemcpyDtoH(void* dst, hipDeviceptr_t src, size_t sizeBytes);
4047 hipError_t hipMemcpyAtoD(hipDeviceptr_t dstDevice, hipArray_t srcArray, size_t srcOffset,
4048  size_t ByteCount);
4067 hipError_t hipMemcpyDtoA(hipArray_t dstArray, size_t dstOffset, hipDeviceptr_t srcDevice,
4068  size_t ByteCount);
4069 
4089 hipError_t hipMemcpyAtoA(hipArray_t dstArray, size_t dstOffset, hipArray_t srcArray,
4090  size_t srcOffset, size_t ByteCount);
4109 hipError_t hipMemcpyHtoDAsync(hipDeviceptr_t dst, void* src, size_t sizeBytes, hipStream_t stream);
4128 hipError_t hipMemcpyDtoHAsync(void* dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream);
4148  hipStream_t stream);
4168 hipError_t hipMemcpyAtoHAsync(void* dstHost, hipArray_t srcArray, size_t srcOffset,
4169  size_t ByteCount, hipStream_t stream);
4189 hipError_t hipMemcpyHtoAAsync(hipArray_t dstArray, size_t dstOffset, const void* srcHost,
4190  size_t ByteCount, hipStream_t stream);
4206  hipModule_t hmod, const char* name);
4207 
4217 hipError_t hipGetSymbolAddress(void** devPtr, const void* symbol);
4218 
4219 
4220 
4230 hipError_t hipGetSymbolSize(size_t* size, const void* symbol);
4231 
4251 hipError_t hipGetProcAddress(const char* symbol, void** pfn, int hipVersion, uint64_t flags,
4252  hipDriverProcAddressQueryResult* symbolStatus);
4253 
4274 hipError_t hipMemcpyToSymbol(const void* symbol, const void* src,
4275  size_t sizeBytes, size_t offset __dparm(0),
4277 
4291 hipError_t hipMemcpyToSymbolAsync(const void* symbol, const void* src,
4292  size_t sizeBytes, size_t offset,
4293  hipMemcpyKind kind, hipStream_t stream __dparm(0));
4294 
4307 hipError_t hipMemcpyFromSymbol(void* dst, const void* symbol,
4308  size_t sizeBytes, size_t offset __dparm(0),
4310 
4324 hipError_t hipMemcpyFromSymbolAsync(void* dst, const void* symbol,
4325  size_t sizeBytes, size_t offset,
4326  hipMemcpyKind kind,
4327  hipStream_t stream __dparm(0));
4357 hipError_t hipMemcpyAsync(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind,
4358  hipStream_t stream __dparm(0));
4368 hipError_t hipMemset(void* dst, int value, size_t sizeBytes);
4378 hipError_t hipMemsetD8(hipDeviceptr_t dest, unsigned char value, size_t count);
4394 hipError_t hipMemsetD8Async(hipDeviceptr_t dest, unsigned char value, size_t count, hipStream_t stream __dparm(0));
4404 hipError_t hipMemsetD16(hipDeviceptr_t dest, unsigned short value, size_t count);
4420 hipError_t hipMemsetD16Async(hipDeviceptr_t dest, unsigned short value, size_t count, hipStream_t stream __dparm(0));
4430 hipError_t hipMemsetD32(hipDeviceptr_t dest, int value, size_t count);
4446 hipError_t hipMemsetAsync(void* dst, int value, size_t sizeBytes, hipStream_t stream __dparm(0));
4462 hipError_t hipMemsetD32Async(hipDeviceptr_t dst, int value, size_t count,
4463  hipStream_t stream __dparm(0));
4474 hipError_t hipMemset2D(void* dst, size_t pitch, int value, size_t width, size_t height);
4486 hipError_t hipMemset2DAsync(void* dst, size_t pitch, int value, size_t width, size_t height,hipStream_t stream __dparm(0));
4495 hipError_t hipMemset3D(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent );
4505 hipError_t hipMemset3DAsync(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent ,hipStream_t stream __dparm(0));
4522 hipError_t hipMemGetInfo(size_t* free, size_t* total);
4523 
4535 hipError_t hipMemPtrGetInfo(void* ptr, size_t* size);
4548 hipError_t hipMallocArray(hipArray_t* array, const hipChannelFormatDesc* desc, size_t width,
4549  size_t height __dparm(0), unsigned int flags __dparm(hipArrayDefault));
4614  struct hipExtent extent, unsigned int flags);
4627 hipError_t hipArrayGetInfo(hipChannelFormatDesc* desc, hipExtent* extent, unsigned int* flags,
4628  hipArray_t array);
4681 hipError_t hipMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width,
4682  size_t height, hipMemcpyKind kind);
4721 hipError_t hipMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width,
4722  size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0));
4740 hipError_t hipMemcpy2DToArray(hipArray_t dst, size_t wOffset, size_t hOffset, const void* src,
4741  size_t spitch, size_t width, size_t height, hipMemcpyKind kind);
4760 hipError_t hipMemcpy2DToArrayAsync(hipArray_t dst, size_t wOffset, size_t hOffset, const void* src,
4761  size_t spitch, size_t width, size_t height, hipMemcpyKind kind,
4762  hipStream_t stream __dparm(0));
4781 hipError_t hipMemcpy2DArrayToArray(hipArray_t dst, size_t wOffsetDst, size_t hOffsetDst,
4782  hipArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc,
4783  size_t width, size_t height, hipMemcpyKind kind);
4801 hipError_t hipMemcpyToArray(hipArray_t dst, size_t wOffset, size_t hOffset, const void* src,
4802  size_t count, hipMemcpyKind kind);
4820 hipError_t hipMemcpyFromArray(void* dst, hipArray_const_t srcArray, size_t wOffset, size_t hOffset,
4821  size_t count, hipMemcpyKind kind);
4839 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);
4858 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));
4872 hipError_t hipMemcpyAtoH(void* dst, hipArray_t srcArray, size_t srcOffset, size_t count);
4886 hipError_t hipMemcpyHtoA(hipArray_t dstArray, size_t dstOffset, const void* srcHost, size_t count);
4933 // doxygen end Memory
4961 hipError_t hipDeviceCanAccessPeer(int* canAccessPeer, int deviceId, int peerDeviceId);
4978 hipError_t hipDeviceEnablePeerAccess(int peerDeviceId, unsigned int flags);
5004 #ifndef USE_PEER_NON_UNIFIED
5005 #define USE_PEER_NON_UNIFIED 1
5006 #endif
5007 #if USE_PEER_NON_UNIFIED == 1
5019 hipError_t hipMemcpyPeer(void* dst, int dstDeviceId, const void* src, int srcDeviceId,
5020  size_t sizeBytes);
5033 hipError_t hipMemcpyPeerAsync(void* dst, int dstDeviceId, const void* src, int srcDevice,
5034  size_t sizeBytes, hipStream_t stream __dparm(0));
5035 #endif
5036 // doxygen end PeerToPeer
5078 hipError_t hipCtxCreate(hipCtx_t* ctx, unsigned int flags, hipDevice_t device);
5293 hipError_t hipCtxGetFlags(unsigned int* flags);
5317 hipError_t hipCtxEnablePeerAccess(hipCtx_t peerCtx, unsigned int flags);
5339 
5356 hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int* flags, int* active);
5421 // doxygen end Context Management
5448 hipError_t hipModuleLoad(hipModule_t* module, const char* fname);
5469 hipError_t hipModuleGetFunction(hipFunction_t* function, hipModule_t module, const char* kname);
5478 hipError_t hipFuncGetAttributes(struct hipFuncAttributes* attr, const void* func);
5498 hipError_t hipGetFuncBySymbol(hipFunction_t* functionPtr, const void* symbolPtr);
5508 hipError_t hipModuleGetTexRef(textureReference** texRef, hipModule_t hmod, const char* name);
5518 hipError_t hipModuleLoadData(hipModule_t* module, const void* image);
5531 hipError_t hipModuleLoadDataEx(hipModule_t* module, const void* image, unsigned int numOptions,
5532  hipJitOption* options, void** optionValues);
5561 hipError_t hipModuleLaunchKernel(hipFunction_t f, unsigned int gridDimX, unsigned int gridDimY,
5562  unsigned int gridDimZ, unsigned int blockDimX,
5563  unsigned int blockDimY, unsigned int blockDimZ,
5564  unsigned int sharedMemBytes, hipStream_t stream,
5565  void** kernelParams, void** extra);
5592  unsigned int gridDimY, unsigned int gridDimZ,
5593  unsigned int blockDimX, unsigned int blockDimY,
5594  unsigned int blockDimZ, unsigned int sharedMemBytes,
5595  hipStream_t stream, void** kernelParams);
5611  unsigned int numDevices,
5612  unsigned int flags);
5631 hipError_t hipLaunchCooperativeKernel(const void* f, dim3 gridDim, dim3 blockDimX,
5632  void** kernelParams, unsigned int sharedMemBytes,
5633  hipStream_t stream);
5646  int numDevices, unsigned int flags);
5659  int numDevices, unsigned int flags);
5660 // doxygen end Module
5687 //TODO - Match CUoccupancyB2DSize
5689  hipFunction_t f, size_t dynSharedMemPerBlk,
5690  int blockSizeLimit);
5706 //TODO - Match CUoccupancyB2DSize
5708  hipFunction_t f, size_t dynSharedMemPerBlk,
5709  int blockSizeLimit, unsigned int flags);
5720  int* numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk);
5732  int* numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags);
5743  int* numBlocks, const void* f, int blockSize, size_t dynSharedMemPerBlk);
5755  int* numBlocks, const void* f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags __dparm(hipOccupancyDefault));
5770 hipError_t hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
5771  const void* f, size_t dynSharedMemPerBlk,
5772  int blockSizeLimit);
5773 // doxygen end Occupancy
5787 // TODO - expand descriptions:
5794 DEPRECATED("use roctracer/rocTX instead")
5802 DEPRECATED("use roctracer/rocTX instead")
5804 // doxygen end profiler
5831 hipError_t hipConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0));
5842 hipError_t hipSetupArgument(const void* arg, size_t size, size_t offset);
5851 hipError_t hipLaunchByPtr(const void* func);
5869  dim3 blockDim,
5870  size_t sharedMem __dparm(0),
5871  hipStream_t stream __dparm(0));
5892  dim3 *blockDim,
5893  size_t *sharedMem,
5894  hipStream_t *stream);
5910 hipError_t hipLaunchKernel(const void* function_address,
5911  dim3 numBlocks,
5912  dim3 dimBlocks,
5913  void** args,
5914  size_t sharedMemBytes __dparm(0),
5915  hipStream_t stream __dparm(0));
5916 
5943 
5952 //TODO: Move this to hip_ext.h
5973 hipError_t hipExtLaunchKernel(const void* function_address, dim3 numBlocks, dim3 dimBlocks,
5974  void** args, size_t sharedMemBytes, hipStream_t stream,
5975  hipEvent_t startEvent, hipEvent_t stopEvent, int flags);
5976 // doxygen end Clang launch
6003  hipTextureObject_t* pTexObject,
6004  const hipResourceDesc* pResDesc,
6005  const hipTextureDesc* pTexDesc,
6006  const struct hipResourceViewDesc* pResViewDesc);
6007 
6017 
6028  hipChannelFormatDesc* desc,
6029  hipArray_const_t array);
6030 
6041  hipResourceDesc* pResDesc,
6042  hipTextureObject_t textureObject);
6043 
6054  struct hipResourceViewDesc* pResViewDesc,
6055  hipTextureObject_t textureObject);
6056 
6067  hipTextureDesc* pTexDesc,
6068  hipTextureObject_t textureObject);
6069 
6082  hipTextureObject_t* pTexObject,
6083  const HIP_RESOURCE_DESC* pResDesc,
6084  const HIP_TEXTURE_DESC* pTexDesc,
6085  const HIP_RESOURCE_VIEW_DESC* pResViewDesc);
6086 
6096  hipTextureObject_t texObject);
6097 
6108  HIP_RESOURCE_DESC* pResDesc,
6109  hipTextureObject_t texObject);
6110 
6121  HIP_RESOURCE_VIEW_DESC* pResViewDesc,
6122  hipTextureObject_t texObject);
6123 
6134  HIP_TEXTURE_DESC* pTexDesc,
6135  hipTextureObject_t texObject);
6136 
6152  hipMipmappedArray_t *mipmappedArray,
6153  const struct hipChannelFormatDesc* desc,
6154  struct hipExtent extent,
6155  unsigned int numLevels,
6156  unsigned int flags __dparm(0));
6157 
6168 hipError_t hipFreeMipmappedArray(hipMipmappedArray_t mipmappedArray);
6169 
6183  hipArray_t *levelArray,
6184  hipMipmappedArray_const_t mipmappedArray,
6185  unsigned int level);
6186 
6199  hipMipmappedArray_t* pHandle,
6200  HIP_ARRAY3D_DESCRIPTOR* pMipmappedArrayDesc,
6201  unsigned int numMipmapLevels);
6202 
6213 hipError_t hipMipmappedArrayDestroy(hipMipmappedArray_t hMipmappedArray);
6214 
6228  hipArray_t* pLevelArray,
6229  hipMipmappedArray_t hMipMappedArray,
6230  unsigned int level);
6231 
6252  const textureReference* tex,
6253  hipMipmappedArray_const_t mipmappedArray,
6254  const hipChannelFormatDesc* desc);
6255 
6268  const textureReference** texref,
6269  const void* symbol);
6270 
6282 hipError_t hipTexRefGetBorderColor(float* pBorderColor, const textureReference* texRef);
6283 
6297 
6311  textureReference* texRef,
6312  int dim,
6313  enum hipTextureAddressMode am);
6328  textureReference* tex,
6329  hipArray_const_t array,
6330  unsigned int flags);
6344  textureReference* texRef,
6345  enum hipTextureFilterMode fm);
6359  textureReference* texRef,
6360  unsigned int Flags);
6375  textureReference* texRef,
6376  hipArray_Format fmt,
6377  int NumPackedComponents);
6394  size_t* offset,
6395  const textureReference* tex,
6396  const void* devPtr,
6397  const hipChannelFormatDesc* desc,
6398  size_t size __dparm(UINT_MAX));
6417  size_t* offset,
6418  const textureReference* tex,
6419  const void* devPtr,
6420  const hipChannelFormatDesc* desc,
6421  size_t width,
6422  size_t height,
6423  size_t pitch);
6438  const textureReference* tex,
6439  hipArray_const_t array,
6440  const hipChannelFormatDesc* desc);
6454  size_t* offset,
6455  const textureReference* texref);
6481  hipDeviceptr_t* dev_ptr,
6482  const textureReference* texRef);
6497  enum hipTextureAddressMode* pam,
6498  const textureReference* texRef,
6499  int dim);
6513  enum hipTextureFilterMode* pfm,
6514  const textureReference* texRef);
6528  unsigned int* pFlags,
6529  const textureReference* texRef);
6544  hipArray_Format* pFormat,
6545  int* pNumChannels,
6546  const textureReference* texRef);
6560  int* pmaxAnsio,
6561  const textureReference* texRef);
6575  enum hipTextureFilterMode* pfm,
6576  const textureReference* texRef);
6590  float* pbias,
6591  const textureReference* texRef);
6606  float* pminMipmapLevelClamp,
6607  float* pmaxMipmapLevelClamp,
6608  const textureReference* texRef);
6622  hipMipmappedArray_t* pArray,
6623  const textureReference* texRef);
6639  size_t* ByteOffset,
6640  textureReference* texRef,
6641  hipDeviceptr_t dptr,
6642  size_t bytes);
6658  textureReference* texRef,
6659  const HIP_ARRAY_DESCRIPTOR* desc,
6660  hipDeviceptr_t dptr,
6661  size_t Pitch);
6675  textureReference* texRef,
6676  unsigned int maxAniso);
6690  textureReference* texRef,
6691  float* pBorderColor);
6705  textureReference* texRef,
6706  enum hipTextureFilterMode fm);
6720  textureReference* texRef,
6721  float bias);
6736  textureReference* texRef,
6737  float minMipMapLevelClamp,
6738  float maxMipMapLevelClamp);
6753  textureReference* texRef,
6754  struct hipMipmappedArray* mipmappedArray,
6755  unsigned int Flags);
6756 
6757 // doxygen end deprecated texture management
6762 // doxygen end Texture management
6774 // This group is for HIPrtc
6775 
6776 // doxygen end Runtime
6795 const char* hipApiName(uint32_t id);
6804 const char* hipKernelNameRef(const hipFunction_t f);
6814 const char* hipKernelNameRefByPtr(const void* hostFunction, hipStream_t stream);
6824 
6825 // doxygen end Callback
6851 
6872  const hipGraphNode_t* dependencies,
6873  const hipGraphEdgeData* dependencyData,
6874  size_t numDependencies, hipStreamCaptureMode mode);
6875 
6889 
6904  unsigned long long* pId);
6905 
6923  unsigned long long* id_out __dparm(0),
6924  hipGraph_t* graph_out __dparm(0),
6925  const hipGraphNode_t** dependencies_out __dparm(0),
6926  size_t* numDependencies_out __dparm(0));
6927 
6941 
6957  size_t numDependencies,
6958  unsigned int flags __dparm(0));
6959 
6971 
6984 hipError_t hipGraphCreate(hipGraph_t* pGraph, unsigned int flags);
6985 
6998 
7013  const hipGraphNode_t* to, size_t numDependencies);
7014 
7029  const hipGraphNode_t* to, size_t numDependencies);
7030 
7049  size_t* numEdges);
7050 
7067 hipError_t hipGraphGetNodes(hipGraph_t graph, hipGraphNode_t* nodes, size_t* numNodes);
7068 
7086  size_t* pNumRootNodes);
7087 
7105  size_t* pNumDependencies);
7106 
7125  size_t* pNumDependentNodes);
7126 
7139 
7151 
7163 hipError_t hipGraphClone(hipGraph_t* pGraphClone, hipGraph_t originalGraph);
7164 
7178  hipGraph_t clonedGraph);
7179 
7197  hipGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize);
7198 
7212  unsigned long long flags);
7213 
7226  hipGraphInstantiateParams *instantiateParams);
7238 
7250 
7264  const hipGraphNode_t *pDependencies, size_t numDependencies,
7265  hipGraphNodeParams *nodeParams);
7266 
7276 hipError_t hipGraphExecGetFlags(hipGraphExec_t graphExec, unsigned long long* flags);
7277 
7288 
7300 
7312 
7313 // Check whether an executable graph can be updated with a graph and perform the update if possible.
7328  hipGraphNode_t* hErrorNode_out,
7329  hipGraphExecUpdateResult* updateResult_out);
7330 
7344  const hipGraphNode_t* pDependencies, size_t numDependencies,
7345  const hipKernelNodeParams* pNodeParams);
7346 
7357 
7368 
7380  const hipKernelNodeParams* pNodeParams);
7381 
7396  const hipGraphNode_t* dependencies,
7397  size_t numDependencies,
7398  const HIP_MEMCPY3D* copyParams, hipCtx_t ctx);
7412  const hipGraphNode_t* pDependencies, size_t numDependencies,
7413  const hipMemcpy3DParms* pCopyParams);
7424 
7435 
7447  const hipKernelNodeAttrValue* value);
7459  hipKernelNodeAttrValue* value);
7471  hipMemcpy3DParms* pNodeParams);
7472 
7489  const hipGraphNode_t* pDependencies, size_t numDependencies,
7490  void* dst, const void* src, size_t count, hipMemcpyKind kind);
7491 
7505  size_t count, hipMemcpyKind kind);
7506 
7522  void* dst, const void* src, size_t count,
7523  hipMemcpyKind kind);
7524 
7542  const hipGraphNode_t* pDependencies,
7543  size_t numDependencies, void* dst, const void* symbol,
7544  size_t count, size_t offset, hipMemcpyKind kind);
7545 
7560  size_t count, size_t offset, hipMemcpyKind kind);
7561 
7578  void* dst, const void* symbol, size_t count,
7579  size_t offset, hipMemcpyKind kind);
7580 
7598  const hipGraphNode_t* pDependencies,
7599  size_t numDependencies, const void* symbol,
7600  const void* src, size_t count, size_t offset,
7601  hipMemcpyKind kind);
7602 
7617  const void* src, size_t count, size_t offset,
7618  hipMemcpyKind kind);
7619 
7620 
7636  const void* symbol, const void* src,
7637  size_t count, size_t offset, hipMemcpyKind kind);
7638 
7652  const hipGraphNode_t* pDependencies, size_t numDependencies,
7653  const hipMemsetParams* pMemsetParams);
7654 
7665 
7676 
7688  const hipMemsetParams* pNodeParams);
7689 
7703  const hipGraphNode_t* pDependencies, size_t numDependencies,
7704  const hipHostNodeParams* pNodeParams);
7705 
7716 
7727 
7739  const hipHostNodeParams* pNodeParams);
7740 
7754  const hipGraphNode_t* pDependencies, size_t numDependencies,
7755  hipGraph_t childGraph);
7756 
7767 
7779  hipGraph_t childGraph);
7780 
7793  const hipGraphNode_t* pDependencies, size_t numDependencies);
7794 
7795 
7809  const hipGraphNode_t* pDependencies, size_t numDependencies,
7810  hipEvent_t event);
7811 
7822 
7833 
7845  hipEvent_t event);
7846 
7860  const hipGraphNode_t* pDependencies, size_t numDependencies,
7861  hipEvent_t event);
7862 
7863 
7874 
7885 
7897  hipEvent_t event);
7898 
7912  const hipGraphNode_t* pDependencies, size_t numDependencies, hipMemAllocNodeParams* pNodeParams);
7913 
7924 
7938  const hipGraphNode_t* pDependencies, size_t numDependencies, void* dev_ptr);
7939 
7950 
7962 
7974 
7985 
7999  unsigned int initialRefcount, unsigned int flags);
8000 
8011 
8022 
8035  unsigned int count __dparm(1), unsigned int flags __dparm(0));
8036 
8048  unsigned int count __dparm(1));
8049 
8060 hipError_t hipGraphDebugDotPrint(hipGraph_t graph, const char* path, unsigned int flags);
8061 
8077 
8101  unsigned int isEnabled);
8123  unsigned int* isEnabled);
8124 
8138  const hipGraphNode_t* pDependencies, size_t numDependencies,
8139  const hipExternalSemaphoreWaitNodeParams* nodeParams);
8140 
8154  const hipGraphNode_t* pDependencies, size_t numDependencies,
8155  const hipExternalSemaphoreSignalNodeParams* nodeParams);
8166  const hipExternalSemaphoreSignalNodeParams* nodeParams);
8177  const hipExternalSemaphoreWaitNodeParams* nodeParams);
8211  const hipExternalSemaphoreSignalNodeParams* nodeParams);
8223  const hipExternalSemaphoreWaitNodeParams* nodeParams);
8224 
8235 
8246 
8261  const hipGraphNode_t* dependencies, size_t numDependencies,
8262  const HIP_MEMSET_NODE_PARAMS* memsetParams, hipCtx_t ctx);
8263 
8277  const hipGraphNode_t* dependencies, size_t numDependencies,
8278  hipDeviceptr_t dptr);
8279 
8292  const HIP_MEMCPY3D* copyParams, hipCtx_t ctx);
8293 
8306  const HIP_MEMSET_NODE_PARAMS* memsetParams, hipCtx_t ctx);
8307 
8308 // doxygen end graph API
8336 hipError_t hipMemAddressFree(void* devPtr, size_t size);
8337 
8352 hipError_t hipMemAddressReserve(void** ptr, size_t size, size_t alignment, void* addr, unsigned long long flags);
8353 
8367 hipError_t hipMemCreate(hipMemGenericAllocationHandle_t* handle, size_t size, const hipMemAllocationProp* prop, unsigned long long flags);
8368 
8382 hipError_t hipMemExportToShareableHandle(void* shareableHandle, hipMemGenericAllocationHandle_t handle, hipMemAllocationHandleType handleType, unsigned long long flags);
8383 
8396 hipError_t hipMemGetAccess(unsigned long long* flags, const hipMemLocation* location, void* ptr);
8397 
8412 
8425 
8439 
8454 hipError_t hipMemMap(void* ptr, size_t size, size_t offset, hipMemGenericAllocationHandle_t handle, unsigned long long flags);
8455 
8468 hipError_t hipMemMapArrayAsync(hipArrayMapInfo* mapInfoList, unsigned int count, hipStream_t stream);
8469 
8481 
8494 
8508 hipError_t hipMemSetAccess(void* ptr, size_t size, const hipMemAccessDesc* desc, size_t count);
8509 
8521 hipError_t hipMemUnmap(void* ptr, size_t size);
8522 
8523 // doxygen end virtual memory management API
8546  hipStream_t stream __dparm(0) );
8561  unsigned int arrayIndex, unsigned int mipLevel);
8573  hipGraphicsResource_t resource);
8585  hipStream_t stream __dparm(0));
8595 // doxygen end GL Interop
8630 // end of surface
8634 #ifdef __cplusplus
8635 } /* extern "c" */
8636 #endif
8637 #ifdef __cplusplus
8638 #if defined(__clang__) && defined(__HIP__)
8639 template <typename T>
8640 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
8641  T f, size_t dynSharedMemPerBlk = 0, int blockSizeLimit = 0) {
8642  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, reinterpret_cast<const void*>(f),dynSharedMemPerBlk,blockSizeLimit);
8643 }
8644 template <typename T>
8645 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSizeWithFlags(int* gridSize, int* blockSize,
8646  T f, size_t dynSharedMemPerBlk = 0, int blockSizeLimit = 0, unsigned int flags = 0 ) {
8647  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, reinterpret_cast<const void*>(f),dynSharedMemPerBlk,blockSizeLimit);
8648 }
8649 #endif // defined(__clang__) && defined(__HIP__)
8650 
8660 template <typename T>
8661 hipError_t hipGetSymbolAddress(void** devPtr, const T &symbol) {
8662  return ::hipGetSymbolAddress(devPtr, (const void *)&symbol);
8663 }
8674 template <typename T>
8675 hipError_t hipGetSymbolSize(size_t* size, const T &symbol) {
8676  return ::hipGetSymbolSize(size, (const void *)&symbol);
8677 }
8678 
8687 template <typename T>
8688 hipError_t hipMemcpyToSymbol(const T& symbol, const void* src, size_t sizeBytes,
8689  size_t offset __dparm(0),
8691  return ::hipMemcpyToSymbol((const void*)&symbol, src, sizeBytes, offset, kind);
8692 }
8701 template <typename T>
8702 hipError_t hipMemcpyToSymbolAsync(const T& symbol, const void* src, size_t sizeBytes, size_t offset,
8703  hipMemcpyKind kind, hipStream_t stream __dparm(0)) {
8704  return ::hipMemcpyToSymbolAsync((const void*)&symbol, src, sizeBytes, offset, kind, stream);
8705 }
8713 template <typename T>
8714 hipError_t hipMemcpyFromSymbol(void* dst, const T &symbol,
8715  size_t sizeBytes, size_t offset __dparm(0),
8717  return ::hipMemcpyFromSymbol(dst, (const void*)&symbol, sizeBytes, offset, kind);
8718 }
8726 template <typename T>
8727 hipError_t hipMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t sizeBytes, size_t offset,
8728  hipMemcpyKind kind, hipStream_t stream __dparm(0)) {
8729  return ::hipMemcpyFromSymbolAsync(dst, (const void*)&symbol, sizeBytes, offset, kind, stream);
8730 }
8731 
8743 template <class T>
8745  int* numBlocks, T f, int blockSize, size_t dynSharedMemPerBlk) {
8747  numBlocks, reinterpret_cast<const void*>(f), blockSize, dynSharedMemPerBlk);
8748 }
8762 template <class T>
8764  int* numBlocks, T f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags) {
8766  numBlocks, reinterpret_cast<const void*>(f), blockSize, dynSharedMemPerBlk, flags);
8767 }
8788 template<typename UnaryFunction, class T>
8789 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(
8790  int* min_grid_size,
8791  int* block_size,
8792  T func,
8793  UnaryFunction block_size_to_dynamic_smem_size,
8794  int block_size_limit = 0,
8795  unsigned int flags = 0) {
8796  if (min_grid_size == nullptr || block_size == nullptr ||
8797  reinterpret_cast<const void*>(func) == nullptr) {
8798  return hipErrorInvalidValue;
8799  }
8800 
8801  int dev;
8802  hipError_t status;
8803  if ((status = hipGetDevice(&dev)) != hipSuccess) {
8804  return status;
8805  }
8806 
8807  int max_threads_per_cu;
8808  if ((status = hipDeviceGetAttribute(&max_threads_per_cu,
8810  return status;
8811  }
8812 
8813  int warp_size;
8814  if ((status = hipDeviceGetAttribute(&warp_size,
8816  return status;
8817  }
8818 
8819  int max_cu_count;
8820  if ((status = hipDeviceGetAttribute(&max_cu_count,
8822  return status;
8823  }
8824 
8825  struct hipFuncAttributes attr;
8826  if ((status = hipFuncGetAttributes(&attr, reinterpret_cast<const void*>(func))) != hipSuccess) {
8827  return status;
8828  }
8829 
8830  // Initial limits for the execution
8831  const int func_max_threads_per_block = attr.maxThreadsPerBlock;
8832  if (block_size_limit == 0) {
8833  block_size_limit = func_max_threads_per_block;
8834  }
8835 
8836  if (func_max_threads_per_block < block_size_limit) {
8837  block_size_limit = func_max_threads_per_block;
8838  }
8839 
8840  const int block_size_limit_aligned =
8841  ((block_size_limit + (warp_size - 1)) / warp_size) * warp_size;
8842 
8843  // For maximum search
8844  int max_threads = 0;
8845  int max_block_size{};
8846  int max_num_blocks{};
8847  for (int block_size_check_aligned = block_size_limit_aligned;
8848  block_size_check_aligned > 0;
8849  block_size_check_aligned -= warp_size) {
8850  // Make sure the logic uses the requested limit and not aligned
8851  int block_size_check = (block_size_limit < block_size_check_aligned) ?
8852  block_size_limit : block_size_check_aligned;
8853 
8854  size_t dyn_smem_size = block_size_to_dynamic_smem_size(block_size_check);
8855  int optimal_blocks;
8857  &optimal_blocks, func, block_size_check, dyn_smem_size, flags)) != hipSuccess) {
8858  return status;
8859  }
8860 
8861  int total_threads = block_size_check * optimal_blocks;
8862  if (total_threads > max_threads) {
8863  max_block_size = block_size_check;
8864  max_num_blocks = optimal_blocks;
8865  max_threads = total_threads;
8866  }
8867 
8868  // Break if the logic reached possible maximum
8869  if (max_threads_per_cu == max_threads) {
8870  break;
8871  }
8872  }
8873 
8874  // Grid size is the number of blocks per CU * CU count
8875  *min_grid_size = max_num_blocks * max_cu_count;
8876  *block_size = max_block_size;
8877 
8878  return status;
8879 }
8880 
8900 template<typename UnaryFunction, class T>
8901 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSizeVariableSMem(
8902  int* min_grid_size,
8903  int* block_size,
8904  T func,
8905  UnaryFunction block_size_to_dynamic_smem_size,
8906  int block_size_limit = 0)
8907 {
8908  return hipOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(min_grid_size, block_size, func,
8909  block_size_to_dynamic_smem_size, block_size_limit);
8910 }
8925 template <typename F>
8926 inline hipError_t hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
8927  F kernel, size_t dynSharedMemPerBlk, uint32_t blockSizeLimit) {
8928 return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize,(hipFunction_t)kernel, dynSharedMemPerBlk, blockSizeLimit);
8929 }
8946 template <class T>
8947 inline hipError_t hipLaunchCooperativeKernel(T f, dim3 gridDim, dim3 blockDim,
8948  void** kernelParams, unsigned int sharedMemBytes, hipStream_t stream) {
8949  return hipLaunchCooperativeKernel(reinterpret_cast<const void*>(f), gridDim,
8950  blockDim, kernelParams, sharedMemBytes, stream);
8951 }
8966 template <class T>
8968  unsigned int numDevices, unsigned int flags = 0) {
8969  return hipLaunchCooperativeKernelMultiDevice(launchParamsList, numDevices, flags);
8970 }
8985 template <class T>
8987  unsigned int numDevices, unsigned int flags = 0) {
8988  return hipExtLaunchMultiKernelMultiDevice(launchParamsList, numDevices, flags);
8989 }
9003 template <class T, int dim, enum hipTextureReadMode readMode>
9005 static inline hipError_t hipBindTexture(size_t* offset, const struct texture<T, dim, readMode>& tex,
9006  const void* devPtr, size_t size = UINT_MAX) {
9007  return hipBindTexture(offset, &tex, devPtr, &tex.channelDesc, size);
9008 }
9023 template <class T, int dim, enum hipTextureReadMode readMode>
9025 static inline hipError_t
9026  hipBindTexture(size_t* offset, const struct texture<T, dim, readMode>& tex, const void* devPtr,
9027  const struct hipChannelFormatDesc& desc, size_t size = UINT_MAX) {
9028  return hipBindTexture(offset, &tex, devPtr, &desc, size);
9029 }
9045 template<class T, int dim, enum hipTextureReadMode readMode>
9047 static inline hipError_t hipBindTexture2D(
9048  size_t *offset,
9049  const struct texture<T, dim, readMode> &tex,
9050  const void *devPtr,
9051  size_t width,
9052  size_t height,
9053  size_t pitch)
9054 {
9055  return hipBindTexture2D(offset, &tex, devPtr, &tex.channelDesc, width, height, pitch);
9056 }
9073 template<class T, int dim, enum hipTextureReadMode readMode>
9075 static inline hipError_t hipBindTexture2D(
9076  size_t *offset,
9077  const struct texture<T, dim, readMode> &tex,
9078  const void *devPtr,
9079  const struct hipChannelFormatDesc &desc,
9080  size_t width,
9081  size_t height,
9082  size_t pitch)
9083 {
9084  return hipBindTexture2D(offset, &tex, devPtr, &desc, width, height, pitch);
9085 }
9097 template<class T, int dim, enum hipTextureReadMode readMode>
9099 static inline hipError_t hipBindTextureToArray(
9100  const struct texture<T, dim, readMode> &tex,
9101  hipArray_const_t array)
9102 {
9103  struct hipChannelFormatDesc desc;
9104  hipError_t err = hipGetChannelDesc(&desc, array);
9105  return (err == hipSuccess) ? hipBindTextureToArray(&tex, array, &desc) : err;
9106 }
9119 template<class T, int dim, enum hipTextureReadMode readMode>
9121 static inline hipError_t hipBindTextureToArray(
9122  const struct texture<T, dim, readMode> &tex,
9123  hipArray_const_t array,
9124  const struct hipChannelFormatDesc &desc)
9125 {
9126  return hipBindTextureToArray(&tex, array, &desc);
9127 }
9139 template<class T, int dim, enum hipTextureReadMode readMode>
9142  const struct texture<T, dim, readMode> &tex,
9143  hipMipmappedArray_const_t mipmappedArray)
9144 {
9145  struct hipChannelFormatDesc desc;
9146  hipArray_t levelArray;
9147  hipError_t err = hipGetMipmappedArrayLevel(&levelArray, mipmappedArray, 0);
9148  if (err != hipSuccess) {
9149  return err;
9150  }
9151  err = hipGetChannelDesc(&desc, levelArray);
9152  return (err == hipSuccess) ? hipBindTextureToMipmappedArray(&tex, mipmappedArray, &desc) : err;
9153 }
9166 template<class T, int dim, enum hipTextureReadMode readMode>
9169  const struct texture<T, dim, readMode> &tex,
9170  hipMipmappedArray_const_t mipmappedArray,
9171  const struct hipChannelFormatDesc &desc)
9172 {
9173  return hipBindTextureToMipmappedArray(&tex, mipmappedArray, &desc);
9174 }
9185 template<class T, int dim, enum hipTextureReadMode readMode>
9187 static inline hipError_t hipUnbindTexture(
9188  const struct texture<T, dim, readMode> &tex)
9189 {
9190  return hipUnbindTexture(&tex);
9191 }
9215 static inline hipError_t hipMallocAsync(
9216  void** dev_ptr,
9217  size_t size,
9218  hipMemPool_t mem_pool,
9219  hipStream_t stream) {
9220  return hipMallocFromPoolAsync(dev_ptr, size, mem_pool, stream);
9221 }
9232 template<class T>
9233 static inline hipError_t hipMallocAsync(
9234  T** dev_ptr,
9235  size_t size,
9236  hipMemPool_t mem_pool,
9237  hipStream_t stream) {
9238  return hipMallocFromPoolAsync(reinterpret_cast<void**>(dev_ptr), size, mem_pool, stream);
9239 }
9250 template<class T>
9251 static inline hipError_t hipMallocAsync(
9252  T** dev_ptr,
9253  size_t size,
9254  hipStream_t stream) {
9255  return hipMallocAsync(reinterpret_cast<void**>(dev_ptr), size, stream);
9256 }
9267 template<class T>
9268 static inline hipError_t hipMallocFromPoolAsync(
9269  T** dev_ptr,
9270  size_t size,
9271  hipMemPool_t mem_pool,
9272  hipStream_t stream) {
9273  return hipMallocFromPoolAsync(reinterpret_cast<void**>(dev_ptr), size, mem_pool, stream);
9274 }
9280 #endif // __cplusplus
9281 
9282 #ifdef __GNUC__
9283 #pragma GCC visibility pop
9284 #endif
9285 
9286 
9287 #elif !defined(__HIP_PLATFORM_AMD__) && defined(__HIP_PLATFORM_NVIDIA__)
9288 #include "hip/nvidia_detail/nvidia_hip_runtime_api.h"
9289 #else
9290 #error("Must define exactly one of __HIP_PLATFORM_AMD__ or __HIP_PLATFORM_NVIDIA__");
9291 #endif
9292 
9293 
9305 #if defined(__cplusplus) && !defined(__HIP_DISABLE_CPP_FUNCTIONS__)
9306 template <class T>
9307 static inline hipError_t hipMalloc(T** devPtr, size_t size) {
9308  return hipMalloc((void**)devPtr, size);
9309 }
9321 template <class T>
9322 static inline hipError_t hipMallocPitch(T** devPtr, size_t* pitch, size_t width, size_t height) {
9323  return hipMallocPitch((void**)devPtr, pitch, width, height);
9324 }
9337 template <class T>
9338 static inline hipError_t hipHostMalloc(T** ptr, size_t size,
9339  unsigned int flags = hipHostMallocDefault) {
9340  return hipHostMalloc((void**)ptr, size, flags);
9341 }
9356 template <class T>
9357 static inline hipError_t hipMallocManaged(T** devPtr, size_t size,
9358  unsigned int flags = hipMemAttachGlobal) {
9359  return hipMallocManaged((void**)devPtr, size, flags);
9360 }
9361 
9362 
9363 #endif
9364 #endif
9365 // doxygen end HIP API
9369 #include <hip/amd_detail/amd_hip_runtime_pt_api.h>
9370 
9371 #if USE_PROF_API
9372 #include <hip/amd_detail/hip_prof_str.h>
9373 #endif
hipMemcpyKind
Definition: driver_types.h:333
@ hipMemcpyDeviceToHost
Device-to-Host Copy.
Definition: driver_types.h:336
@ hipMemcpyHostToDevice
Host-to-Device Copy.
Definition: driver_types.h:335
hipPointer_attribute
Definition: driver_types.h:431
struct hipArray * hipArray_t
Definition: driver_types.h:58
void * hipDeviceptr_t
Definition: driver_types.h:39
hipFunction_attribute
Definition: driver_types.h:417
const struct hipArray * hipArray_const_t
Definition: driver_types.h:59
hipArray_Format
Definition: driver_types.h:60
hipResourceType
Definition: driver_types.h:123
const char * hipKernelNameRef(const hipFunction_t f)
Returns kernel name reference by function name.
const char * hipKernelNameRefByPtr(const void *hostFunction, hipStream_t stream)
Retrives kernel for a given host pointer, unless stated otherwise.
const char * hipApiName(uint32_t id)
Returns HIP API name by ID.
int hipGetStreamDeviceId(hipStream_t stream)
Returns device ID on the stream.
hipError_t hipSetupArgument(const void *arg, size_t size, size_t offset)
Set a kernel argument.
hipError_t __hipPopCallConfiguration(dim3 *gridDim, dim3 *blockDim, size_t *sharedMem, hipStream_t *stream)
Pop configuration of a kernel launch.
hipError_t hipLaunchHostFunc(hipStream_t stream, hipHostFn_t fn, void *userData)
Enqueues a host function call in a stream.
hipError_t hipLaunchKernel(const void *function_address, dim3 numBlocks, dim3 dimBlocks, void **args, size_t sharedMemBytes, hipStream_t stream)
C compliant kernel launch API.
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.
hipError_t __hipPushCallConfiguration(dim3 gridDim, dim3 blockDim, size_t sharedMem, hipStream_t stream)
Push configuration of a kernel launch.
hipError_t hipLaunchByPtr(const void *func)
Launch a kernel.
hipError_t hipDrvMemcpy2DUnaligned(const hip_Memcpy2D *pCopy)
hipError_t hipConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem, hipStream_t stream)
Configure a kernel launch.
hipError_t hipCtxGetFlags(unsigned int *flags)
Return flags used for creating default context.
hipError_t hipCtxPopCurrent(hipCtx_t *ctx)
Pop the current/default context and return the popped context.
hipError_t hipCtxGetSharedMemConfig(hipSharedMemConfig *pConfig)
Get Shared memory bank configuration.
hipError_t hipDevicePrimaryCtxSetFlags(hipDevice_t dev, unsigned int flags)
Set flags for the primary context.
hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int *flags, int *active)
Get the state of the primary context.
hipError_t hipCtxGetCurrent(hipCtx_t *ctx)
Get the handle of the current/ default context.
hipError_t hipDevicePrimaryCtxRelease(hipDevice_t dev)
Release the primary context on the GPU.
hipError_t hipCtxSetCacheConfig(hipFuncCache_t cacheConfig)
Set L1/Shared cache partition.
hipError_t hipCtxSetCurrent(hipCtx_t ctx)
Set the passed context as current/default.
hipError_t hipCtxEnablePeerAccess(hipCtx_t peerCtx, unsigned int flags)
Enables direct access to memory allocations in a peer context.
hipError_t hipCtxGetDevice(hipDevice_t *device)
Get the handle of the device associated with current/default context.
hipError_t hipCtxDestroy(hipCtx_t ctx)
Destroy a HIP context.
hipError_t hipCtxPushCurrent(hipCtx_t ctx)
Push the context to be set as current/ default context.
hipError_t hipCtxGetCacheConfig(hipFuncCache_t *cacheConfig)
Get Cache configuration for a specific function.
hipError_t hipCtxCreate(hipCtx_t *ctx, unsigned int flags, hipDevice_t device)
Create a context and set it as current/default context.
hipError_t hipDevicePrimaryCtxRetain(hipCtx_t *pctx, hipDevice_t dev)
Retain the primary context on the GPU.
hipError_t hipCtxGetApiVersion(hipCtx_t ctx, int *apiVersion)
Returns the approximate HIP api version.
hipError_t hipDevicePrimaryCtxReset(hipDevice_t dev)
Resets the primary context on the GPU.
hipError_t hipCtxSynchronize(void)
Blocks until the default context has completed all preceding requested tasks.
hipError_t hipCtxSetSharedMemConfig(hipSharedMemConfig config)
Set Shared memory bank configuration.
hipError_t hipCtxDisablePeerAccess(hipCtx_t peerCtx)
Disable direct access from current context's virtual address space to memory allocations physically l...
hipError_t hipGetDeviceFlags(unsigned int *flags)
Gets the flags set for current device.
hipError_t hipIpcGetEventHandle(hipIpcEventHandle_t *handle, hipEvent_t event)
Gets an opaque interprocess handle for an event.
hipError_t hipDeviceGetDefaultMemPool(hipMemPool_t *mem_pool, int device)
Returns the default memory pool of the specified device.
hipError_t hipDeviceGetSharedMemConfig(hipSharedMemConfig *pConfig)
Returns bank width of shared memory for current device.
hipError_t hipDeviceSetMemPool(int device, hipMemPool_t mem_pool)
Sets the current memory pool of a device.
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...
hipError_t hipDeviceGetCacheConfig(hipFuncCache_t *cacheConfig)
Get Cache configuration for a specific Device.
hipError_t hipSetDevice(int deviceId)
Set default device to be used for subsequent hip API calls from this thread.
hipError_t hipExtGetLinkTypeAndHopCount(int device1, int device2, uint32_t *linktype, uint32_t *hopcount)
Returns the link type and hop count between two devices.
hipError_t hipSetDeviceFlags(unsigned flags)
The current device behavior is changed according the flags passed.
hipError_t hipDeviceGetAttribute(int *pi, hipDeviceAttribute_t attr, int deviceId)
Query for a specific device attribute.
hipError_t hipGetDevice(int *deviceId)
Return the default device id for the calling host thread.
hipError_t hipGetDeviceCount(int *count)
Return number of compute-capable devices.
hipError_t hipDeviceGetMemPool(hipMemPool_t *mem_pool, int device)
Gets the current memory pool for the specified device.
hipError_t hipDeviceReset(void)
The state of current device is discarded and updated to a fresh state.
hipError_t hipDeviceGetLimit(size_t *pValue, enum hipLimit_t limit)
Gets resource limits of current device.
hipError_t hipDeviceSetSharedMemConfig(hipSharedMemConfig config)
The bank width of shared memory on current device is set.
hipError_t hipDeviceSetLimit(enum hipLimit_t limit, size_t value)
Sets resource limits of current device.
hipError_t hipDeviceSetCacheConfig(hipFuncCache_t cacheConfig)
Set L1/Shared cache partition.
hipError_t hipIpcCloseMemHandle(void *devPtr)
Close memory mapped with hipIpcOpenMemHandle.
hipError_t hipSetValidDevices(int *device_arr, int len)
Set a list of devices that can be used.
hipError_t hipIpcOpenEventHandle(hipEvent_t *event, hipIpcEventHandle_t handle)
Opens an interprocess event handles.
hipError_t hipDeviceSynchronize(void)
Waits on all active streams on current device.
hipError_t hipIpcGetMemHandle(hipIpcMemHandle_t *handle, void *devPtr)
Gets an interprocess memory handle for an existing device memory allocation.
hipError_t hipInit(unsigned int flags)
Explicitly initializes the HIP runtime.
hipError_t hipDeviceComputeCapability(int *major, int *minor, hipDevice_t device)
Returns the compute capability of the device.
hipError_t hipDeviceGetName(char *name, int len, hipDevice_t device)
Returns an identifer string for the device.
hipError_t hipDeviceGetByPCIBusId(int *device, const char *pciBusId)
Returns a handle to a compute device.
hipError_t hipDeviceGetUuid(hipUUID *uuid, hipDevice_t device)
Returns an UUID for the device.[BETA].
hipError_t hipDeviceTotalMem(size_t *bytes, hipDevice_t device)
Returns the total amount of memory on the device.
hipError_t hipDeviceGetPCIBusId(char *pciBusId, int len, int device)
Returns a PCI Bus Id string for the device, overloaded to take int device ID.
hipError_t hipDeviceGet(hipDevice_t *device, int ordinal)
Returns a handle to a compute device.
hipError_t hipRuntimeGetVersion(int *runtimeVersion)
Returns the approximate HIP Runtime version.
hipError_t hipDeviceGetP2PAttribute(int *value, hipDeviceP2PAttr attr, int srcDevice, int dstDevice)
Returns a value for attribute of link between two devices.
hipError_t hipDriverGetVersion(int *driverVersion)
Returns the approximate HIP driver version.
const char * hipGetErrorString(hipError_t hipError)
Return handy text string message to explain the error which occurred.
hipError_t hipPeekAtLastError(void)
Return last error returned by any HIP runtime API call.
hipError_t hipDrvGetErrorString(hipError_t hipError, const char **errorString)
Return handy text string message to explain the error which occurred.
hipError_t hipGetLastError(void)
Return last error returned by any HIP runtime API call and resets the stored error code to hipSuccess...
const char * hipGetErrorName(hipError_t hip_error)
Return hip error as text string form.
hipError_t hipExtGetLastError(void)
Return last error returned by any HIP runtime API call and resets the stored error code to hipSuccess...
hipError_t hipDrvGetErrorName(hipError_t hipError, const char **errorString)
Return hip error as text string form.
hipError_t hipEventSynchronize(hipEvent_t event)
Wait for an event to complete.
hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream)
Record an event in the specified stream.
hipError_t hipEventQuery(hipEvent_t event)
Query event status.
hipError_t hipEventCreate(hipEvent_t *event)
hipError_t hipEventDestroy(hipEvent_t event)
Destroy the specified event.
hipError_t hipEventElapsedTime(float *ms, hipEvent_t start, hipEvent_t stop)
Return the elapsed time between two events.
hipError_t hipEventCreateWithFlags(hipEvent_t *event, unsigned flags)
Create an event with the specified flags.
hipError_t hipFuncSetSharedMemConfig(const void *func, hipSharedMemConfig config)
Set shared memory configuation for a specific function.
hipError_t hipFuncSetAttribute(const void *func, hipFuncAttribute attr, int value)
Set attribute for a specific function.
hipError_t hipFuncSetCacheConfig(const void *func, hipFuncCache_t config)
Set Cache configuration for a specific function.
hipError_t hipDestroyExternalMemory(hipExternalMemory_t extMem)
Destroys an external memory object.
hipError_t hipImportExternalSemaphore(hipExternalSemaphore_t *extSem_out, const hipExternalSemaphoreHandleDesc *semHandleDesc)
Imports an external semaphore.
hipError_t hipImportExternalMemory(hipExternalMemory_t *extMem_out, const hipExternalMemoryHandleDesc *memHandleDesc)
Imports an external memory object.
hipError_t hipDestroyExternalSemaphore(hipExternalSemaphore_t extSem)
Destroys an external semaphore object and releases any references to the underlying resource....
hipError_t hipWaitExternalSemaphoresAsync(const hipExternalSemaphore_t *extSemArray, const hipExternalSemaphoreWaitParams *paramsArray, unsigned int numExtSems, hipStream_t stream)
Waits on a set of external semaphore objects.
hipError_t hipSignalExternalSemaphoresAsync(const hipExternalSemaphore_t *extSemArray, const hipExternalSemaphoreSignalParams *paramsArray, unsigned int numExtSems, hipStream_t stream)
Signals a set of external semaphore objects.
hipError_t hipExternalMemoryGetMappedMipmappedArray(hipMipmappedArray_t *mipmap, hipExternalMemory_t extMem, const hipExternalMemoryMipmappedArrayDesc *mipmapDesc)
Maps a mipmapped array onto an external memory object.
hipError_t hipExternalMemoryGetMappedBuffer(void **devPtr, hipExternalMemory_t extMem, const hipExternalMemoryBufferDesc *bufferDesc)
Maps a buffer onto an imported memory object.
hipError_t hipGraphicsUnregisterResource(hipGraphicsResource_t resource)
Unregisters a graphics resource.
hipError_t hipGraphicsUnmapResources(int count, hipGraphicsResource_t *resources, hipStream_t stream)
Unmaps graphics resources.
hipError_t hipGraphicsSubResourceGetMappedArray(hipArray_t *array, hipGraphicsResource_t resource, unsigned int arrayIndex, unsigned int mipLevel)
Get an array through which to access a subresource of a mapped graphics resource.
hipError_t hipGraphicsResourceGetMappedPointer(void **devPtr, size_t *size, hipGraphicsResource_t resource)
Gets device accessible address of a graphics resource.
hipError_t hipGraphicsMapResources(int count, hipGraphicsResource_t *resources, hipStream_t stream)
Maps a graphics resource for access.
hipLimit_t
Definition: hip_runtime_api.h:651
hipMemAllocationHandleType
Definition: hip_runtime_api.h:971
hipGraphicsResource * hipGraphicsResource_t
Definition: hip_runtime_api.h:1211
struct ihipCtx_t * hipCtx_t
Definition: hip_runtime_api.h:606
#define __dparm(x)
Definition: hip_runtime_api.h:590
struct ihipStream_t * hipStream_t
Definition: hip_runtime_api.h:615
hipGraphInstantiateResult
Definition: hip_runtime_api.h:1426
int hipDevice_t
Definition: hip_runtime_api.h:608
hipAccessProperty
Definition: hip_runtime_api.h:1286
hipGraphDependencyType
Definition: hip_runtime_api.h:1642
hipMemRangeAttribute
Definition: hip_runtime_api.h:853
#define hipMemAttachSingle
Definition: hip_runtime_api.h:737
hipMemoryAdvise
Definition: hip_runtime_api.h:820
#define hipArrayDefault
Definition: hip_runtime_api.h:788
hipSharedMemConfig
Definition: hip_runtime_api.h:1041
#define hipKernelNodeAttrValue
Definition: hip_runtime_api.h:1330
hipComputeMode
Definition: hip_runtime_api.h:548
struct ihipEvent_t * hipEvent_t
Definition: hip_runtime_api.h:643
hipStreamCaptureMode
Definition: hip_runtime_api.h:1362
hipDriverProcAddressQueryResult
Definition: hip_runtime_api.h:542
hipLaunchAttributeID
Definition: hip_runtime_api.h:1302
hipGraphNodeType
Definition: hip_runtime_api.h:1235
hipExternalMemoryHandleType
Definition: hip_runtime_api.h:1085
#define hipMemAttachGlobal
Definition: hip_runtime_api.h:731
hipFuncAttribute
Definition: hip_runtime_api.h:1024
hipExternalSemaphoreHandleType
Definition: hip_runtime_api.h:1123
hipJitOption
Definition: hip_runtime_api.h:1001
hipDeviceP2PAttr
Definition: hip_runtime_api.h:609
hipGraphDebugDotFlags
Definition: hip_runtime_api.h:1404
hipUserObjectRetainFlags
Definition: hip_runtime_api.h:1389
enum __HIP_NODISCARD hipError_t hipError_t
Definition: hip_runtime_api.h:287
void(* hipHostFn_t)(void *userData)
Definition: hip_runtime_api.h:1253
#define hipOccupancyDefault
Definition: hip_runtime_api.h:793
hipStreamUpdateCaptureDependenciesFlags
Definition: hip_runtime_api.h:1374
struct ihipGraph * hipGraph_t
Definition: hip_runtime_api.h:1216
#define hipChooseDevice
Definition: hip_runtime_api.h:93
hipMemHandleType
Definition: hip_runtime_api.h:1505
hipFlushGPUDirectRDMAWritesOptions
Definition: hip_runtime_api.h:555
hipFuncCache_t
Definition: hip_runtime_api.h:1032
hipUserObjectFlags
Definition: hip_runtime_api.h:1385
#define __HIP_NODISCARD
Definition: hip_runtime_api.h:277
#define DEPRECATED_MSG
Definition: hip_runtime_api.h:582
hipGraphMemAttributeType
Definition: hip_runtime_api.h:1379
hipMemPoolAttr
Definition: hip_runtime_api.h:869
#define hipDeviceProp_t
Definition: hip_runtime_api.h:92
struct ihipModule_t * hipModule_t
Definition: hip_runtime_api.h:624
struct hipUserObject * hipUserObject_t
Definition: hip_runtime_api.h:1229
hipMemOperationType
Definition: hip_runtime_api.h:1512
void * hipExternalSemaphore_t
Definition: hip_runtime_api.h:1148
hipGraphicsRegisterFlags
Definition: hip_runtime_api.h:1199
hipMemRangeCoherencyMode
Definition: hip_runtime_api.h:841
hipMemAccessFlags
Definition: hip_runtime_api.h:944
hipMemAllocationGranularity_flags
Definition: hip_runtime_api.h:1497
struct hipGraphExec * hipGraphExec_t
Definition: hip_runtime_api.h:1224
hipGraphExecUpdateResult
Definition: hip_runtime_api.h:1347
struct ihipModuleSymbol_t * hipFunction_t
Definition: hip_runtime_api.h:625
#define hipKernelNodeAttrID
Definition: hip_runtime_api.h:1322
void * hipExternalMemory_t
Definition: hip_runtime_api.h:1122
hipStreamCaptureStatus
Definition: hip_runtime_api.h:1367
hipDeviceAttribute_t
Definition: hip_runtime_api.h:407
hipGPUDirectRDMAWritesOrdering
Definition: hip_runtime_api.h:560
#define hipGetDeviceProperties
Definition: hip_runtime_api.h:91
#define DEPRECATED(msg)
Definition: hip_runtime_api.h:580
#define hipHostMallocDefault
Definition: hip_runtime_api.h:704
struct _hipGraphicsResource hipGraphicsResource
Definition: hip_runtime_api.h:1209
hipMemAllocationType
Definition: hip_runtime_api.h:959
struct hipGraphNode * hipGraphNode_t
Definition: hip_runtime_api.h:1220
struct ihipMemGenericAllocationHandle * hipMemGenericAllocationHandle_t
Definition: hip_runtime_api.h:1492
hipMemoryType
Definition: hip_runtime_api.h:245
hipGraphInstantiateFlags
Definition: hip_runtime_api.h:1393
hipMemLocationType
Definition: hip_runtime_api.h:927
#define HIP_IPC_HANDLE_SIZE
Definition: hip_runtime_api.h:617
struct ihipMemPoolHandle_t * hipMemPool_t
Definition: hip_runtime_api.h:629
hipArraySparseSubresourceType
Definition: hip_runtime_api.h:1520
@ hipLimitMallocHeapSize
Definition: hip_runtime_api.h:657
@ hipLimitStackSize
Definition: hip_runtime_api.h:652
@ hipLimitRange
Supported limit range.
Definition: hip_runtime_api.h:659
@ hipLimitPrintfFifoSize
Definition: hip_runtime_api.h:655
@ hipMemHandleTypeWin32
Allows a Win32 NT handle for exporting. (HANDLE)
Definition: hip_runtime_api.h:974
@ hipMemHandleTypeWin32Kmt
Allows a Win32 KMT handle for exporting. (D3DKMT_HANDLE)
Definition: hip_runtime_api.h:975
@ hipMemHandleTypeNone
Does not allow any export mechanism.
Definition: hip_runtime_api.h:972
@ hipMemHandleTypePosixFileDescriptor
Allows a file descriptor for exporting. Permitted only on POSIX systems.
Definition: hip_runtime_api.h:973
@ hipGraphInstantiateNodeOperationNotSupported
Definition: hip_runtime_api.h:1432
@ hipGraphInstantiateMultipleDevicesNotSupported
Definition: hip_runtime_api.h:1434
@ hipGraphInstantiateError
Definition: hip_runtime_api.h:1428
@ hipGraphInstantiateInvalidStructure
Definition: hip_runtime_api.h:1430
@ hipGraphInstantiateSuccess
Definition: hip_runtime_api.h:1427
@ hipAccessPropertyNormal
Definition: hip_runtime_api.h:1287
@ hipAccessPropertyPersisting
Definition: hip_runtime_api.h:1289
@ hipAccessPropertyStreaming
Definition: hip_runtime_api.h:1288
@ hipGraphDependencyTypeDefault
Definition: hip_runtime_api.h:1643
@ hipGraphDependencyTypeProgrammatic
Definition: hip_runtime_api.h:1644
@ hipMemRangeAttributeLastPrefetchLocation
prefetched
Definition: hip_runtime_api.h:859
@ hipMemRangeAttributePreferredLocation
The preferred location of the range.
Definition: hip_runtime_api.h:856
@ hipMemRangeAttributeAccessedBy
Definition: hip_runtime_api.h:857
@ hipMemRangeAttributeReadMostly
Definition: hip_runtime_api.h:854
@ hipMemRangeAttributeCoherencyMode
Definition: hip_runtime_api.h:861
@ hipMemAdviseUnsetAccessedBy
Definition: hip_runtime_api.h:829
@ hipMemAdviseUnsetCoarseGrain
Restores cache coherency policy back to fine-grain.
Definition: hip_runtime_api.h:836
@ hipMemAdviseSetCoarseGrain
Definition: hip_runtime_api.h:831
@ hipMemAdviseUnsetPreferredLocation
Clear the preferred location for the data.
Definition: hip_runtime_api.h:826
@ hipMemAdviseSetAccessedBy
Definition: hip_runtime_api.h:827
@ hipMemAdviseSetPreferredLocation
Definition: hip_runtime_api.h:824
@ hipMemAdviseSetReadMostly
Definition: hip_runtime_api.h:821
@ hipMemAdviseUnsetReadMostly
Undo the effect of hipMemAdviseSetReadMostly.
Definition: hip_runtime_api.h:823
@ hipSharedMemBankSizeFourByte
Definition: hip_runtime_api.h:1043
@ hipSharedMemBankSizeEightByte
Definition: hip_runtime_api.h:1045
@ hipSharedMemBankSizeDefault
The compiler selects a device-specific value for the banking.
Definition: hip_runtime_api.h:1042
@ hipComputeModeProhibited
Definition: hip_runtime_api.h:551
@ hipComputeModeExclusive
Definition: hip_runtime_api.h:550
@ hipComputeModeDefault
Definition: hip_runtime_api.h:549
@ hipComputeModeExclusiveProcess
Definition: hip_runtime_api.h:552
@ hipStreamCaptureModeRelaxed
Definition: hip_runtime_api.h:1365
@ hipStreamCaptureModeThreadLocal
Definition: hip_runtime_api.h:1364
@ hipStreamCaptureModeGlobal
Definition: hip_runtime_api.h:1363
@ HIP_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND
Definition: hip_runtime_api.h:544
@ HIP_GET_PROC_ADDRESS_SUCCESS
Definition: hip_runtime_api.h:543
@ HIP_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT
Definition: hip_runtime_api.h:545
@ hipLaunchAttributePriority
Definition: hip_runtime_api.h:1305
@ hipLaunchAttributeAccessPolicyWindow
Definition: hip_runtime_api.h:1303
@ hipLaunchAttributeCooperative
Definition: hip_runtime_api.h:1304
@ hipGraphNodeTypeGraph
Node which executes an embedded graph.
Definition: hip_runtime_api.h:1240
@ hipGraphNodeTypeMemset
Memset node.
Definition: hip_runtime_api.h:1238
@ hipGraphNodeTypeEventRecord
External event record node.
Definition: hip_runtime_api.h:1243
@ hipGraphNodeTypeExtSemaphoreSignal
External Semaphore signal node.
Definition: hip_runtime_api.h:1244
@ hipGraphNodeTypeMemcpy
Memcpy node.
Definition: hip_runtime_api.h:1237
@ hipGraphNodeTypeWaitEvent
External event wait node.
Definition: hip_runtime_api.h:1242
@ hipGraphNodeTypeCount
Definition: hip_runtime_api.h:1250
@ hipGraphNodeTypeKernel
GPU kernel node.
Definition: hip_runtime_api.h:1236
@ hipGraphNodeTypeHost
Host (executable) node.
Definition: hip_runtime_api.h:1239
@ hipGraphNodeTypeMemAlloc
Memory alloc node.
Definition: hip_runtime_api.h:1246
@ hipGraphNodeTypeMemFree
Memory free node.
Definition: hip_runtime_api.h:1247
@ hipGraphNodeTypeMemcpyFromSymbol
MemcpyFromSymbol node.
Definition: hip_runtime_api.h:1248
@ hipGraphNodeTypeMemcpyToSymbol
MemcpyToSymbol node.
Definition: hip_runtime_api.h:1249
@ hipGraphNodeTypeEmpty
Empty (no-op) node.
Definition: hip_runtime_api.h:1241
@ hipGraphNodeTypeExtSemaphoreWait
External Semaphore wait node.
Definition: hip_runtime_api.h:1245
@ hipExternalMemoryHandleTypeD3D11Resource
Definition: hip_runtime_api.h:1091
@ hipExternalMemoryHandleTypeD3D12Resource
Definition: hip_runtime_api.h:1090
@ hipExternalMemoryHandleTypeNvSciBuf
Definition: hip_runtime_api.h:1093
@ hipExternalMemoryHandleTypeOpaqueFd
Definition: hip_runtime_api.h:1086
@ hipExternalMemoryHandleTypeD3D12Heap
Definition: hip_runtime_api.h:1089
@ hipExternalMemoryHandleTypeOpaqueWin32Kmt
Definition: hip_runtime_api.h:1088
@ hipExternalMemoryHandleTypeOpaqueWin32
Definition: hip_runtime_api.h:1087
@ hipExternalMemoryHandleTypeD3D11ResourceKmt
Definition: hip_runtime_api.h:1092
@ hipFuncAttributePreferredSharedMemoryCarveout
Definition: hip_runtime_api.h:1026
@ hipFuncAttributeMaxDynamicSharedMemorySize
Definition: hip_runtime_api.h:1025
@ hipFuncAttributeMax
Definition: hip_runtime_api.h:1027
@ hipExternalSemaphoreHandleTypeNvSciSync
Definition: hip_runtime_api.h:1129
@ hipExternalSemaphoreHandleTypeKeyedMutexKmt
Definition: hip_runtime_api.h:1131
@ hipExternalSemaphoreHandleTypeOpaqueWin32Kmt
Definition: hip_runtime_api.h:1126
@ hipExternalSemaphoreHandleTypeKeyedMutex
Definition: hip_runtime_api.h:1130
@ hipExternalSemaphoreHandleTypeD3D11Fence
Definition: hip_runtime_api.h:1128
@ hipExternalSemaphoreHandleTypeTimelineSemaphoreWin32
Definition: hip_runtime_api.h:1133
@ hipExternalSemaphoreHandleTypeOpaqueFd
Definition: hip_runtime_api.h:1124
@ hipExternalSemaphoreHandleTypeOpaqueWin32
Definition: hip_runtime_api.h:1125
@ hipExternalSemaphoreHandleTypeTimelineSemaphoreFd
Definition: hip_runtime_api.h:1132
@ hipExternalSemaphoreHandleTypeD3D12Fence
Definition: hip_runtime_api.h:1127
@ hipJitOptionCacheMode
Definition: hip_runtime_api.h:1016
@ hipJitOptionFastCompile
Definition: hip_runtime_api.h:1018
@ hipJitOptionInfoLogBuffer
Definition: hip_runtime_api.h:1005
@ hipJitOptionErrorLogBuffer
Definition: hip_runtime_api.h:1007
@ hipJitOptionTarget
Definition: hip_runtime_api.h:1011
@ hipJitOptionThreadsPerBlock
Definition: hip_runtime_api.h:1003
@ hipJitOptionNumOptions
Definition: hip_runtime_api.h:1019
@ hipJitOptionGenerateLineInfo
Definition: hip_runtime_api.h:1015
@ hipJitOptionOptimizationLevel
Definition: hip_runtime_api.h:1009
@ hipJitOptionErrorLogBufferSizeBytes
Definition: hip_runtime_api.h:1008
@ hipJitOptionWallTime
Definition: hip_runtime_api.h:1004
@ hipJitOptionInfoLogBufferSizeBytes
Definition: hip_runtime_api.h:1006
@ hipJitOptionTargetFromContext
Definition: hip_runtime_api.h:1010
@ hipJitOptionGenerateDebugInfo
Definition: hip_runtime_api.h:1013
@ hipJitOptionLogVerbose
Definition: hip_runtime_api.h:1014
@ hipJitOptionMaxRegisters
Definition: hip_runtime_api.h:1002
@ hipJitOptionSm3xOpt
Definition: hip_runtime_api.h:1017
@ hipJitOptionFallbackStrategy
Definition: hip_runtime_api.h:1012
@ hipDevP2PAttrAccessSupported
Definition: hip_runtime_api.h:611
@ hipDevP2PAttrHipArrayAccessSupported
Definition: hip_runtime_api.h:613
@ hipDevP2PAttrNativeAtomicSupported
Definition: hip_runtime_api.h:612
@ hipDevP2PAttrPerformanceRank
Definition: hip_runtime_api.h:610
@ hipGraphDebugDotFlagsKernelNodeAttributes
Definition: hip_runtime_api.h:1417
@ hipGraphDebugDotFlagsMemsetNodeParams
Definition: hip_runtime_api.h:1409
@ hipGraphDebugDotFlagsKernelNodeParams
Definition: hip_runtime_api.h:1407
@ hipGraphDebugDotFlagsExtSemasWaitNodeParams
Definition: hip_runtime_api.h:1415
@ hipGraphDebugDotFlagsHandles
Definition: hip_runtime_api.h:1419
@ hipGraphDebugDotFlagsExtSemasSignalNodeParams
Definition: hip_runtime_api.h:1413
@ hipGraphDebugDotFlagsHostNodeParams
Definition: hip_runtime_api.h:1410
@ hipGraphDebugDotFlagsEventNodeParams
Definition: hip_runtime_api.h:1411
@ hipGraphDebugDotFlagsVerbose
Definition: hip_runtime_api.h:1405
@ hipGraphDebugDotFlagsMemcpyNodeParams
Definition: hip_runtime_api.h:1408
@ hipGraphUserObjectMove
Add new reference or retain.
Definition: hip_runtime_api.h:1390
@ hipStreamAddCaptureDependencies
Add new nodes to the dependency set.
Definition: hip_runtime_api.h:1375
@ hipStreamSetCaptureDependencies
Replace the dependency set with the new nodes.
Definition: hip_runtime_api.h:1376
@ hipMemHandleTypeGeneric
Generic handle type.
Definition: hip_runtime_api.h:1506
@ hipFlushGPUDirectRDMAWritesOptionHost
Definition: hip_runtime_api.h:556
@ hipFlushGPUDirectRDMAWritesOptionMemOps
Definition: hip_runtime_api.h:557
@ hipFuncCachePreferNone
no preference for shared memory or L1 (default)
Definition: hip_runtime_api.h:1033
@ hipFuncCachePreferEqual
prefer equal size L1 cache and shared memory
Definition: hip_runtime_api.h:1036
@ hipFuncCachePreferL1
prefer larger L1 cache and smaller shared memory
Definition: hip_runtime_api.h:1035
@ hipFuncCachePreferShared
prefer larger shared memory and smaller L1 cache
Definition: hip_runtime_api.h:1034
@ hipUserObjectNoDestructorSync
Destructor execution is not synchronized.
Definition: hip_runtime_api.h:1386
@ hipGraphMemAttrReservedMemHigh
High watermark of memory, in bytes, currently allocated for graphs.
Definition: hip_runtime_api.h:1383
@ hipGraphMemAttrUsedMemCurrent
Amount of memory, in bytes, currently associated with graphs.
Definition: hip_runtime_api.h:1380
@ hipGraphMemAttrUsedMemHigh
High watermark of memory, in bytes, associated with graphs since the last time.
Definition: hip_runtime_api.h:1381
@ hipGraphMemAttrReservedMemCurrent
Amount of memory, in bytes, currently allocated for graphs.
Definition: hip_runtime_api.h:1382
@ hipMemPoolAttrUsedMemCurrent
Definition: hip_runtime_api.h:916
@ hipMemPoolAttrReservedMemHigh
Definition: hip_runtime_api.h:911
@ hipMemPoolAttrReservedMemCurrent
Definition: hip_runtime_api.h:905
@ hipMemPoolAttrReleaseThreshold
Definition: hip_runtime_api.h:900
@ hipMemPoolAttrUsedMemHigh
Definition: hip_runtime_api.h:922
@ hipMemPoolReuseAllowInternalDependencies
Definition: hip_runtime_api.h:891
@ hipMemPoolReuseFollowEventDependencies
Definition: hip_runtime_api.h:878
@ hipMemPoolReuseAllowOpportunistic
Definition: hip_runtime_api.h:884
@ hipMemOperationTypeMap
Map operation.
Definition: hip_runtime_api.h:1513
@ hipMemOperationTypeUnmap
Unmap operation.
Definition: hip_runtime_api.h:1514
@ hipGraphicsRegisterFlagsReadOnly
HIP will not write to this registered resource.
Definition: hip_runtime_api.h:1201
@ hipGraphicsRegisterFlagsTextureGather
HIP will perform texture gather operations on this registered resource.
Definition: hip_runtime_api.h:1205
@ hipGraphicsRegisterFlagsWriteDiscard
HIP will only write and will not read from this registered resource.
Definition: hip_runtime_api.h:1202
@ hipGraphicsRegisterFlagsNone
Definition: hip_runtime_api.h:1200
@ hipGraphicsRegisterFlagsSurfaceLoadStore
HIP will bind this resource to a surface.
Definition: hip_runtime_api.h:1204
@ hipMemRangeCoherencyModeFineGrain
Definition: hip_runtime_api.h:842
@ hipMemRangeCoherencyModeIndeterminate
Definition: hip_runtime_api.h:846
@ hipMemRangeCoherencyModeCoarseGrain
Definition: hip_runtime_api.h:844
@ hipMemAccessFlagsProtRead
Set the address range read accessible.
Definition: hip_runtime_api.h:946
@ hipMemAccessFlagsProtNone
Default, make the address range not accessible.
Definition: hip_runtime_api.h:945
@ hipMemAccessFlagsProtReadWrite
Set the address range read-write accessible.
Definition: hip_runtime_api.h:947
@ hipMemAllocationGranularityMinimum
Minimum granularity.
Definition: hip_runtime_api.h:1498
@ hipMemAllocationGranularityRecommended
Recommended granularity for performance.
Definition: hip_runtime_api.h:1499
@ hipGraphExecUpdateErrorNotSupported
The update failed because something about the node is not supported.
Definition: hip_runtime_api.h:1357
@ hipGraphExecUpdateErrorNodeTypeChanged
The update failed because a node type changed.
Definition: hip_runtime_api.h:1352
@ hipGraphExecUpdateErrorTopologyChanged
The update failed because the topology changed.
Definition: hip_runtime_api.h:1351
@ hipGraphExecUpdateErrorUnsupportedFunctionChange
Definition: hip_runtime_api.h:1359
@ hipGraphExecUpdateError
Definition: hip_runtime_api.h:1349
@ hipGraphExecUpdateErrorFunctionChanged
The update failed because the function of a kernel node changed.
Definition: hip_runtime_api.h:1353
@ hipGraphExecUpdateSuccess
The update succeeded.
Definition: hip_runtime_api.h:1348
@ hipGraphExecUpdateErrorParametersChanged
The update failed because the parameters changed in a way that is not supported.
Definition: hip_runtime_api.h:1355
@ hipStreamCaptureStatusInvalidated
Definition: hip_runtime_api.h:1370
@ hipStreamCaptureStatusNone
Stream is not capturing.
Definition: hip_runtime_api.h:1368
@ hipStreamCaptureStatusActive
Stream is actively capturing.
Definition: hip_runtime_api.h:1369
@ hipDeviceAttributeDirectManagedMemAccessFromHost
Definition: hip_runtime_api.h:425
@ hipDeviceAttributeSurfaceAlignment
Alignment requirement for surfaces.
Definition: hip_runtime_api.h:495
@ hipDeviceAttributeMaxGridDimX
Max grid size in width.
Definition: hip_runtime_api.h:442
@ hipDeviceAttributeMaxSurfaceCubemapLayered
Cuda only. Maximum dimension of Cubemap layered surface.
Definition: hip_runtime_api.h:451
@ hipDeviceAttributeMaxSurface3D
Maximum dimension (width, height, depth) of 3D surface.
Definition: hip_runtime_api.h:449
@ hipDeviceAttributeMaxPitch
Maximum pitch in bytes allowed by memory copies.
Definition: hip_runtime_api.h:472
@ hipDeviceAttributeTccDriver
Cuda only. Whether device is a Tesla device using TCC driver.
Definition: hip_runtime_api.h:496
@ hipDeviceAttributeHostNativeAtomicSupported
Link between the device and the host supports native atomic operations.
Definition: hip_runtime_api.h:428
@ hipDeviceAttributePageableMemoryAccessUsesHostPageTables
Device accesses pageable memory via the host's page tables.
Definition: hip_runtime_api.h:481
@ hipDeviceAttributeUnused5
Previously hipDeviceAttributeGcnArchName.
Definition: hip_runtime_api.h:516
@ hipDeviceAttributeMaxBlockDimY
Max block size in height.
Definition: hip_runtime_api.h:440
@ hipDeviceAttributeMaxSurfaceCubemap
Cuda only. Maximum dimensions of Cubemap surface.
Definition: hip_runtime_api.h:450
@ hipDeviceAttributePageableMemoryAccess
Definition: hip_runtime_api.h:479
@ hipDeviceAttributeClockRate
Peak clock frequency in kilohertz.
Definition: hip_runtime_api.h:416
@ hipDeviceAttributeCudaCompatibleEnd
Definition: hip_runtime_api.h:509
@ hipDeviceAttributeMaxTexture1DMipmap
Maximum size of 1D mipmapped texture.
Definition: hip_runtime_api.h:456
@ hipDeviceAttributeComputeCapabilityMajor
Major compute capability version number.
Definition: hip_runtime_api.h:436
@ hipDeviceAttributeGlobalL1CacheSupported
Device supports caching globals in L1.
Definition: hip_runtime_api.h:427
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedSharedMem
Definition: hip_runtime_api.h:525
@ hipDeviceAttributeAccessPolicyMaxWindowSize
Cuda only. The maximum size of the window policy in bytes.
Definition: hip_runtime_api.h:411
@ hipDeviceAttributeMaxTexture3DHeight
Maximum dimension height of 3D texture.
Definition: hip_runtime_api.h:464
@ hipDeviceAttributeComputeCapabilityMinor
Minor compute capability version number.
Definition: hip_runtime_api.h:475
@ hipDeviceAttributeMaxTextureCubemap
Maximum dimensions of Cubemap texture.
Definition: hip_runtime_api.h:467
@ hipDeviceAttributeDeviceOverlap
Definition: hip_runtime_api.h:423
@ hipDeviceAttributeMaxTexture2DLinear
Maximum dimensions (width, height, pitch) of 2D textures bound to pitched memory.
Definition: hip_runtime_api.h:461
@ hipDeviceAttributeMaxSurface2D
Maximum dimension (width, height) of 2D surface.
Definition: hip_runtime_api.h:447
@ hipDeviceAttributeMaxSurface1DLayered
Cuda only. Maximum dimensions of 1D layered surface.
Definition: hip_runtime_api.h:446
@ hipDeviceAttributeHdpRegFlushCntl
Address of the HDP_REG_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:518
@ hipDeviceAttributeComputeMode
Compute mode that device is currently in.
Definition: hip_runtime_api.h:417
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedFunc
Definition: hip_runtime_api.h:519
@ hipDeviceAttributeAsicRevision
Revision of the GPU in this device.
Definition: hip_runtime_api.h:528
@ hipDeviceAttributeUnused4
Previously hipDeviceAttributeGcnArch.
Definition: hip_runtime_api.h:515
@ hipDeviceAttributeCooperativeMultiDeviceLaunch
Support cooperative launch on multiple devices.
Definition: hip_runtime_api.h:422
@ hipDeviceAttributeMaxTexture2DHeight
Maximum dimension hight of 2D texture.
Definition: hip_runtime_api.h:458
@ hipDeviceAttributePersistingL2CacheMaxSize
Maximum l2 persisting lines capacity in bytes.
Definition: hip_runtime_api.h:485
@ hipDeviceAttributeEccEnabled
Whether ECC support is enabled.
Definition: hip_runtime_api.h:410
@ hipDeviceAttributeCanUseHostPointerForRegisteredMem
Definition: hip_runtime_api.h:414
@ hipDeviceAttributePciBusId
PCI Bus ID.
Definition: hip_runtime_api.h:482
@ hipDeviceAttributeL2CacheSize
Size of L2 cache in bytes. 0 if the device doesn't have L2 cache.
Definition: hip_runtime_api.h:432
@ hipDeviceAttributeKernelExecTimeout
Run time limit for kernels executed on the device.
Definition: hip_runtime_api.h:431
@ hipDeviceAttributeMaxThreadsDim
Maximum dimension of a block.
Definition: hip_runtime_api.h:469
@ hipDeviceAttributeSingleToDoublePrecisionPerfRatio
Cuda only. Performance ratio of single precision to double precision.
Definition: hip_runtime_api.h:493
@ hipDeviceAttributeMaxGridDimY
Max grid size in height.
Definition: hip_runtime_api.h:443
@ hipDeviceAttributeMultiprocessorCount
Number of multiprocessors on the device.
Definition: hip_runtime_api.h:477
@ hipDeviceAttributeAmdSpecificBegin
Definition: hip_runtime_api.h:510
@ hipDeviceAttributeMaxRegistersPerMultiprocessor
32-bit registers available per block.
Definition: hip_runtime_api.h:488
@ hipDeviceAttributeIsMultiGpuBoard
Multiple GPU devices.
Definition: hip_runtime_api.h:430
@ hipDeviceAttributeSharedMemPerBlockOptin
Maximum shared memory per block usable by special opt in.
Definition: hip_runtime_api.h:491
@ hipDeviceAttributeMaxSurface2DLayered
Cuda only. Maximum dimensions of 2D layered surface.
Definition: hip_runtime_api.h:448
@ hipDeviceAttributeAmdSpecificEnd
Definition: hip_runtime_api.h:537
@ hipDeviceAttributeMemoryClockRate
Peak memory clock frequency in kilohertz.
Definition: hip_runtime_api.h:474
@ hipDeviceAttributeMaxGridDimZ
Max grid size in depth.
Definition: hip_runtime_api.h:444
@ hipDeviceAttributeHdpMemFlushCntl
Address of the HDP_MEM_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:517
@ hipDeviceAttributeUnused2
Previously hipDeviceAttributeUuid.
Definition: hip_runtime_api.h:502
@ hipDeviceAttributeFineGrainSupport
'1' if Device supports fine grain, '0' otherwise
Definition: hip_runtime_api.h:534
@ hipDeviceAttributeCooperativeLaunch
Support cooperative launch.
Definition: hip_runtime_api.h:421
@ hipDeviceAttributeUnifiedAddressing
Cuda only. An unified address space shared with the host.
Definition: hip_runtime_api.h:501
@ hipDeviceAttributeAsyncEngineCount
Asynchronous engines number.
Definition: hip_runtime_api.h:412
@ hipDeviceAttributeMultiGpuBoardGroupID
Unique ID of device group on the same multi-GPU board.
Definition: hip_runtime_api.h:476
@ hipDeviceAttributeStreamPrioritiesSupported
Whether to support stream priorities.
Definition: hip_runtime_api.h:494
@ hipDeviceAttributeMaxSharedMemoryPerBlock
Maximum shared memory available per block in bytes.
Definition: hip_runtime_api.h:490
@ hipDeviceAttributeLocalL1CacheSupported
caching locals in L1 is supported
Definition: hip_runtime_api.h:433
@ hipDeviceAttributeCanUseStreamWaitValue
Definition: hip_runtime_api.h:529
@ hipDeviceAttributeMaxRegistersPerBlock
Definition: hip_runtime_api.h:486
@ hipDeviceAttributeMaxThreadsPerBlock
Maximum number of threads per block.
Definition: hip_runtime_api.h:470
@ hipDeviceAttributeMemoryBusWidth
Global memory bus width in bits.
Definition: hip_runtime_api.h:473
@ hipDeviceAttributeMemoryPoolSupportedHandleTypes
Supported handle mask for HIP Stream Ordered Memory Allocator.
Definition: hip_runtime_api.h:507
@ hipDeviceAttributeComputePreemptionSupported
Device supports Compute Preemption.
Definition: hip_runtime_api.h:418
@ hipDeviceAttributeMaxSurface1D
Maximum size of 1D surface.
Definition: hip_runtime_api.h:445
@ hipDeviceAttributeUnused1
Previously hipDeviceAttributeName.
Definition: hip_runtime_api.h:478
@ hipDeviceAttributeMaxTexture3DAlt
Maximum dimensions of alternate 3D texture.
Definition: hip_runtime_api.h:466
@ hipDeviceAttributeMaxTexture1DLinear
Definition: hip_runtime_api.h:454
@ hipDeviceAttributeMaxTexture2DGather
Maximum dimensions of 2D texture if gather operations performed.
Definition: hip_runtime_api.h:459
@ hipDeviceAttributeWallClockRate
Constant frequency of wall clock in kilohertz.
Definition: hip_runtime_api.h:535
@ hipDeviceAttributePciDeviceId
PCI Device ID.
Definition: hip_runtime_api.h:483
@ hipDeviceAttributeCanMapHostMemory
Whether host memory can be mapped into device address space.
Definition: hip_runtime_api.h:413
@ hipDeviceAttributeMaxTexture1DWidth
Maximum size of 1D texture.
Definition: hip_runtime_api.h:452
@ hipDeviceAttributeConcurrentManagedAccess
Device can coherently access managed memory concurrently with the CPU.
Definition: hip_runtime_api.h:420
@ hipDeviceAttributeVendorSpecificBegin
Definition: hip_runtime_api.h:538
@ hipDeviceAttributeManagedMemory
Device supports allocating managed memory on this system.
Definition: hip_runtime_api.h:437
@ hipDeviceAttributeIntegrated
Device is integrated GPU.
Definition: hip_runtime_api.h:429
@ hipDeviceAttributeMaxTexture2DLayered
Maximum dimensions of 2D layered texture.
Definition: hip_runtime_api.h:460
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedGridDim
Definition: hip_runtime_api.h:521
@ hipDeviceAttributeMaxTexture3DDepth
Maximum dimension depth of 3D texture.
Definition: hip_runtime_api.h:465
@ hipDeviceAttributeImageSupport
'1' if Device supports image, '0' otherwise.
Definition: hip_runtime_api.h:531
@ hipDeviceAttributeTotalGlobalMem
Global memory available on devicice.
Definition: hip_runtime_api.h:500
@ hipDeviceAttributeMaxBlocksPerMultiProcessor
Max block size per multiprocessor.
Definition: hip_runtime_api.h:438
@ hipDeviceAttributeIsLargeBar
Whether it is LargeBar.
Definition: hip_runtime_api.h:527
@ hipDeviceAttributeMaxTexture2DWidth
Maximum dimension width of 2D texture.
Definition: hip_runtime_api.h:457
@ hipDeviceAttributeMaxBlockDimX
Max block size in width.
Definition: hip_runtime_api.h:439
@ hipDeviceAttributeMaxTexture3DWidth
Maximum dimension width of 3D texture.
Definition: hip_runtime_api.h:463
@ hipDeviceAttributeUnused3
Previously hipDeviceAttributeArch.
Definition: hip_runtime_api.h:513
@ hipDeviceAttributeTotalConstantMemory
Constant memory size in bytes.
Definition: hip_runtime_api.h:499
@ hipDeviceAttributeTextureAlignment
Alignment requirement for textures.
Definition: hip_runtime_api.h:497
@ hipDeviceAttributeMaxTexture1DLayered
Maximum dimensions of 1D layered texture.
Definition: hip_runtime_api.h:453
@ hipDeviceAttributeMaxSharedMemoryPerMultiprocessor
Maximum Shared Memory PerMultiprocessor.
Definition: hip_runtime_api.h:514
@ hipDeviceAttributeReservedSharedMemPerBlock
Shared memory reserved by CUDA driver per block.
Definition: hip_runtime_api.h:489
@ hipDeviceAttributeCudaCompatibleBegin
Definition: hip_runtime_api.h:408
@ hipDeviceAttributeConcurrentKernels
Device can possibly execute multiple kernels concurrently.
Definition: hip_runtime_api.h:419
@ hipDeviceAttributeLuid
8-byte locally unique identifier in 8 bytes. Undefined on TCC and non-Windows platforms
Definition: hip_runtime_api.h:434
@ hipDeviceAttributePciDomainID
PCI Domain ID.
Definition: hip_runtime_api.h:484
@ hipDeviceAttributeMaxThreadsPerMultiProcessor
Maximum resident threads per multiprocessor.
Definition: hip_runtime_api.h:471
@ hipDeviceAttributeTexturePitchAlignment
Pitch alignment requirement for 2D texture references bound to pitched memory;.
Definition: hip_runtime_api.h:498
@ hipDeviceAttributePhysicalMultiProcessorCount
Definition: hip_runtime_api.h:532
@ hipDeviceAttributeHostRegisterSupported
Can device support host memory registration via hipHostRegister.
Definition: hip_runtime_api.h:506
@ hipDeviceAttributeSharedMemPerMultiprocessor
Shared memory available per multiprocessor.
Definition: hip_runtime_api.h:492
@ hipDeviceAttributeLuidDeviceNodeMask
Luid device node mask. Undefined on TCC and non-Windows platforms.
Definition: hip_runtime_api.h:435
@ hipDeviceAttributeMaxTextureCubemapLayered
Maximum dimensions of Cubemap layered texture.
Definition: hip_runtime_api.h:468
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedBlockDim
Definition: hip_runtime_api.h:523
@ hipDeviceAttributeVirtualMemoryManagementSupported
Device supports HIP virtual memory management.
Definition: hip_runtime_api.h:505
@ hipDeviceAttributeMemoryPoolsSupported
Device supports HIP Stream Ordered Memory Allocator.
Definition: hip_runtime_api.h:504
@ hipDeviceAttributeClockInstructionRate
Frequency in khz of the timer used by the device-side "clock*".
Definition: hip_runtime_api.h:512
@ hipDeviceAttributeMaxTexture2DMipmap
Maximum dimensions of 2D mipmapped texture.
Definition: hip_runtime_api.h:462
@ hipDeviceAttributeMaxBlockDimZ
Max block size in depth.
Definition: hip_runtime_api.h:441
@ hipDeviceAttributeWarpSize
Warp size in threads.
Definition: hip_runtime_api.h:503
@ hipGPUDirectRDMAWritesOrderingOwner
Definition: hip_runtime_api.h:562
@ hipGPUDirectRDMAWritesOrderingNone
Definition: hip_runtime_api.h:561
@ hipGPUDirectRDMAWritesOrderingAllDevices
Definition: hip_runtime_api.h:563
@ hipMemAllocationTypeMax
Definition: hip_runtime_api.h:965
@ hipMemAllocationTypePinned
Definition: hip_runtime_api.h:964
@ hipMemAllocationTypeInvalid
Definition: hip_runtime_api.h:960
@ hipMemoryTypeDevice
Definition: hip_runtime_api.h:248
@ hipMemoryTypeHost
Memory is physically located on host.
Definition: hip_runtime_api.h:247
@ hipMemoryTypeUnregistered
Unregistered memory.
Definition: hip_runtime_api.h:246
@ hipMemoryTypeArray
Definition: hip_runtime_api.h:253
@ hipMemoryTypeManaged
Definition: hip_runtime_api.h:250
@ hipMemoryTypeUnified
unified address space
Definition: hip_runtime_api.h:255
@ hipGraphInstantiateFlagAutoFreeOnLaunch
Automatically free memory allocated in a graph before relaunching.
Definition: hip_runtime_api.h:1394
@ hipGraphInstantiateFlagUseNodePriority
Run the graph using the per-node priority attributes rather than the priority of the stream it is lau...
Definition: hip_runtime_api.h:1400
@ hipGraphInstantiateFlagUpload
Automatically upload the graph after instantiaton.
Definition: hip_runtime_api.h:1396
@ hipGraphInstantiateFlagDeviceLaunch
Instantiate the graph to be launchable from the device.
Definition: hip_runtime_api.h:1398
@ hipMemLocationTypeInvalid
Definition: hip_runtime_api.h:928
@ hipMemLocationTypeDevice
Device location, thus it's HIP device ID.
Definition: hip_runtime_api.h:929
@ hipArraySparseSubresourceTypeSparseLevel
Sparse level.
Definition: hip_runtime_api.h:1521
@ hipArraySparseSubresourceTypeMiptail
Miptail.
Definition: hip_runtime_api.h:1522
hipError_t hipGraphKernelNodeSetParams(hipGraphNode_t node, const hipKernelNodeParams *pNodeParams)
Sets a kernel node's parameters.
hipError_t hipGraphMemFreeNodeGetParams(hipGraphNode_t node, void *dev_ptr)
Returns parameters for memory free node.
hipError_t hipGraphNodeGetDependencies(hipGraphNode_t node, hipGraphNode_t *pDependencies, size_t *pNumDependencies)
Returns a node's dependencies.
hipError_t hipGraphCreate(hipGraph_t *pGraph, unsigned int flags)
Creates a graph.
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.
hipError_t hipDrvGraphMemcpyNodeGetParams(hipGraphNode_t hNode, HIP_MEMCPY3D *nodeParams)
Gets a memcpy node's parameters.
hipError_t hipDeviceSetGraphMemAttribute(int device, hipGraphMemAttributeType attr, void *value)
Set the mem attribute for graphs.
hipError_t hipGraphMemcpyNodeSetParams(hipGraphNode_t node, const hipMemcpy3DParms *pNodeParams)
Sets a memcpy node's parameters.
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.
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.
hipError_t hipGraphNodeFindInClone(hipGraphNode_t *pNode, hipGraphNode_t originalNode, hipGraph_t clonedGraph)
Finds a cloned version of a node.
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.
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.
hipError_t hipStreamIsCapturing(hipStream_t stream, hipStreamCaptureStatus *pCaptureStatus)
Get stream's capture state.
hipError_t hipGraphNodeGetEnabled(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, unsigned int *isEnabled)
Query whether a node in the given graphExec is enabled.
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.
hipError_t hipGraphExternalSemaphoresSignalNodeSetParams(hipGraphNode_t hNode, const hipExternalSemaphoreSignalNodeParams *nodeParams)
Updates node parameters in the external semaphore signal node.
hipError_t hipGraphDestroyNode(hipGraphNode_t node)
Remove a node from the graph.
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.
hipError_t hipGraphReleaseUserObject(hipGraph_t graph, hipUserObject_t object, unsigned int count)
Release user object from graphs.
hipError_t hipDrvGraphAddMemcpyNode(hipGraphNode_t *phGraphNode, hipGraph_t hGraph, const hipGraphNode_t *dependencies, size_t numDependencies, const HIP_MEMCPY3D *copyParams, hipCtx_t ctx)
Creates a memcpy node and adds it to a graph.
hipError_t hipGraphRemoveDependencies(hipGraph_t graph, const hipGraphNode_t *from, const hipGraphNode_t *to, size_t numDependencies)
Removes dependency edges from a graph.
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.
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.
hipError_t hipGraphExecDestroy(hipGraphExec_t graphExec)
Destroys an executable graph.
hipError_t hipGraphAddExternalSemaphoresSignalNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipExternalSemaphoreSignalNodeParams *nodeParams)
Creates a external semaphor signal node and adds it to a graph.
hipError_t hipGraphExecExternalSemaphoresWaitNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, const hipExternalSemaphoreWaitNodeParams *nodeParams)
Updates node parameters in the external semaphore wait node in the given graphExec.
hipError_t hipGraphExecHostNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipHostNodeParams *pNodeParams)
Sets the parameters for a host node in the given graphExec.
hipError_t hipGraphExecChildGraphNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, hipGraph_t childGraph)
Updates node parameters in the child graph node in the given graphExec.
hipError_t hipStreamGetCaptureInfo(hipStream_t stream, hipStreamCaptureStatus *pCaptureStatus, unsigned long long *pId)
Get capture status of a stream.
hipError_t hipGraphAddDependencies(hipGraph_t graph, const hipGraphNode_t *from, const hipGraphNode_t *to, size_t numDependencies)
Adds dependency edges to a graph.
hipError_t hipDrvGraphExecMemsetNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, const HIP_MEMSET_NODE_PARAMS *memsetParams, hipCtx_t ctx)
Sets the parameters for a memset node in the given graphExec.
hipError_t hipDrvGraphAddMemFreeNode(hipGraphNode_t *phGraphNode, hipGraph_t hGraph, const hipGraphNode_t *dependencies, size_t numDependencies, hipDeviceptr_t dptr)
Creates a memory free node and adds it to a graph.
hipError_t hipGraphExecKernelNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipKernelNodeParams *pNodeParams)
Sets the parameters for a kernel node in the given graphExec.
hipError_t hipGraphNodeGetDependentNodes(hipGraphNode_t node, hipGraphNode_t *pDependentNodes, size_t *pNumDependentNodes)
Returns a node's dependent nodes.
hipError_t hipDeviceGetGraphMemAttribute(int device, hipGraphMemAttributeType attr, void *value)
Get the mem attribute for graphs.
hipError_t hipGraphHostNodeGetParams(hipGraphNode_t node, hipHostNodeParams *pNodeParams)
Returns a host node's parameters.
hipError_t hipGraphInstantiateWithFlags(hipGraphExec_t *pGraphExec, hipGraph_t graph, unsigned long long flags)
Creates an executable graph from a graph.
hipError_t hipGraphExternalSemaphoresSignalNodeGetParams(hipGraphNode_t hNode, hipExternalSemaphoreSignalNodeParams *params_out)
Returns external semaphore signal node params.
hipError_t hipGraphUpload(hipGraphExec_t graphExec, hipStream_t stream)
uploads an executable graph in a stream
hipError_t hipGraphExecExternalSemaphoresSignalNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, const hipExternalSemaphoreSignalNodeParams *nodeParams)
Updates node parameters in the external semaphore signal node in the given graphExec.
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.
hipError_t hipUserObjectRelease(hipUserObject_t object, unsigned int count)
Release number of references to resource.
hipError_t hipGraphKernelNodeGetParams(hipGraphNode_t node, hipKernelNodeParams *pNodeParams)
Gets kernel node's parameters.
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.
hipError_t hipGraphKernelNodeCopyAttributes(hipGraphNode_t hSrc, hipGraphNode_t hDst)
Copies attributes from source node to destination node.
hipError_t hipGraphAddMemFreeNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, void *dev_ptr)
Creates a memory free node and adds it to a graph.
hipError_t hipDrvGraphMemcpyNodeSetParams(hipGraphNode_t hNode, const HIP_MEMCPY3D *nodeParams)
Sets a memcpy node's parameters.
hipError_t hipGraphMemcpyNodeGetParams(hipGraphNode_t node, hipMemcpy3DParms *pNodeParams)
Gets a memcpy node's parameters.
hipError_t hipGraphNodeSetParams(hipGraphNode_t node, hipGraphNodeParams *nodeParams)
Updates parameters of a created node.
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.
hipError_t hipDrvGraphExecMemcpyNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, const HIP_MEMCPY3D *copyParams, hipCtx_t ctx)
Sets the parameters for a memcpy node in the given graphExec.
hipError_t hipStreamBeginCapture(hipStream_t stream, hipStreamCaptureMode mode)
Begins graph capture on a stream.
hipError_t hipStreamEndCapture(hipStream_t stream, hipGraph_t *pGraph)
Ends capture on a stream, returning the captured graph.
hipError_t hipGraphExecGetFlags(hipGraphExec_t graphExec, unsigned long long *flags)
Return the flags on executable graph.
hipError_t hipUserObjectRetain(hipUserObject_t object, unsigned int count)
Retain number of references to resource.
hipError_t hipGraphNodeGetType(hipGraphNode_t node, hipGraphNodeType *pType)
Returns a node's type.
hipError_t hipGraphNodeSetEnabled(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, unsigned int isEnabled)
Enables or disables the specified node in the given graphExec.
hipError_t hipGraphExecMemcpyNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, hipMemcpy3DParms *pNodeParams)
Sets the parameters for a memcpy node in the given graphExec.
hipError_t hipGraphExecNodeSetParams(hipGraphExec_t graphExec, hipGraphNode_t node, hipGraphNodeParams *nodeParams)
Updates parameters of a created node on executable graph.
hipError_t hipGraphHostNodeSetParams(hipGraphNode_t node, const hipHostNodeParams *pNodeParams)
Sets a host node's parameters.
hipError_t hipGraphMemAllocNodeGetParams(hipGraphNode_t node, hipMemAllocNodeParams *pNodeParams)
Returns parameters for memory allocation node.
hipError_t hipGraphInstantiateWithParams(hipGraphExec_t *pGraphExec, hipGraph_t graph, hipGraphInstantiateParams *instantiateParams)
Creates an executable graph from a graph.
hipError_t hipGraphExecEventRecordNodeSetEvent(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, hipEvent_t event)
Sets the event for an event record node in the given graphExec.
hipError_t hipGraphExternalSemaphoresWaitNodeSetParams(hipGraphNode_t hNode, const hipExternalSemaphoreWaitNodeParams *nodeParams)
Updates node parameters in the external semaphore wait node.
hipError_t hipGraphMemsetNodeGetParams(hipGraphNode_t node, hipMemsetParams *pNodeParams)
Gets a memset node's parameters.
hipError_t hipGraphChildGraphNodeGetGraph(hipGraphNode_t node, hipGraph_t *pGraph)
Gets a handle to the embedded graph of a child graph node.
hipError_t hipGraphKernelNodeGetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr, hipKernelNodeAttrValue *value)
Gets a node attribute.
hipError_t hipThreadExchangeStreamCaptureMode(hipStreamCaptureMode *mode)
Swaps the stream capture mode of a thread.
hipError_t hipGraphLaunch(hipGraphExec_t graphExec, hipStream_t stream)
launches an executable graph in a stream
hipError_t hipGraphDebugDotPrint(hipGraph_t graph, const char *path, unsigned int flags)
Write a DOT file describing graph structure.
hipError_t hipGraphExecMemsetNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipMemsetParams *pNodeParams)
Sets the parameters for a memset node in the given graphExec.
hipError_t hipGraphGetEdges(hipGraph_t graph, hipGraphNode_t *from, hipGraphNode_t *to, size_t *numEdges)
Returns a graph's dependency edges.
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.
hipError_t hipGraphExecEventWaitNodeSetEvent(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, hipEvent_t event)
Sets the event for an event record node in the given graphExec.
hipError_t hipStreamGetCaptureInfo_v2(hipStream_t stream, hipStreamCaptureStatus *captureStatus_out, unsigned long long *id_out, hipGraph_t *graph_out, const hipGraphNode_t **dependencies_out, size_t *numDependencies_out)
Get stream's capture state.
hipError_t hipStreamBeginCaptureToGraph(hipStream_t stream, hipGraph_t graph, const hipGraphNode_t *dependencies, const hipGraphEdgeData *dependencyData, size_t numDependencies, hipStreamCaptureMode mode)
Begins graph capture on a stream to an existing graph.
hipError_t hipGraphAddExternalSemaphoresWaitNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipExternalSemaphoreWaitNodeParams *nodeParams)
Creates a external semaphor wait node and adds it to a graph.
hipError_t hipGraphEventWaitNodeSetEvent(hipGraphNode_t node, hipEvent_t event)
Sets an event wait node's event.
hipError_t hipGraphEventRecordNodeSetEvent(hipGraphNode_t node, hipEvent_t event)
Sets an event record node's event.
hipError_t hipGraphEventWaitNodeGetEvent(hipGraphNode_t node, hipEvent_t *event_out)
Returns the event associated with an event wait node.
hipError_t hipGraphKernelNodeSetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr, const hipKernelNodeAttrValue *value)
Sets a node attribute.
hipError_t hipGraphMemsetNodeSetParams(hipGraphNode_t node, const hipMemsetParams *pNodeParams)
Sets a memset node's parameters.
hipError_t hipGraphEventRecordNodeGetEvent(hipGraphNode_t node, hipEvent_t *event_out)
Returns the event associated with an event record node.
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.
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.
hipError_t hipGraphDestroy(hipGraph_t graph)
Destroys a graph.
hipError_t hipGraphRetainUserObject(hipGraph_t graph, hipUserObject_t object, unsigned int count, unsigned int flags)
Retain user object for graphs.
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.
hipError_t hipGraphAddMemAllocNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, hipMemAllocNodeParams *pNodeParams)
Creates a memory allocation node and adds it to a graph.
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.
hipError_t hipGraphAddNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, hipGraphNodeParams *nodeParams)
Creates a kernel execution node and adds it to a graph.
hipError_t hipGraphGetNodes(hipGraph_t graph, hipGraphNode_t *nodes, size_t *numNodes)
Returns graph nodes.
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.
hipError_t hipStreamUpdateCaptureDependencies(hipStream_t stream, hipGraphNode_t *dependencies, size_t numDependencies, unsigned int flags)
Update the set of dependencies in a capturing stream.
hipError_t hipGraphInstantiate(hipGraphExec_t *pGraphExec, hipGraph_t graph, hipGraphNode_t *pErrorNode, char *pLogBuffer, size_t bufferSize)
Creates an executable graph from a graph.
hipError_t hipDeviceGraphMemTrim(int device)
Free unused memory on specific device used for graph back to OS.
hipError_t hipGraphExternalSemaphoresWaitNodeGetParams(hipGraphNode_t hNode, hipExternalSemaphoreWaitNodeParams *params_out)
Returns external semaphore wait node params.
hipError_t hipGraphClone(hipGraph_t *pGraphClone, hipGraph_t originalGraph)
Clones a graph.
hipError_t hipDrvGraphAddMemsetNode(hipGraphNode_t *phGraphNode, hipGraph_t hGraph, const hipGraphNode_t *dependencies, size_t numDependencies, const HIP_MEMSET_NODE_PARAMS *memsetParams, hipCtx_t ctx)
Creates a memset node and adds it to a graph.
hipError_t hipGraphGetRootNodes(hipGraph_t graph, hipGraphNode_t *pRootNodes, size_t *pNumRootNodes)
Returns graph's root nodes.
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.
hipError_t hipMemcpyAtoA(hipArray_t dstArray, size_t dstOffset, hipArray_t srcArray, size_t srcOffset, size_t ByteCount)
Copies from one 1D array to another.
hipError_t hipHostAlloc(void **ptr, size_t size, unsigned int flags)
Allocate device accessible page locked host memory [Deprecated].
hipError_t hipMemcpy2DArrayToArray(hipArray_t dst, size_t wOffsetDst, size_t hOffsetDst, hipArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t width, size_t height, hipMemcpyKind kind)
Copies data between host and device.
hipError_t hipMemsetD8Async(hipDeviceptr_t dest, unsigned char value, size_t count, hipStream_t stream)
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant byte value va...
hipError_t hipMemcpyAtoHAsync(void *dstHost, hipArray_t srcArray, size_t srcOffset, size_t ByteCount, hipStream_t stream)
Copies from one 1D array to host memory.
hipError_t hipFreeHost(void *ptr)
Free memory allocated by the hcc hip host memory allocation API [Deprecated].
hipError_t hipMemset2DAsync(void *dst, size_t pitch, int value, size_t width, size_t height, hipStream_t stream)
Fills asynchronously the memory area pointed to by dst with the constant value.
hipError_t hipHostFree(void *ptr)
Free memory allocated by the hcc hip host memory allocation API This API performs an implicit hipDevi...
hipError_t hipMemGetInfo(size_t *free, size_t *total)
Query memory info.
hipError_t hipExtMallocWithFlags(void **ptr, size_t sizeBytes, unsigned int flags)
Allocate memory on the default accelerator.
hipError_t hipMemcpy3D(const struct hipMemcpy3DParms *p)
Copies data between host and device.
hipError_t hipMalloc3DArray(hipArray_t *array, const struct hipChannelFormatDesc *desc, struct hipExtent extent, unsigned int flags)
Allocate an array on the device.
hipError_t hipArrayCreate(hipArray_t *pHandle, const HIP_ARRAY_DESCRIPTOR *pAllocateArray)
Create an array memory pointer on the device.
hipError_t hipMemset3D(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent)
Fills synchronously the memory area pointed to by pitchedDevPtr with the constant value.
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...
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...
hipError_t hipMemcpyAtoD(hipDeviceptr_t dstDevice, hipArray_t srcArray, size_t srcOffset, size_t ByteCount)
Copies from one 1D array to device memory.
hipError_t hipMalloc(void **ptr, size_t size)
Allocate memory on the default accelerator.
hipError_t hipHostUnregister(void *hostPtr)
Un-register host pointer.
hipError_t hipHostGetFlags(unsigned int *flagsPtr, void *hostPtr)
Return flags associated with host pointer.
hipError_t hipMemcpyFromSymbolAsync(void *dst, const void *symbol, size_t sizeBytes, size_t offset, hipMemcpyKind kind, hipStream_t stream)
Copies data from the given symbol on the device asynchronously.
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...
hipError_t hipMemset3DAsync(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent, hipStream_t stream)
Fills asynchronously the memory area pointed to by pitchedDevPtr with the constant value.
hipError_t hipMemcpyFromSymbol(void *dst, const void *symbol, size_t sizeBytes, size_t offset, hipMemcpyKind kind)
Copies data from the given symbol on the device.
hipError_t hipDrvMemcpy3DAsync(const HIP_MEMCPY3D *pCopy, hipStream_t stream)
Copies data between host and device asynchronously.
hipError_t hipMallocHost(void **ptr, size_t size)
Allocate pinned host memory [Deprecated].
hipError_t hipArray3DGetDescriptor(HIP_ARRAY3D_DESCRIPTOR *pArrayDescriptor, hipArray_t array)
Gets a 3D array descriptor.
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)
Copies data between host and device.
hipError_t hipArrayGetDescriptor(HIP_ARRAY_DESCRIPTOR *pArrayDescriptor, hipArray_t array)
Gets a 1D or 2D array descriptor.
hipError_t hipFree(void *ptr)
Free memory allocated by the hcc hip memory allocation API. This API performs an implicit hipDeviceSy...
hipError_t hipMemcpyHtoAAsync(hipArray_t dstArray, size_t dstOffset, const void *srcHost, size_t ByteCount, hipStream_t stream)
Copies from host memory to a 1D array.
hipError_t hipMemsetD16Async(hipDeviceptr_t dest, unsigned short value, size_t count, hipStream_t stream)
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant short value v...
hipError_t hipGetProcAddress(const char *symbol, void **pfn, int hipVersion, uint64_t flags, hipDriverProcAddressQueryResult *symbolStatus)
Gets the pointer of requested HIP driver function.
hipError_t hipPointerGetAttributes(hipPointerAttribute_t *attributes, const void *ptr)
Returns attributes for the specified pointer.
hipError_t hipMallocPitch(void **ptr, size_t *pitch, size_t width, size_t height)
hipError_t hipMemcpyDtoD(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes)
Copy data from Device to Device.
hipError_t hipMemcpyToArray(hipArray_t dst, size_t wOffset, size_t hOffset, const void *src, size_t count, hipMemcpyKind kind)
Copies data between host and device.
hipError_t hipMallocArray(hipArray_t *array, const hipChannelFormatDesc *desc, size_t width, size_t height, unsigned int flags)
Allocate an array on the device.
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.
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.
hipError_t hipHostGetDevicePointer(void **devPtr, void *hstPtr, unsigned int flags)
Get Device pointer from Host Pointer allocated through hipHostMalloc.
hipError_t hipMemcpyDtoA(hipArray_t dstArray, size_t dstOffset, hipDeviceptr_t srcDevice, size_t ByteCount)
Copies from device memory to a 1D array.
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)
Copies data between host and device asynchronously.
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.
hipError_t hipMemcpy3DAsync(const struct hipMemcpy3DParms *p, hipStream_t stream)
Copies data between host and device asynchronously.
hipError_t hipArray3DCreate(hipArray_t *array, const HIP_ARRAY3D_DESCRIPTOR *pAllocateArray)
Create a 3D array memory pointer on the device.
hipError_t hipArrayGetInfo(hipChannelFormatDesc *desc, hipExtent *extent, unsigned int *flags, hipArray_t array)
Gets info about the specified array.
hipError_t hipDrvMemcpy3D(const HIP_MEMCPY3D *pCopy)
Copies data between host and device.
hipError_t hipMemcpyHtoD(hipDeviceptr_t dst, void *src, size_t sizeBytes)
Copy data from Host to Device.
hipError_t hipMemcpyParam2D(const hip_Memcpy2D *pCopy)
Copies memory for 2D arrays.
hipError_t hipMemcpyHtoA(hipArray_t dstArray, size_t dstOffset, const void *srcHost, size_t count)
Copies data between host and device.
hipError_t hipMemcpyToSymbolAsync(const void *symbol, const void *src, size_t sizeBytes, size_t offset, hipMemcpyKind kind, hipStream_t stream)
Copies data to the given symbol on the device asynchronously.
hipError_t hipHostMalloc(void **ptr, size_t size, unsigned int flags)
Allocates device accessible page locked (pinned) host memory.
hipError_t hipMemcpy2DToArrayAsync(hipArray_t dst, size_t wOffset, size_t hOffset, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream)
Copies data between host and device.
hipError_t hipHostRegister(void *hostPtr, size_t sizeBytes, unsigned int flags)
Register host memory so it can be accessed from the current device.
hipError_t hipMemcpyAtoH(void *dst, hipArray_t srcArray, size_t srcOffset, size_t count)
Copies data between host and device.
hipError_t hipMemcpyToSymbol(const void *symbol, const void *src, size_t sizeBytes, size_t offset, hipMemcpyKind kind)
Copies data to the given symbol on the device. Symbol HIP APIs allow a kernel to define a device-side...
hipError_t hipMemcpy(void *dst, const void *src, size_t sizeBytes, hipMemcpyKind kind)
Copy data from src to dst.
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...
hipError_t hipMemcpy2DToArray(hipArray_t 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.
hipError_t hipMemcpyParam2DAsync(const hip_Memcpy2D *pCopy, hipStream_t stream)
Copies memory for 2D arrays.
hipError_t hipDrvPointerGetAttributes(unsigned int numAttributes, hipPointer_attribute *attributes, void **data, hipDeviceptr_t ptr)
Returns information about the specified pointer.[BETA].
hipError_t hipMalloc3D(hipPitchedPtr *pitchedDevPtr, hipExtent extent)
Create a 3D memory pointer on the device.
hipError_t hipPointerSetAttribute(const void *value, hipPointer_attribute attribute, hipDeviceptr_t ptr)
Sets information on the specified pointer.[BETA].
hipError_t hipMemcpyDtoDAsync(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream)
Copy data from Device to Device asynchronously.
hipError_t hipMemAllocPitch(hipDeviceptr_t *dptr, size_t *pitch, size_t widthInBytes, size_t height, unsigned int elementSizeBytes)
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...
hipError_t hipMemcpyAsync(void *dst, const void *src, size_t sizeBytes, hipMemcpyKind kind, hipStream_t stream)
Copy data from src to dst asynchronously.
hipError_t hipMemcpyDtoHAsync(void *dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream)
Copy data from Device to Host asynchronously.
hipError_t hipFreeArray(hipArray_t array)
Frees an array on the device.
hipError_t hipMemsetD32Async(hipDeviceptr_t dst, int value, size_t count, hipStream_t stream)
Fills the memory area pointed to by dev with the constant integer value for specified number of times...
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.
hipError_t hipMemcpyHtoDAsync(hipDeviceptr_t dst, void *src, size_t sizeBytes, hipStream_t stream)
Copy data from Host to Device asynchronously.
hipError_t hipGetSymbolSize(size_t *size, const void *symbol)
Gets the size of the given symbol on the device.
hipError_t hipMemcpyDtoH(void *dst, hipDeviceptr_t src, size_t sizeBytes)
Copy data from Device to Host.
hipError_t hipMemsetAsync(void *dst, int value, size_t sizeBytes, hipStream_t stream)
Fills the first sizeBytes bytes of the memory area pointed to by dev with the constant byte value val...
hipError_t hipMemcpyWithStream(void *dst, const void *src, size_t sizeBytes, hipMemcpyKind kind, hipStream_t stream)
Memory copy on the stream. It allows single or multiple devices to do memory copy on single or multip...
hipError_t hipGetSymbolAddress(void **devPtr, const void *symbol)
Gets device pointer associated with symbol on the device.
hipError_t hipMemAllocHost(void **ptr, size_t size)
Allocate pinned host memory [Deprecated].
hipError_t hipPointerGetAttribute(void *data, hipPointer_attribute attribute, hipDeviceptr_t ptr)
Returns information about the specified pointer.[BETA].
hipError_t hipMemPtrGetInfo(void *ptr, size_t *size)
Get allocated memory size via memory pointer.
hipError_t hipArrayDestroy(hipArray_t array)
Destroy an array memory pointer on the device.
hipError_t hipMemPrefetchAsync(const void *dev_ptr, size_t count, int device, hipStream_t stream)
Prefetches memory to the specified destination device using HIP.
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.
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.
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.
hipError_t hipMallocManaged(void **dev_ptr, size_t size, unsigned int flags)
Allocates memory that will be automatically managed by HIP.
hipError_t hipStreamAttachMemAsync(hipStream_t stream, void *dev_ptr, size_t length, unsigned int flags)
Attach memory to a stream asynchronously in HIP.
hipError_t hipModuleLaunchCooperativeKernelMultiDevice(hipFunctionLaunchParams *launchParamsList, unsigned int numDevices, unsigned int flags)
Launches kernels on multiple devices where thread blocks can cooperate and synchronize as they execut...
hipError_t hipFuncGetAttributes(struct hipFuncAttributes *attr, const void *func)
Find out attributes for a given function.
hipError_t hipModuleGetTexRef(textureReference **texRef, hipModule_t hmod, const char *name)
returns the handle of the texture reference with the name from the module.
hipError_t hipExtLaunchMultiKernelMultiDevice(hipLaunchParams *launchParamsList, int numDevices, unsigned int flags)
Launches kernels on multiple devices and guarantees all specified kernels are dispatched on respectiv...
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...
hipError_t hipModuleLoad(hipModule_t *module, const char *fname)
Loads code object from file into a module the currrent context.
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....
hipError_t hipFuncGetAttribute(int *value, hipFunction_attribute attrib, hipFunction_t hfunc)
Find out a specific attribute for a given function.
hipError_t hipGetFuncBySymbol(hipFunction_t *functionPtr, const void *symbolPtr)
Gets pointer to device entry function that matches entry function symbolPtr.
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...
hipError_t hipModuleLaunchCooperativeKernel(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)
launches kernel f with launch parameters and shared memory on stream with arguments passed to kernelP...
hipError_t hipModuleGetFunction(hipFunction_t *function, hipModule_t module, const char *kname)
Function with kname will be extracted if present in module.
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...
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.
hipError_t hipModuleUnload(hipModule_t module)
Frees the module.
hipError_t hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags)
Returns occupancy for a device function.
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
hipError_t hipOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *f, int blockSize, size_t dynSharedMemPerBlk)
Returns occupancy for a device function.
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
hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk)
Returns occupancy for a device function.
hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags)
Returns occupancy for a device function.
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
hipError_t hipDeviceCanAccessPeer(int *canAccessPeer, int deviceId, int peerDeviceId)
Determine if a device can access a peer's memory.
hipError_t hipDeviceEnablePeerAccess(int peerDeviceId, unsigned int flags)
Enable direct access from current device's virtual address space to memory allocations physically loc...
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.
hipError_t hipMemcpyPeerAsync(void *dst, int dstDeviceId, const void *src, int srcDevice, size_t sizeBytes, hipStream_t stream)
Copies memory from one device to memory on another device.
hipError_t hipDeviceDisablePeerAccess(int peerDeviceId)
Disable direct access from current device's virtual address space to memory allocations physically lo...
hipError_t hipMemGetAddressRange(hipDeviceptr_t *pbase, size_t *psize, hipDeviceptr_t dptr)
Get information on memory allocations.
hipError_t hipProfilerStart()
Start recording of profiling information When using this API, start the profiler with profiling disab...
hipError_t hipProfilerStop()
Stop recording of profiling information. When using this API, start the profiler with profiling disab...
hipError_t hipDeviceGetStreamPriorityRange(int *leastPriority, int *greatestPriority)
Returns numerical values that correspond to the least and greatest stream priority.
hipError_t hipStreamDestroy(hipStream_t stream)
Destroys the specified stream.
hipError_t hipStreamGetFlags(hipStream_t stream, unsigned int *flags)
Return flags associated with this stream.
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...
void(* hipStreamCallback_t)(hipStream_t stream, hipError_t status, void *userData)
Definition: hip_runtime_api.h:2601
hipError_t hipStreamGetDevice(hipStream_t stream, hipDevice_t *device)
Get the device assocaited with the stream.
hipError_t hipStreamQuery(hipStream_t stream)
Return hipSuccess if all of the operations in the specified stream have completed,...
hipError_t hipStreamSynchronize(hipStream_t stream)
Wait for all commands in stream to complete.
hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags)
Make the specified compute stream wait for an event.
hipError_t hipStreamCreateWithPriority(hipStream_t *stream, unsigned int flags, int priority)
Create an asynchronous stream with the specified priority.
hipError_t hipExtStreamCreateWithCUMask(hipStream_t *stream, uint32_t cuMaskSize, const uint32_t *cuMask)
Create an asynchronous stream with the specified CU mask.
hipError_t hipStreamGetPriority(hipStream_t stream, int *priority)
Query the priority of a stream.
hipError_t hipExtStreamGetCUMask(hipStream_t stream, uint32_t cuMaskSize, uint32_t *cuMask)
Get CU mask associated with an asynchronous stream.
hipError_t hipStreamCreateWithFlags(hipStream_t *stream, unsigned int flags)
Create an asynchronous stream.
hipError_t hipStreamCreate(hipStream_t *stream)
Create an asynchronous stream.
hipError_t hipStreamWriteValue64(hipStream_t stream, void *ptr, uint64_t value, unsigned int flags)
Enqueues a write command to the stream.[BETA].
hipError_t hipStreamWriteValue32(hipStream_t stream, void *ptr, uint32_t value, unsigned int flags)
Enqueues a write command to the stream.[BETA].
hipError_t hipStreamWaitValue64(hipStream_t stream, void *ptr, uint64_t value, unsigned int flags, uint64_t mask)
Enqueues a wait command to the stream.[BETA].
hipError_t hipStreamWaitValue32(hipStream_t stream, void *ptr, uint32_t value, unsigned int flags, uint32_t mask)
Enqueues a wait command to the stream.[BETA].
hipError_t hipMemPoolImportPointer(void **dev_ptr, hipMemPool_t mem_pool, hipMemPoolPtrExportData *export_data)
Import a memory pool allocation from another process.
hipError_t hipMemPoolImportFromShareableHandle(hipMemPool_t *mem_pool, void *shared_handle, hipMemAllocationHandleType handle_type, unsigned int flags)
Imports a memory pool from a shared handle.
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.
hipError_t hipFreeAsync(void *dev_ptr, hipStream_t stream)
Frees memory with stream ordered semantics.
hipError_t hipMemPoolTrimTo(hipMemPool_t mem_pool, size_t min_bytes_to_hold)
Releases freed memory back to the OS.
hipError_t hipMemPoolCreate(hipMemPool_t *mem_pool, const hipMemPoolProps *pool_props)
Creates a memory pool.
hipError_t hipMemPoolSetAccess(hipMemPool_t mem_pool, const hipMemAccessDesc *desc_list, size_t count)
Controls visibility of the specified pool between devices.
hipError_t hipMemPoolDestroy(hipMemPool_t mem_pool)
Destroys the specified memory pool.
hipError_t hipMemPoolSetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void *value)
Sets attributes of a memory pool.
hipError_t hipMemPoolGetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void *value)
Gets attributes of a memory pool.
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.
hipError_t hipMemPoolExportPointer(hipMemPoolPtrExportData *export_data, void *dev_ptr)
Export data to share a memory pool allocation between processes.
hipError_t hipMallocAsync(void **dev_ptr, size_t size, hipStream_t stream)
Allocates memory with stream ordered semantics.
hipError_t hipMemPoolGetAccess(hipMemAccessFlags *flags, hipMemPool_t mem_pool, hipMemLocation *location)
Returns the accessibility of a pool from a device.
hipError_t hipDestroySurfaceObject(hipSurfaceObject_t surfaceObject)
Destroy a surface object.
hipError_t hipCreateSurfaceObject(hipSurfaceObject_t *pSurfObject, const hipResourceDesc *pResDesc)
Create a surface object.
hipError_t hipTexRefGetFilterMode(enum hipTextureFilterMode *pfm, const textureReference *texRef)
Gets filter mode for a texture reference.
hipError_t hipBindTextureToMipmappedArray(const textureReference *tex, hipMipmappedArray_const_t mipmappedArray, const hipChannelFormatDesc *desc)
Binds a mipmapped array to a texture.
hipError_t hipTexRefGetMipmapLevelClamp(float *pminMipmapLevelClamp, float *pmaxMipmapLevelClamp, const textureReference *texRef)
Gets the minimum and maximum mipmap level clamps for a texture reference.
hipError_t hipTexRefGetAddressMode(enum hipTextureAddressMode *pam, const textureReference *texRef, int dim)
Gets the address mode for a texture reference.
hipError_t hipTexRefGetFlags(unsigned int *pFlags, const textureReference *texRef)
Gets flags for a texture reference.
hipError_t hipTexRefSetAddress(size_t *ByteOffset, textureReference *texRef, hipDeviceptr_t dptr, size_t bytes)
Sets an bound address for a texture reference.
hipError_t hipTexRefSetFilterMode(textureReference *texRef, enum hipTextureFilterMode fm)
Set filter mode for a texture reference.
hipError_t hipTexRefSetMipmappedArray(textureReference *texRef, struct hipMipmappedArray *mipmappedArray, unsigned int Flags)
Binds mipmapped array to a texture reference.
hipError_t hipTexRefGetMipmapFilterMode(enum hipTextureFilterMode *pfm, const textureReference *texRef)
Gets the mipmap filter mode for a texture reference.
hipError_t hipGetTextureAlignmentOffset(size_t *offset, const textureReference *texref)
Get the offset of the alignment in a texture.
hipError_t hipBindTexture2D(size_t *offset, const textureReference *tex, const void *devPtr, const hipChannelFormatDesc *desc, size_t width, size_t height, size_t pitch)
Binds a 2D memory area to a texture.
hipError_t hipTexRefGetMaxAnisotropy(int *pmaxAnsio, const textureReference *texRef)
Gets the maximum anisotropy for a texture reference.
hipError_t hipBindTexture(size_t *offset, const textureReference *tex, const void *devPtr, const hipChannelFormatDesc *desc, size_t size)
Binds a memory area to a texture.
hipError_t hipUnbindTexture(const textureReference *tex)
Unbinds a texture.
hipError_t hipTexRefGetBorderColor(float *pBorderColor, const textureReference *texRef)
Gets the border color used by a texture reference.
hipError_t hipTexRefSetFormat(textureReference *texRef, hipArray_Format fmt, int NumPackedComponents)
Set format for a texture reference.
hipError_t hipTexRefGetAddress(hipDeviceptr_t *dev_ptr, const textureReference *texRef)
Gets the address for a texture reference.
hipError_t hipTexRefGetArray(hipArray_t *pArray, const textureReference *texRef)
Gets the array bound to a texture reference.
hipError_t hipTexRefSetFlags(textureReference *texRef, unsigned int Flags)
Set flags for a texture reference.
hipError_t hipTexRefSetAddressMode(textureReference *texRef, int dim, enum hipTextureAddressMode am)
Sets address mode for a texture reference.
hipError_t hipTexRefGetMipMappedArray(hipMipmappedArray_t *pArray, const textureReference *texRef)
Gets the mipmapped array bound to a texture reference.
hipError_t hipTexRefSetMaxAnisotropy(textureReference *texRef, unsigned int maxAniso)
Sets the maximum anisotropy for a texture reference.
hipError_t hipTexRefSetMipmapLevelClamp(textureReference *texRef, float minMipMapLevelClamp, float maxMipMapLevelClamp)
Sets mipmap level clamp for a texture reference.
hipError_t hipTexRefSetBorderColor(textureReference *texRef, float *pBorderColor)
Sets border color for a texture reference.
hipError_t hipTexRefSetArray(textureReference *tex, hipArray_const_t array, unsigned int flags)
Binds an array as a texture reference.
hipError_t hipTexRefSetMipmapLevelBias(textureReference *texRef, float bias)
Sets mipmap level bias for a texture reference.
hipError_t hipTexRefGetMipmapLevelBias(float *pbias, const textureReference *texRef)
Gets the mipmap level bias for a texture reference.
hipError_t hipBindTextureToArray(const textureReference *tex, hipArray_const_t array, const hipChannelFormatDesc *desc)
Binds a memory area to a texture.
hipError_t hipGetTextureReference(const textureReference **texref, const void *symbol)
Gets the texture reference related with the symbol.
hipError_t hipTexRefSetAddress2D(textureReference *texRef, const HIP_ARRAY_DESCRIPTOR *desc, hipDeviceptr_t dptr, size_t Pitch)
Set a bind an address as a 2D texture reference.
hipError_t hipTexRefSetMipmapFilterMode(textureReference *texRef, enum hipTextureFilterMode fm)
Sets mipmap filter mode for a texture reference.
hipError_t hipTexRefGetFormat(hipArray_Format *pFormat, int *pNumChannels, const textureReference *texRef)
Gets texture format for a texture reference.
hipError_t hipFreeMipmappedArray(hipMipmappedArray_t mipmappedArray)
Frees a mipmapped array on the device.
hipError_t hipGetMipmappedArrayLevel(hipArray_t *levelArray, hipMipmappedArray_const_t mipmappedArray, unsigned int level)
Gets a mipmap level of a HIP mipmapped array.
hipError_t hipMipmappedArrayGetLevel(hipArray_t *pLevelArray, hipMipmappedArray_t hMipMappedArray, unsigned int level)
Get a mipmapped array on a mipmapped level.
hipError_t hipMipmappedArrayDestroy(hipMipmappedArray_t hMipmappedArray)
Destroy a mipmapped array.
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.
hipError_t hipGetTextureObjectResourceDesc(hipResourceDesc *pResDesc, hipTextureObject_t textureObject)
Gets resource descriptor for the texture object.
hipError_t hipGetTextureObjectResourceViewDesc(struct hipResourceViewDesc *pResViewDesc, hipTextureObject_t textureObject)
Gets resource view descriptor for the texture object.
hipError_t hipTexObjectGetTextureDesc(HIP_TEXTURE_DESC *pTexDesc, hipTextureObject_t texObject)
Gets texture descriptor of a texture object.
hipError_t hipCreateTextureObject(hipTextureObject_t *pTexObject, const hipResourceDesc *pResDesc, const hipTextureDesc *pTexDesc, const struct hipResourceViewDesc *pResViewDesc)
Creates a texture object.
hipError_t hipTexObjectDestroy(hipTextureObject_t texObject)
Destroys a texture object.
hipError_t hipMipmappedArrayCreate(hipMipmappedArray_t *pHandle, HIP_ARRAY3D_DESCRIPTOR *pMipmappedArrayDesc, unsigned int numMipmapLevels)
Create a mipmapped array.
hipError_t hipGetChannelDesc(hipChannelFormatDesc *desc, hipArray_const_t array)
Gets the channel descriptor in an array.
hipError_t hipTexObjectGetResourceDesc(HIP_RESOURCE_DESC *pResDesc, hipTextureObject_t texObject)
Gets resource descriptor of a texture object.
hipError_t hipTexObjectGetResourceViewDesc(HIP_RESOURCE_VIEW_DESC *pResViewDesc, hipTextureObject_t texObject)
Gets resource view descriptor of a texture object.
hipError_t hipMallocMipmappedArray(hipMipmappedArray_t *mipmappedArray, const struct hipChannelFormatDesc *desc, struct hipExtent extent, unsigned int numLevels, unsigned int flags)
Allocate a mipmapped array on the device.
hipError_t hipDestroyTextureObject(hipTextureObject_t textureObject)
Destroys a texture object.
hipError_t hipGetTextureObjectTextureDesc(hipTextureDesc *pTexDesc, hipTextureObject_t textureObject)
Gets texture descriptor for the texture object.
hipError_t hipMemAddressFree(void *devPtr, size_t size)
Frees an address range reservation made via hipMemAddressReserve.
hipError_t hipMemExportToShareableHandle(void *shareableHandle, hipMemGenericAllocationHandle_t handle, hipMemAllocationHandleType handleType, unsigned long long flags)
Exports an allocation to a requested shareable handle type.
hipError_t hipMemGetAccess(unsigned long long *flags, const hipMemLocation *location, void *ptr)
Get the access flags set for the given location and ptr.
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.
hipError_t hipMemRelease(hipMemGenericAllocationHandle_t handle)
Release a memory handle representing a memory allocation which was previously allocated through hipMe...
hipError_t hipMemUnmap(void *ptr, size_t size)
Unmap memory allocation of a given address range.
hipError_t hipMemGetAllocationGranularity(size_t *granularity, const hipMemAllocationProp *prop, hipMemAllocationGranularity_flags option)
Calculates either the minimal or recommended granularity.
hipError_t hipMemRetainAllocationHandle(hipMemGenericAllocationHandle_t *handle, void *addr)
Returns the allocation handle of the backing memory allocation given the address.
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.
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.
hipError_t hipMemAddressReserve(void **ptr, size_t size, size_t alignment, void *addr, unsigned long long flags)
Reserves an address range.
hipError_t hipMemGetAllocationPropertiesFromHandle(hipMemAllocationProp *prop, hipMemGenericAllocationHandle_t handle)
Retrieve the property structure of the given handle.
hipError_t hipMemMapArrayAsync(hipArrayMapInfo *mapInfoList, unsigned int count, hipStream_t stream)
Maps or unmaps subregions of sparse HIP arrays and sparse HIP mipmapped arrays.
hipError_t hipMemImportFromShareableHandle(hipMemGenericAllocationHandle_t *handle, void *osHandle, hipMemAllocationHandleType shHandleType)
Imports an allocation from a requested shareable handle type.
hipErrorIllegalAddress
Definition: hip_runtime_api.h:347
hipErrorMemoryAllocation
Memory allocation error.
Definition: hip_runtime_api.h:293
hipErrorNotFound
Not found.
Definition: hip_runtime_api.h:342
hipErrorProfilerDisabled
Definition: hip_runtime_api.h:298
hipErrorInvalidDevicePointer
Invalid Device Pointer.
Definition: hip_runtime_api.h:305
hipErrorRuntimeMemory
Definition: hip_runtime_api.h:394
hipErrorInvalidImage
Invalid image.
Definition: hip_runtime_api.h:313
hipErrorPeerAccessUnsupported
Definition: hip_runtime_api.h:330
hipErrorArrayIsMapped
Definition: hip_runtime_api.h:320
hipErrorStreamCaptureIsolation
Definition: hip_runtime_api.h:375
hipErrorInvalidKernelFile
In CUDA DRV, it is CUDA_ERROR_INVALID_PTX.
Definition: hip_runtime_api.h:331
hipErrorNotMapped
Definition: hip_runtime_api.h:324
hipErrorGraphExecUpdateFailure
Definition: hip_runtime_api.h:388
hipErrorNotInitialized
Invalid not initialized.
Definition: hip_runtime_api.h:294
hipErrorInvalidResourceHandle
Resource handle (hipEvent_t or hipStream_t) invalid.
Definition: hip_runtime_api.h:340
hipErrorSharedObjectInitFailed
Failed to initialize shared object.
Definition: hip_runtime_api.h:336
hipErrorInvalidPitchValue
Invalid pitch value.
Definition: hip_runtime_api.h:303
hipErrorNoBinaryForGpu
Definition: hip_runtime_api.h:322
hipErrorInvalidContext
Produced when input context is invalid.
Definition: hip_runtime_api.h:314
hipErrorStreamCaptureUnsupported
Definition: hip_runtime_api.h:366
hipErrorPeerAccessNotEnabled
Peer access was never enabled from the current device.
Definition: hip_runtime_api.h:352
hipErrorOperatingSystem
Not the correct operating system.
Definition: hip_runtime_api.h:337
hipErrorStreamCaptureUnjoined
Definition: hip_runtime_api.h:373
hipErrorInitializationError
Definition: hip_runtime_api.h:296
hipErrorNotMappedAsPointer
Definition: hip_runtime_api.h:326
hipErrorPriorLaunchFailure
Definition: hip_runtime_api.h:309
hipErrorContextIsDestroyed
The context is already destroyed.
Definition: hip_runtime_api.h:354
hipErrorInvalidValue
Definition: hip_runtime_api.h:289
hipErrorLaunchTimeOut
Timeout for the launch.
Definition: hip_runtime_api.h:349
hipErrorUnmapFailed
Definition: hip_runtime_api.h:319
hipErrorSetOnActiveProcess
The process is active.
Definition: hip_runtime_api.h:353
hipErrorFileNotFound
the file is not found.
Definition: hip_runtime_api.h:334
hipErrorLaunchFailure
An exception occurred on the device while executing a kernel.
Definition: hip_runtime_api.h:360
hipErrorInvalidDevice
DeviceID must be in range from 0 to compute-devices.
Definition: hip_runtime_api.h:312
hipErrorUnsupportedLimit
Unsupported limit.
Definition: hip_runtime_api.h:328
hipErrorMapBufferObjectFailed
Produced when the IPC memory attach failed from ROCr.
Definition: hip_runtime_api.h:318
hipErrorHostMemoryAlreadyRegistered
Definition: hip_runtime_api.h:356
hipErrorMissingConfiguration
Definition: hip_runtime_api.h:308
hipErrorSharedObjectSymbolNotFound
Definition: hip_runtime_api.h:335
hipErrorECCNotCorrectable
Definition: hip_runtime_api.h:327
hipErrorStreamCaptureWrongThread
Definition: hip_runtime_api.h:384
hipErrorAssert
Produced when the kernel calls assert.
Definition: hip_runtime_api.h:355
hipErrorContextAlreadyInUse
The context is already in use.
Definition: hip_runtime_api.h:329
hipErrorNotReady
Definition: hip_runtime_api.h:343
hipErrorInvalidSource
Invalid source.
Definition: hip_runtime_api.h:333
hipErrorLaunchOutOfResources
Out of resources error.
Definition: hip_runtime_api.h:348
hipErrorInvalidDeviceFunction
Invalid device function.
Definition: hip_runtime_api.h:310
hipErrorCooperativeLaunchTooLarge
Definition: hip_runtime_api.h:361
hipErrorAlreadyMapped
Definition: hip_runtime_api.h:321
hipErrorProfilerNotInitialized
Definition: hip_runtime_api.h:299
hipErrorProfilerAlreadyStarted
Definition: hip_runtime_api.h:300
hipErrorNoDevice
Call to hipGetDeviceCount returned 0 devices.
Definition: hip_runtime_api.h:311
@ HIP_ERROR_LAUNCH_OUT_OF_RESOURCES
Definition: hip_runtime_api.h:41
@ HIP_ERROR_INVALID_VALUE
Definition: hip_runtime_api.h:39
@ HIP_SUCCESS
Definition: hip_runtime_api.h:38
@ HIP_ERROR_NOT_INITIALIZED
Definition: hip_runtime_api.h:40
hipErrorMapFailed
Definition: hip_runtime_api.h:316
hipErrorStreamCaptureInvalidated
Definition: hip_runtime_api.h:368
hipErrorProfilerAlreadyStopped
Definition: hip_runtime_api.h:301
hipErrorDeinitialized
Deinitialized.
Definition: hip_runtime_api.h:297
hipErrorPeerAccessAlreadyEnabled
Definition: hip_runtime_api.h:350
hipErrorNotMappedAsArray
Definition: hip_runtime_api.h:325
hipErrorNotSupported
Produced when the hip API is not supported/implemented.
Definition: hip_runtime_api.h:365
hipErrorInvalidConfiguration
Invalide configuration.
Definition: hip_runtime_api.h:302
hipErrorStreamCaptureImplicit
Definition: hip_runtime_api.h:379
hipErrorStreamCaptureMerge
Definition: hip_runtime_api.h:370
hipErrorInvalidGraphicsContext
Definition: hip_runtime_api.h:332
hipErrorIllegalState
Resource required is not in a valid state to perform operation.
Definition: hip_runtime_api.h:341
hipErrorOutOfMemory
out of memory range.
Definition: hip_runtime_api.h:291
hipErrorInvalidSymbol
Invalid symbol.
Definition: hip_runtime_api.h:304
hipSuccess
Successful completion.
Definition: hip_runtime_api.h:288
hipErrorUnknown
Unknown error.
Definition: hip_runtime_api.h:392
hipErrorInvalidHandle
Invalide handle.
Definition: hip_runtime_api.h:338
hipErrorStreamCaptureUnmatched
The capture was not initiated in this stream.
Definition: hip_runtime_api.h:372
hipErrorCapturedEvent
Definition: hip_runtime_api.h:382
hipErrorAlreadyAcquired
Definition: hip_runtime_api.h:323
hipErrorInsufficientDriver
Definition: hip_runtime_api.h:307
hipErrorHostMemoryNotRegistered
Definition: hip_runtime_api.h:358
hipErrorRuntimeOther
Definition: hip_runtime_api.h:396
hipErrorContextAlreadyCurrent
Definition: hip_runtime_api.h:315
hipErrorInvalidMemcpyDirection
Invalid memory copy direction.
Definition: hip_runtime_api.h:306
Definition: driver_types.h:76
Definition: driver_types.h:70
Definition: driver_types.h:369
Definition: hip_runtime_api.h:1335
size_t height
Number of rows.
Definition: hip_runtime_api.h:1341
size_t pitch
Destination device pointer pitch. Unused if height equals 1.
Definition: hip_runtime_api.h:1337
hipDeviceptr_t dst
Destination pointer on device.
Definition: hip_runtime_api.h:1336
unsigned int value
Value of memset to be set.
Definition: hip_runtime_api.h:1338
unsigned int elementSize
Element in bytes. Must be 1, 2, or 4.
Definition: hip_runtime_api.h:1339
size_t width
Width of a row.
Definition: hip_runtime_api.h:1340
Definition: driver_types.h:271
Definition: driver_types.h:317
Definition: driver_types.h:154
Definition: hip_runtime_api.h:1051
uint32_t y
y
Definition: hip_runtime_api.h:1053
uint32_t z
z
Definition: hip_runtime_api.h:1054
uint32_t x
x
Definition: hip_runtime_api.h:1052
Definition: driver_types.h:85
Definition: hip_runtime_api.h:1291
hipAccessProperty hitProp
Definition: hip_runtime_api.h:1293
hipAccessProperty missProp
Definition: hip_runtime_api.h:1295
float hitRatio
Definition: hip_runtime_api.h:1294
void * base_ptr
Definition: hip_runtime_api.h:1292
size_t num_bytes
Definition: hip_runtime_api.h:1296
Definition: hip_runtime_api.h:1528
unsigned int level
For mipmapped arrays must be a valid mipmap level. For arrays must be zero.
Definition: hip_runtime_api.h:1537
struct hipArrayMapInfo::@26::@28 sparseLevel
unsigned int flags
flags for future use, must be zero now.
Definition: hip_runtime_api.h:1559
union hipArrayMapInfo::@25 resource
hipArraySparseSubresourceType subresourceType
Sparse subresource type.
Definition: hip_runtime_api.h:1534
unsigned int extentDepth
Depth in elements.
Definition: hip_runtime_api.h:1544
unsigned int offsetX
X offset in elements.
Definition: hip_runtime_api.h:1539
hipArray_t array
Definition: hip_runtime_api.h:1532
hipResourceType resourceType
Resource type.
Definition: hip_runtime_api.h:1529
hipMemOperationType memOperationType
Memory operation type.
Definition: hip_runtime_api.h:1552
unsigned int reserved[2]
Reserved for future use, must be zero now.
Definition: hip_runtime_api.h:1560
unsigned int extentWidth
Width in elements.
Definition: hip_runtime_api.h:1542
union hipArrayMapInfo::@26 subresource
unsigned int extentHeight
Height in elements.
Definition: hip_runtime_api.h:1543
unsigned int offsetY
Y offset in elements.
Definition: hip_runtime_api.h:1540
hipMemHandleType memHandleType
Memory handle type.
Definition: hip_runtime_api.h:1553
struct hipArrayMapInfo::@26::@29 miptail
hipMemGenericAllocationHandle_t memHandle
Definition: hip_runtime_api.h:1555
hipMipmappedArray mipmap
Definition: hip_runtime_api.h:1531
unsigned int layer
For layered arrays must be a valid layer index. Otherwise, must be zero.
Definition: hip_runtime_api.h:1538
unsigned int deviceBitMask
Device ordinal bit mask.
Definition: hip_runtime_api.h:1558
unsigned long long size
Extent in bytes.
Definition: hip_runtime_api.h:1549
unsigned long long offset
Offset within mip tail.
Definition: hip_runtime_api.h:1548
unsigned int offsetZ
Z offset in elements.
Definition: hip_runtime_api.h:1541
Definition: driver_types.h:46
Definition: hip_runtime_api.h:1575
hipGraph_t graph
Definition: hip_runtime_api.h:1576
Definition: hip_runtime_api.h:53
unsigned hasSharedInt64Atomics
64-bit integer atomics for shared memory.
Definition: hip_runtime_api.h:63
unsigned hasSharedInt32Atomics
32-bit integer atomics for shared memory.
Definition: hip_runtime_api.h:57
unsigned hasFloatAtomicAdd
32-bit float atomic add in global and shared memory.
Definition: hip_runtime_api.h:59
unsigned hasDoubles
Double-precision floating point.
Definition: hip_runtime_api.h:66
unsigned hasWarpVote
Warp vote instructions (__any, __all).
Definition: hip_runtime_api.h:69
unsigned hasWarpShuffle
Warp shuffle operations. (__shfl_*).
Definition: hip_runtime_api.h:71
unsigned hasGlobalInt32Atomics
32-bit integer atomics for global memory.
Definition: hip_runtime_api.h:55
unsigned hasGlobalFloatAtomicExch
32-bit float atomic exch for global memory.
Definition: hip_runtime_api.h:56
unsigned hasDynamicParallelism
Dynamic parallelism.
Definition: hip_runtime_api.h:81
unsigned hasSurfaceFuncs
Surface functions.
Definition: hip_runtime_api.h:79
unsigned has3dGrid
Grid and group dims are 3D (rather than 2D).
Definition: hip_runtime_api.h:80
unsigned hasFunnelShift
Funnel two words into one with shift&mask caps.
Definition: hip_runtime_api.h:72
unsigned hasThreadFenceSystem
__threadfence_system.
Definition: hip_runtime_api.h:75
unsigned hasGlobalInt64Atomics
64-bit integer atomics for global memory.
Definition: hip_runtime_api.h:62
unsigned hasSyncThreadsExt
__syncthreads_count, syncthreads_and, syncthreads_or.
Definition: hip_runtime_api.h:76
unsigned hasWarpBallot
Warp ballot instructions (__ballot).
Definition: hip_runtime_api.h:70
unsigned hasSharedFloatAtomicExch
32-bit float atomic exch for shared memory.
Definition: hip_runtime_api.h:58
Definition: hip_runtime_api.h:99
int ECCEnabled
Device has ECC support enabled.
Definition: hip_runtime_api.h:153
int ipcEventSupported
Device supports IPC events.
Definition: hip_runtime_api.h:208
int computePreemptionSupported
Is compute preemption supported on the device.
Definition: hip_runtime_api.h:179
int maxTexture1DLinear
Maximum size for 1D textures bound to linear memory.
Definition: hip_runtime_api.h:132
int timelineSemaphoreInteropSupported
Indicates external timeline semaphore support.
Definition: hip_runtime_api.h:198
int pciBusID
PCI Bus ID.
Definition: hip_runtime_api.h:154
int maxTexture1D
Maximum number of elements in 1D images.
Definition: hip_runtime_api.h:130
int memoryBusWidth
Global memory bus width in bits.
Definition: hip_runtime_api.h:161
int maxTexture2DMipmap[2]
Maximum number of elements in 2D array mipmap of images.
Definition: hip_runtime_api.h:134
int clockRate
Max clock frequency of the multiProcessors in khz.
Definition: hip_runtime_api.h:113
int maxThreadsPerMultiProcessor
Maximum resident threads per multi-processor.
Definition: hip_runtime_api.h:164
int l2CacheSize
L2 cache size.
Definition: hip_runtime_api.h:162
int deferredMappingHipArraySupported
Definition: hip_runtime_api.h:206
int asyncEngineCount
Number of async engines.
Definition: hip_runtime_api.h:158
int accessPolicyMaxWindowSize
Max value of access policy window.
Definition: hip_runtime_api.h:192
size_t totalConstMem
Definition: hip_runtime_api.h:114
int memoryPoolsSupported
Indicates if device supports hipMallocAsync and hipMemPool APIs.
Definition: hip_runtime_api.h:199
int unifiedFunctionPointers
Indicates device supports unified function pointers.
Definition: hip_runtime_api.h:210
int maxTexture2DGather[2]
Maximum 2D tex dimensions if gather has to be performed.
Definition: hip_runtime_api.h:136
size_t memPitch
Definition: hip_runtime_api.h:108
int gpuDirectRDMAWritesOrdering
value of hipGPUDirectRDMAWritesOrdering
Definition: hip_runtime_api.h:203
hipUUID uuid
UUID of a device.
Definition: hip_runtime_api.h:101
size_t sharedMemPerBlock
Size of shared memory per block (in bytes).
Definition: hip_runtime_api.h:105
unsigned int gpuDirectRDMAFlushWritesOptions
Definition: hip_runtime_api.h:201
size_t surfaceAlignment
Alignment requirement for surface.
Definition: hip_runtime_api.h:151
int reserved[63]
CUDA Reserved.
Definition: hip_runtime_api.h:211
int maxTexture2DLayered[3]
Maximum number of elements in 2D array images.
Definition: hip_runtime_api.h:142
int streamPrioritiesSupported
Device supports stream priority.
Definition: hip_runtime_api.h:165
int cooperativeMultiDeviceLaunch
Definition: hip_runtime_api.h:183
int hostRegisterSupported
Device supports hipHostRegister.
Definition: hip_runtime_api.h:194
int pageableMemoryAccess
Definition: hip_runtime_api.h:175
char name[256]
Device name.
Definition: hip_runtime_api.h:100
size_t textureAlignment
Alignment requirement for textures.
Definition: hip_runtime_api.h:122
int globalL1CacheSupported
Indicates globals are cached in L1.
Definition: hip_runtime_api.h:166
int hostNativeAtomicSupported
Link between host and device supports native atomics.
Definition: hip_runtime_api.h:173
int maxSurfaceCubemapLayered[2]
Maximum cubemap layered surface size.
Definition: hip_runtime_api.h:150
int maxTextureCubemapLayered[2]
Maximum cubemaps layered texture dims.
Definition: hip_runtime_api.h:143
size_t sharedMemPerBlockOptin
Per device m ax shared mem per block usable by special opt in.
Definition: hip_runtime_api.h:186
size_t sharedMemPerMultiprocessor
Amount of shared memory available per multiprocessor.
Definition: hip_runtime_api.h:168
int singleToDoublePrecisionPerfRatio
Deprecated. CUDA only.
Definition: hip_runtime_api.h:174
int maxSurface2D[2]
Maximum 2D surface size.
Definition: hip_runtime_api.h:145
int memoryClockRate
Max global memory clock frequency in khz.
Definition: hip_runtime_api.h:160
int maxTexture2DLinear[3]
Maximum 2D tex dimensions if tex are bound to pitched memory.
Definition: hip_runtime_api.h:135
int sparseHipArraySupported
Indicates if device supports sparse hip arrays.
Definition: hip_runtime_api.h:195
int clockInstructionRate
Definition: hip_runtime_api.h:218
int localL1CacheSupported
Locals are cahced in L1.
Definition: hip_runtime_api.h:167
int regsPerMultiprocessor
registers available per multiprocessor
Definition: hip_runtime_api.h:169
int regsPerBlock
Registers per block.
Definition: hip_runtime_api.h:106
int maxTexture2D[2]
Maximum dimensions (width, height) of 2D images, in image elements.
Definition: hip_runtime_api.h:133
int cooperativeLaunch
HIP device supports cooperative launch.
Definition: hip_runtime_api.h:182
int maxTexture3D[3]
Definition: hip_runtime_api.h:137
int directManagedMemAccessFromHost
Definition: hip_runtime_api.h:189
int cooperativeMultiDeviceUnmatchedFunc
Definition: hip_runtime_api.h:223
int deviceOverlap
Deprecated. Use asyncEngineCount instead.
Definition: hip_runtime_api.h:124
int pageableMemoryAccessUsesHostPageTables
Definition: hip_runtime_api.h:187
unsigned int * hdpRegFlushCntl
Addres of HDP_REG_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:222
int maxThreadsDim[3]
Max number of threads in each dimension (XYZ) of a block.
Definition: hip_runtime_api.h:111
int unifiedAddressing
Does device and host share unified address space.
Definition: hip_runtime_api.h:159
int multiGpuBoardGroupID
Unique identifier for a group of devices on same multiboard GPU.
Definition: hip_runtime_api.h:172
int isMultiGpuBoard
1 if device is on a multi-GPU board, 0 if not.
Definition: hip_runtime_api.h:171
int canUseHostPointerForRegisteredMem
Definition: hip_runtime_api.h:180
int maxTexture1DLayered[2]
Maximum number of elements in 1D array images.
Definition: hip_runtime_api.h:141
int pciDomainID
PCI Domain ID.
Definition: hip_runtime_api.h:156
size_t maxSharedMemoryPerMultiProcessor
Maximum Shared Memory Per CU. HIP Only.
Definition: hip_runtime_api.h:217
int maxTextureCubemap
Maximum cubemap texture dims.
Definition: hip_runtime_api.h:140
int hipReserved[32]
Reserved for adding new entries for HIP/CUDA.
Definition: hip_runtime_api.h:213
int cooperativeMultiDeviceUnmatchedGridDim
Definition: hip_runtime_api.h:226
int gpuDirectRDMASupported
Indicates device support of RDMA APIs.
Definition: hip_runtime_api.h:200
int minor
Definition: hip_runtime_api.h:119
char gcnArchName[256]
AMD GCN Arch Name. HIP Only.
Definition: hip_runtime_api.h:216
char luid[8]
8-byte unique identifier. Only valid on windows
Definition: hip_runtime_api.h:102
int kernelExecTimeoutEnabled
Run time limit for kernels executed on the device.
Definition: hip_runtime_api.h:126
unsigned int memoryPoolSupportedHandleTypes
Bitmask of handle types support with mempool based IPC.
Definition: hip_runtime_api.h:205
unsigned int * hdpMemFlushCntl
Addres of HDP_MEM_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:221
int concurrentManagedAccess
Definition: hip_runtime_api.h:177
int integrated
APU vs dGPU.
Definition: hip_runtime_api.h:127
int canMapHostMemory
Check whether HIP can map host memory.
Definition: hip_runtime_api.h:128
size_t reservedSharedMemPerBlock
Shared memory reserved by driver per block.
Definition: hip_runtime_api.h:193
int maxSurfaceCubemap
Maximum cubemap surface size.
Definition: hip_runtime_api.h:149
int maxSurface3D[3]
Maximum 3D surface size.
Definition: hip_runtime_api.h:146
int asicRevision
Revision of the GPU in this device.
Definition: hip_runtime_api.h:236
size_t totalGlobalMem
Size of global memory region (in bytes).
Definition: hip_runtime_api.h:104
int cooperativeMultiDeviceUnmatchedBlockDim
Definition: hip_runtime_api.h:229
int maxSurface1DLayered[2]
Maximum 1D layered surface size.
Definition: hip_runtime_api.h:147
int persistingL2CacheMaxSize
Device's max L2 persisting lines in bytes.
Definition: hip_runtime_api.h:163
int maxSurface1D
Maximum 1D surface size.
Definition: hip_runtime_api.h:144
int concurrentKernels
Device can possibly execute multiple kernels concurrently.
Definition: hip_runtime_api.h:152
int isLargeBar
1: if it is a large PCI bar device, else 0
Definition: hip_runtime_api.h:235
int clusterLaunch
Device supports cluster launch.
Definition: hip_runtime_api.h:209
int maxTexture1DMipmap
Maximum 1D mipmap texture size.
Definition: hip_runtime_api.h:131
int multiProcessorCount
Number of multi-processors (compute units).
Definition: hip_runtime_api.h:125
int maxTexture3DAlt[3]
Maximum alternate 3D texture dims.
Definition: hip_runtime_api.h:139
int maxGridSize[3]
Max grid dimensions (XYZ).
Definition: hip_runtime_api.h:112
int pciDeviceID
PCI Device ID.
Definition: hip_runtime_api.h:155
int maxBlocksPerMultiProcessor
Max number of blocks on CU.
Definition: hip_runtime_api.h:191
int computeMode
Compute mode.
Definition: hip_runtime_api.h:129
int maxSurface2DLayered[3]
Maximum 2D layared surface size.
Definition: hip_runtime_api.h:148
int major
Definition: hip_runtime_api.h:116
int warpSize
Warp size.
Definition: hip_runtime_api.h:107
int tccDriver
1:If device is Tesla device using TCC driver, else 0
Definition: hip_runtime_api.h:157
unsigned int luidDeviceNodeMask
LUID node mask.
Definition: hip_runtime_api.h:103
int hostRegisterReadOnlySupported
Definition: hip_runtime_api.h:196
int cooperativeMultiDeviceUnmatchedSharedMem
Definition: hip_runtime_api.h:232
int maxThreadsPerBlock
Max work items per work group or workgroup max size.
Definition: hip_runtime_api.h:110
hipDeviceArch_t arch
Architectural feature flags. New for HIP.
Definition: hip_runtime_api.h:220
int managedMemory
Device supports allocating managed memory on this system.
Definition: hip_runtime_api.h:170
size_t texturePitchAlignment
Pitch alignment requirement for texture references bound to.
Definition: hip_runtime_api.h:123
Definition: hip_runtime_api.h:1590
hipEvent_t event
The event to be recorded when node executes.
Definition: hip_runtime_api.h:1591
Definition: hip_runtime_api.h:1583
hipEvent_t event
Event to wait on.
Definition: hip_runtime_api.h:1584
Definition: driver_types.h:348
Definition: hip_runtime_api.h:1109
unsigned int flags
Definition: hip_runtime_api.h:1112
unsigned long long offset
Definition: hip_runtime_api.h:1110
unsigned long long size
Definition: hip_runtime_api.h:1111
Definition: hip_runtime_api.h:1095
unsigned int flags
Definition: hip_runtime_api.h:1106
const void * name
Definition: hip_runtime_api.h:1101
int fd
Definition: hip_runtime_api.h:1098
unsigned long long size
Definition: hip_runtime_api.h:1105
hipExternalMemoryHandleType type
Definition: hip_runtime_api.h:1096
const void * nvSciBufObject
Definition: hip_runtime_api.h:1103
void * handle
Definition: hip_runtime_api.h:1100
Definition: hip_runtime_api.h:1115
hipExtent extent
Definition: hip_runtime_api.h:1118
unsigned int numLevels
Definition: hip_runtime_api.h:1120
unsigned int flags
Definition: hip_runtime_api.h:1119
unsigned long long offset
Definition: hip_runtime_api.h:1116
hipChannelFormatDesc formatDesc
Definition: hip_runtime_api.h:1117
Definition: hip_runtime_api.h:1135
unsigned int flags
Definition: hip_runtime_api.h:1145
const void * name
Definition: hip_runtime_api.h:1141
const void * NvSciSyncObj
Definition: hip_runtime_api.h:1143
hipExternalSemaphoreHandleType type
Definition: hip_runtime_api.h:1136
void * handle
Definition: hip_runtime_api.h:1140
int fd
Definition: hip_runtime_api.h:1138
Definition: hip_runtime_api.h:1468
const hipExternalSemaphoreSignalParams * paramsArray
Total number of handles and parameters contained in extSemArray and paramsArray.
Definition: hip_runtime_api.h:1472
hipExternalSemaphore_t * extSemArray
< Array containing external semaphore handles.
Definition: hip_runtime_api.h:1470
unsigned int numExtSems
Definition: hip_runtime_api.h:1474
Definition: hip_runtime_api.h:1149
unsigned long long reserved
Definition: hip_runtime_api.h:1156
unsigned long long value
Definition: hip_runtime_api.h:1152
void * fence
Definition: hip_runtime_api.h:1155
unsigned int flags
Definition: hip_runtime_api.h:1163
unsigned long long key
Definition: hip_runtime_api.h:1159
Definition: hip_runtime_api.h:1480
unsigned int numExtSems
Definition: hip_runtime_api.h:1486
const hipExternalSemaphoreWaitParams * paramsArray
Total number of handles and parameters contained in extSemArray and paramsArray.
Definition: hip_runtime_api.h:1484
hipExternalSemaphore_t * extSemArray
< Array containing external semaphore handles.
Definition: hip_runtime_api.h:1482
Definition: hip_runtime_api.h:1169
unsigned long long value
Definition: hip_runtime_api.h:1172
void * fence
Definition: hip_runtime_api.h:1175
unsigned int timeoutMs
Definition: hip_runtime_api.h:1180
unsigned long long key
Definition: hip_runtime_api.h:1179
unsigned int flags
Definition: hip_runtime_api.h:1184
unsigned long long reserved
Definition: hip_runtime_api.h:1176
Definition: hip_runtime_api.h:631
int cacheModeCA
Definition: hip_runtime_api.h:633
int binaryVersion
Definition: hip_runtime_api.h:632
size_t constSizeBytes
Definition: hip_runtime_api.h:634
int preferredShmemCarveout
Definition: hip_runtime_api.h:639
size_t sharedSizeBytes
Definition: hip_runtime_api.h:641
int maxDynamicSharedSizeBytes
Definition: hip_runtime_api.h:636
int ptxVersion
Definition: hip_runtime_api.h:640
int numRegs
Definition: hip_runtime_api.h:638
size_t localSizeBytes
Definition: hip_runtime_api.h:635
int maxThreadsPerBlock
Definition: hip_runtime_api.h:637
Definition: hip_runtime_api.h:1073
unsigned int gridDimX
Width(X) of grid in blocks.
Definition: hip_runtime_api.h:1075
unsigned int blockDimX
X dimension of each thread block.
Definition: hip_runtime_api.h:1078
hipStream_t hStream
Stream identifier.
Definition: hip_runtime_api.h:1082
unsigned int blockDimY
Y dimension of each thread block.
Definition: hip_runtime_api.h:1079
unsigned int gridDimY
Height(Y) of grid in blocks.
Definition: hip_runtime_api.h:1076
unsigned int gridDimZ
Depth(Z) of grid in blocks.
Definition: hip_runtime_api.h:1077
unsigned int sharedMemBytes
Shared memory.
Definition: hip_runtime_api.h:1081
unsigned int blockDimZ
Z dimension of each thread block.
Definition: hip_runtime_api.h:1080
void ** kernelParams
Kernel parameters.
Definition: hip_runtime_api.h:1083
Definition: hip_runtime_api.h:1647
unsigned char to_port
Currently no node types define non-zero ports. This field must be set to zero.
Definition: hip_runtime_api.h:1658
unsigned char reserved[5]
These bytes are unused and must be zeroed.
Definition: hip_runtime_api.h:1656
unsigned char type
This should be populated with a value from hipGraphDependencyType.
Definition: hip_runtime_api.h:1659
unsigned char from_port
Definition: hip_runtime_api.h:1649
Definition: hip_runtime_api.h:1441
hipGraphInstantiateResult result_out
Definition: hip_runtime_api.h:1444
hipStream_t uploadStream
Definition: hip_runtime_api.h:1446
hipGraphNode_t errNode_out
Definition: hip_runtime_api.h:1442
unsigned long long flags
Definition: hip_runtime_api.h:1443
Definition: hip_runtime_api.h:1604
hipGraphNodeType type
Definition: hip_runtime_api.h:1605
int reserved0[3]
Definition: hip_runtime_api.h:1606
hipMemAllocNodeParams alloc
Definition: hip_runtime_api.h:1618
long long reserved1[29]
Definition: hip_runtime_api.h:1608
hipEventRecordNodeParams eventRecord
Definition: hip_runtime_api.h:1615
hipExternalSemaphoreSignalNodeParams extSemSignal
Definition: hip_runtime_api.h:1616
hipMemFreeNodeParams free
Definition: hip_runtime_api.h:1619
hipChildGraphNodeParams graph
Definition: hip_runtime_api.h:1613
hipExternalSemaphoreWaitNodeParams extSemWait
Definition: hip_runtime_api.h:1617
hipMemsetParams memset
Definition: hip_runtime_api.h:1611
hipHostNodeParams host
Definition: hip_runtime_api.h:1612
long long reserved2
Definition: hip_runtime_api.h:1622
hipKernelNodeParams kernel
Definition: hip_runtime_api.h:1609
hipEventWaitNodeParams eventWait
Definition: hip_runtime_api.h:1614
hipMemcpyNodeParams memcpy
Definition: hip_runtime_api.h:1610
Definition: hip_runtime_api.h:1254
hipHostFn_t fn
Definition: hip_runtime_api.h:1255
void * userData
Definition: hip_runtime_api.h:1256
Definition: hip_runtime_api.h:621
Definition: hip_runtime_api.h:618
Definition: hip_runtime_api.h:1258
dim3 gridDim
Definition: hip_runtime_api.h:1262
unsigned int sharedMemBytes
Definition: hip_runtime_api.h:1264
dim3 blockDim
Definition: hip_runtime_api.h:1259
void ** kernelParams
Definition: hip_runtime_api.h:1263
void ** extra
Definition: hip_runtime_api.h:1260
void * func
Definition: hip_runtime_api.h:1261
Definition: hip_runtime_api.h:1062
size_t sharedMem
Shared memory.
Definition: hip_runtime_api.h:1067
void ** args
Arguments.
Definition: hip_runtime_api.h:1066
dim3 blockDim
Block dimentions.
Definition: hip_runtime_api.h:1065
dim3 gridDim
Grid dimentions.
Definition: hip_runtime_api.h:1064
void * func
Device function symbol.
Definition: hip_runtime_api.h:1063
hipStream_t stream
Stream identifier.
Definition: hip_runtime_api.h:1068
Definition: hip_runtime_api.h:952
hipMemAccessFlags flags
Accessibility flags to set.
Definition: hip_runtime_api.h:954
hipMemLocation location
Location on which the accessibility has to change.
Definition: hip_runtime_api.h:953
Definition: hip_runtime_api.h:1275
const hipMemAccessDesc * accessDescs
Definition: hip_runtime_api.h:1278
size_t bytesize
The size of the requested allocation in bytes.
Definition: hip_runtime_api.h:1281
hipMemPoolProps poolProps
Definition: hip_runtime_api.h:1276
size_t accessDescCount
The number of access descriptors.
Definition: hip_runtime_api.h:1280
void * dptr
Returned device address of the allocation.
Definition: hip_runtime_api.h:1282
Definition: hip_runtime_api.h:1453
void * win32HandleMetaData
Metadata for Win32 handles.
Definition: hip_runtime_api.h:1457
hipMemAllocationType type
Memory allocation type.
Definition: hip_runtime_api.h:1454
unsigned char gpuDirectRDMACapable
RDMA capable.
Definition: hip_runtime_api.h:1460
struct hipMemAllocationProp::@24 allocFlags
unsigned short usage
Usage.
Definition: hip_runtime_api.h:1461
hipMemAllocationHandleType requestedHandleType
Requested handle type.
Definition: hip_runtime_api.h:1455
hipMemLocation location
Memory location.
Definition: hip_runtime_api.h:1456
unsigned char compressionType
Compression type.
Definition: hip_runtime_api.h:1459
Definition: hip_runtime_api.h:1597
void * dptr
the pointer to be freed
Definition: hip_runtime_api.h:1598
Definition: hip_runtime_api.h:936
int id
Identifier for the provided location type hipMemLocationType.
Definition: hip_runtime_api.h:938
hipMemLocationType type
Specifies the location type, which describes the meaning of id.
Definition: hip_runtime_api.h:937
Definition: hip_runtime_api.h:980
size_t maxSize
Maximum pool size. When set to 0, defaults to a system dependent value.
Definition: hip_runtime_api.h:988
unsigned char reserved[56]
Reserved for future use, must be 0.
Definition: hip_runtime_api.h:989
hipMemLocation location
Location where allocations should reside.
Definition: hip_runtime_api.h:983
hipMemAllocationHandleType handleTypes
Handle types that will be supported by allocations from the pool.
Definition: hip_runtime_api.h:982
hipMemAllocationType allocType
Allocation type. Currently must be specified as hipMemAllocationTypePinned.
Definition: hip_runtime_api.h:981
void * win32SecurityAttributes
Definition: hip_runtime_api.h:987
Definition: hip_runtime_api.h:994
unsigned char reserved[64]
Definition: hip_runtime_api.h:995
Definition: driver_types.h:359
Definition: hip_runtime_api.h:1566
int reserved[3]
Must be zero.
Definition: hip_runtime_api.h:1568
int flags
Must be zero.
Definition: hip_runtime_api.h:1567
hipMemcpy3DParms copyParams
Params set for the memory copy.
Definition: hip_runtime_api.h:1569
Definition: hip_runtime_api.h:1266
void * dst
Definition: hip_runtime_api.h:1267
unsigned int value
Definition: hip_runtime_api.h:1271
unsigned int elementSize
Definition: hip_runtime_api.h:1268
size_t width
Definition: hip_runtime_api.h:1272
size_t pitch
Definition: hip_runtime_api.h:1270
size_t height
Definition: hip_runtime_api.h:1269
Definition: driver_types.h:104
Definition: driver_types.h:342
Definition: hip_runtime_api.h:262
int device
Definition: hip_runtime_api.h:264
void * hostPointer
Definition: hip_runtime_api.h:266
enum hipMemoryType type
Definition: hip_runtime_api.h:263
int isManaged
Definition: hip_runtime_api.h:267
void * devicePointer
Definition: hip_runtime_api.h:265
unsigned allocationFlags
Definition: hip_runtime_api.h:268
Definition: driver_types.h:247
Definition: driver_types.h:303
Definition: texture_types.h:117
Definition: hip_runtime_api.h:84
Definition: texture_types.h:96
Defines surface types for HIP runtime.
struct __hip_surface * hipSurfaceObject_t
Definition: surface_types.h:41
struct __hip_texture * hipTextureObject_t
Definition: texture_types.h:71
hipTextureAddressMode
Definition: texture_types.h:76
hipTextureFilterMode
Definition: texture_types.h:86
Definition: hip_runtime_api.h:1311
int priority
Definition: hip_runtime_api.h:1315
int cooperative
Definition: hip_runtime_api.h:1314
hipAccessPolicyWindow accessPolicyWindow
Definition: hip_runtime_api.h:1312