include/hip/hip_runtime_api.h Source File

include/hip/hip_runtime_api.h Source File#

HIP Runtime API Reference: 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 
31 #ifndef HIP_INCLUDE_HIP_HIP_RUNTIME_API_H
32 #define HIP_INCLUDE_HIP_HIP_RUNTIME_API_H
33 
34 #if __cplusplus
35 #include <climits>
36 #include <cstdint>
37 #include <cstdlib>
38 #include <utility>
39 #else
40 #include <limits.h>
41 #include <stdint.h>
42 #include <stdlib.h>
43 #endif
44 
45 #include <hip/hip_version.h>
46 #include <hip/hip_common.h>
47 #include <hip/linker_types.h>
48 
49 enum {
54 };
55 // hack to get these to show up in Doxygen:
65 typedef struct {
66  // 32-bit Atomics
67  unsigned hasGlobalInt32Atomics : 1;
68  unsigned hasGlobalFloatAtomicExch : 1;
69  unsigned hasSharedInt32Atomics : 1;
70  unsigned hasSharedFloatAtomicExch : 1;
71  unsigned hasFloatAtomicAdd : 1;
72 
73  // 64-bit Atomics
74  unsigned hasGlobalInt64Atomics : 1;
75  unsigned hasSharedInt64Atomics : 1;
76 
77  // Doubles
78  unsigned hasDoubles : 1;
79 
80  // Warp cross-lane operations
81  unsigned hasWarpVote : 1;
82  unsigned hasWarpBallot : 1;
83  unsigned hasWarpShuffle : 1;
84  unsigned hasFunnelShift : 1;
85 
86  // Sync
87  unsigned hasThreadFenceSystem : 1;
88  unsigned hasSyncThreadsExt : 1;
89 
90  // Misc
91  unsigned hasSurfaceFuncs : 1;
92  unsigned has3dGrid : 1;
93  unsigned hasDynamicParallelism : 1;
95 
96 typedef struct hipUUID_t {
97  char bytes[16];
98 } hipUUID;
99 
100 //---
101 // Common headers for both NVCC and HIP-Clang paths:
102 
103 #define hipGetDeviceProperties hipGetDevicePropertiesR0600
104 #define hipDeviceProp_t hipDeviceProp_tR0600
105 #define hipChooseDevice hipChooseDeviceR0600
106 
111 typedef struct hipDeviceProp_t {
112  char name[256];
114  char luid[8];
115  unsigned int luidDeviceNodeMask;
116  size_t totalGlobalMem;
119  int warpSize;
120  size_t memPitch;
123  int maxThreadsDim[3];
124  int maxGridSize[3];
125  int clockRate;
126  size_t totalConstMem;
128  int major;
132  int minor;
151  int maxTexture2D[2];
155  int maxTexture3D[3];
163  int maxSurface2D[2];
164  int maxSurface3D[3];
172  int pciBusID;
175  int tccDriver;
221  unsigned int
228  int reserved[63];
229 
230  int hipReserved[32];
231 
232  /* HIP Only struct members */
233  char gcnArchName[256];
238  unsigned int* hdpMemFlushCntl;
239  unsigned int* hdpRegFlushCntl;
255 
263 typedef enum hipMemoryType {
266  hipMemoryTypeDevice = 2,
271  hipMemoryTypeArray = 10,
274 
276 
280 typedef struct hipPointerAttribute_t {
281  enum hipMemoryType type;
282  int device;
284  void* hostPointer;
286  unsigned allocationFlags; /* flags specified when memory was allocated*/
287  /* peers? */
289 
290 // Ignoring error-code return values from hip APIs is discouraged. On C++17,
291 // we can make that yield a warning
292 #if __cplusplus >= 201703L
293 #define __HIP_NODISCARD [[nodiscard]]
294 #else
295 #define __HIP_NODISCARD
296 #endif
297 
302 // Developer note - when updating these, update the hipErrorName and hipErrorString functions in
303 // NVCC and HIP-Clang paths Also update the hipCUDAErrorTohipError function in NVCC path.
304 
310  // Deprecated
313  // Deprecated
335  // Deprecated
357  // Deprecated
413  // HSA Runtime Error Codes start here.
418  hipErrorTbd
419 } hipError_t;
420 
421 #undef __HIP_NODISCARD
422 
427 typedef enum hipDeviceAttribute_t {
429 
562 
565 
601 
604  // Extended attributes for vendors
606 
612 
618 };
619 
623 };
624 
629 };
630 
631 #if defined(__HIP_PLATFORM_AMD__) && !defined(__HIP_PLATFORM_NVIDIA__)
632 
633 #ifndef GENERIC_GRID_LAUNCH
634 #define GENERIC_GRID_LAUNCH 1
635 #endif
636 #include <hip/amd_detail/host_defines.h>
637 #include <hip/driver_types.h>
638 #include <hip/texture_types.h>
639 #include <hip/surface_types.h>
640 #if defined(_MSC_VER)
641 #define HIP_DEPRECATED(msg) __declspec(deprecated(msg))
642 #else // !defined(_MSC_VER)
643 #define HIP_DEPRECATED(msg) __attribute__((deprecated(msg)))
644 #endif // !defined(_MSC_VER)
645 #define HIP_DEPRECATED_MSG \
646  "This API is marked as deprecated and might not be supported in future releases. For more " \
647  "details please refer " \
648  "https://github.com/ROCm/HIP/blob/develop/docs/reference/deprecated_api_list.md"
649 #define HIP_LAUNCH_PARAM_BUFFER_POINTER ((void*)0x01)
650 #define HIP_LAUNCH_PARAM_BUFFER_SIZE ((void*)0x02)
651 #define HIP_LAUNCH_PARAM_END ((void*)0x03)
652 #ifdef __cplusplus
653 #define __dparm(x) = x
654 #else
655 #define __dparm(x)
656 #endif
657 #ifdef __GNUC__
658 #pragma GCC visibility push(default)
659 #endif
660 #ifdef __cplusplus
661 namespace hip_impl {
663 } // namespace hip_impl
664 #endif
665 // Structure definitions:
666 #ifdef __cplusplus
667 extern "C" {
668 #endif
669 //---
670 // API-visible structures
671 typedef struct ihipCtx_t* hipCtx_t;
672 // Note many APIs also use integer deviceIds as an alternative to the device pointer:
673 typedef int hipDevice_t;
674 typedef enum hipDeviceP2PAttr {
685 typedef struct ihipStream_t* hipStream_t;
686 #define hipIpcMemLazyEnablePeerAccess 0x01
687 #define HIP_IPC_HANDLE_SIZE 64
688 typedef struct hipIpcMemHandle_st {
689  char reserved[HIP_IPC_HANDLE_SIZE];
691 typedef struct hipIpcEventHandle_st {
692  char reserved[HIP_IPC_HANDLE_SIZE];
694 typedef struct ihipModule_t* hipModule_t;
695 typedef struct ihipModuleSymbol_t* hipFunction_t;
696 typedef struct ihipLinkState_t* hipLinkState_t;
697 typedef struct ihipLibrary_t* hipLibrary_t;
698 typedef struct ihipKernel_t* hipKernel_t;
702 typedef struct ihipMemPoolHandle_t* hipMemPool_t;
703 
704 typedef struct hipFuncAttributes {
711  int numRegs;
716 typedef struct ihipEvent_t* hipEvent_t;
717 
725  hipLimitStackSize = 0x0,
728  hipLimitPrintfFifoSize = 0x01,
730  hipLimitMallocHeapSize = 0x02,
732  hipExtLimitScratchMin = 0x1000,
734  hipExtLimitScratchMax = 0x1001,
736  hipExtLimitScratchCurrent = 0x1002,
741 };
742 
746 // Flags that can be used with hipStreamCreateWithFlags.
748 #define hipStreamDefault 0x00
749 
751 #define hipStreamNonBlocking 0x01
752 
753 // Flags that can be used with hipEventCreateWithFlags.
755 #define hipEventDefault 0x0
756 
758 #define hipEventBlockingSync 0x1
759 
761 #define hipEventDisableTiming 0x2
762 
764 #define hipEventInterprocess 0x4
765 
766 // Flags that can be used with hipEventRecordWithFlags.
768 #define hipEventRecordDefault 0x00
769 
771 #define hipEventRecordExternal 0x01
772 
773 //Flags that can be used with hipStreamWaitEvent.
775 #define hipEventWaitDefault 0x00
776 
778 #define hipEventWaitExternal 0x01
779 
788 #define hipEventDisableSystemFence 0x20000000
789 
792 #define hipEventReleaseToDevice 0x40000000
793 
796 #define hipEventReleaseToSystem 0x80000000
797 
798 // Flags that can be used with hipGetDriverEntryPoint.
802 #define hipEnableDefault 0x0
803 
805 #define hipEnableLegacyStream 0x1
806 
809 #define hipEnablePerThreadDefaultStream 0x2
810 
811 // Flags that can be used with hipHostMalloc/hipHostAlloc.
813 #define hipHostAllocDefault 0x0
814 
817 #define hipHostMallocDefault 0x0
818 
820 #define hipHostAllocPortable 0x1
821 
824 #define hipHostMallocPortable 0x1
825 
828 #define hipHostAllocMapped 0x2
829 
833 #define hipHostMallocMapped 0x2
834 
840 #define hipHostAllocWriteCombined 0x4
841 
848 #define hipHostMallocWriteCombined 0x4
849 
855 #define hipHostMallocUncached 0x10000000
856 #define hipHostAllocUncached hipHostMallocUncached
857 
862 #define hipHostMallocNumaUser 0x20000000
863 
865 #define hipHostMallocCoherent 0x40000000
866 
868 #define hipHostMallocNonCoherent 0x80000000
869 
871 #define hipMemAttachGlobal 0x01
872 
874 #define hipMemAttachHost 0x02
875 
877 #define hipMemAttachSingle 0x04
878 
879 #define hipDeviceMallocDefault 0x0
880 
882 #define hipDeviceMallocFinegrained 0x1
883 
885 #define hipMallocSignalMemory 0x2
886 
888 #define hipDeviceMallocUncached 0x3
889 
891 #define hipDeviceMallocContiguous 0x4
892 
893 // Flags that can be used with hipHostRegister.
895 #define hipHostRegisterDefault 0x0
896 
898 #define hipHostRegisterPortable 0x1
899 
902 #define hipHostRegisterMapped 0x2
903 
908 #define hipHostRegisterIoMemory 0x4
909 
911 #define hipHostRegisterReadOnly 0x08
912 
914 #define hipExtHostRegisterCoarseGrained 0x8
915 
919 #define hipExtHostRegisterUncached 0x80000000
920 
922 #define hipDeviceScheduleAuto 0x0
923 
926 #define hipDeviceScheduleSpin 0x1
927 
930 #define hipDeviceScheduleYield 0x2
931 #define hipDeviceScheduleBlockingSync 0x4
932 #define hipDeviceScheduleMask 0x7
933 #define hipDeviceMapHost 0x8
934 #define hipDeviceLmemResizeToMax 0x10
936 #define hipArrayDefault 0x00
937 #define hipArrayLayered 0x01
938 #define hipArraySurfaceLoadStore 0x02
939 #define hipArrayCubemap 0x04
940 #define hipArrayTextureGather 0x08
941 #define hipOccupancyDefault 0x00
942 #define hipOccupancyDisableCachingOverride 0x01
943 #define hipCooperativeLaunchMultiDeviceNoPreSync 0x01
944 #define hipCooperativeLaunchMultiDeviceNoPostSync 0x02
945 #define hipCpuDeviceId ((int)-1)
946 #define hipInvalidDeviceId ((int)-2)
947 // Flags that can be used with hipExtLaunch Set of APIs.
949 #define hipExtAnyOrderLaunch 0x01
950 // Flags to be used with hipStreamWaitValue32 and hipStreamWaitValue64.
951 #define hipStreamWaitValueGte 0x0
952 #define hipStreamWaitValueEq 0x1
953 #define hipStreamWaitValueAnd 0x2
954 #define hipStreamWaitValueNor 0x3
955 
965 
1002 typedef union hipStreamBatchMemOpParams_union {
1007  union {
1008  uint32_t value;
1009  uint64_t value64;
1010  };
1011  unsigned int flags;
1013  } waitValue;
1017  union {
1018  uint32_t value;
1019  uint64_t value64;
1020  };
1021  unsigned int flags;
1023  } writeValue;
1026  unsigned int flags;
1027  } flushRemoteWrites;
1030  unsigned int flags;
1031  } memoryBarrier;
1032  uint64_t pad[6];
1034 
1062 typedef struct hipBatchMemOpNodeParams {
1064  unsigned int count;
1066  unsigned int flags;
1068 
1069 // Stream per thread
1071 #define hipStreamPerThread ((hipStream_t)2)
1072 
1073 #define hipStreamLegacy ((hipStream_t)1)
1074 
1075 // Indicates that the external memory object is a dedicated resource
1076 #define hipExternalMemoryDedicated 0x1
1082 typedef enum hipMemoryAdvise {
1115 typedef enum hipMemRangeAttribute {
1126 
1130 typedef enum hipMemPoolAttr {
1185 
1190 typedef enum hipMemAccessFlags {
1201 typedef struct hipMemAccessDesc {
1208 typedef enum hipMemAllocationType {
1215  hipMemAllocationTypeMax = 0x7FFFFFFF
1224  0x1,
1231 typedef struct hipMemPoolProps {
1241  size_t maxSize;
1242  unsigned char reserved[56];
1243 } hipMemPoolProps;
1247 typedef struct hipMemPoolPtrExportData {
1248  unsigned char reserved[64];
1250 
1254 typedef enum hipFuncAttribute {
1256  8,
1258  9,
1264 typedef enum hipFuncCache_t {
1269 } hipFuncCache_t;
1273 typedef enum hipSharedMemConfig {
1283 typedef struct dim3 {
1284  uint32_t x;
1285  uint32_t y;
1286  uint32_t z;
1287 #ifdef __cplusplus
1288  constexpr __host__ __device__ dim3(uint32_t _x = 1, uint32_t _y = 1, uint32_t _z = 1)
1289  : x(_x), y(_y), z(_z) {};
1290 #endif
1291 } dim3;
1295 typedef struct hipLaunchParams_t {
1296  void* func;
1299  void** args;
1300  size_t sharedMem;
1302 } hipLaunchParams;
1306 typedef struct hipFunctionLaunchParams_t {
1307  hipFunction_t function;
1308  unsigned int gridDimX;
1309  unsigned int gridDimY;
1310  unsigned int gridDimZ;
1311  unsigned int blockDimX;
1312  unsigned int blockDimY;
1313  unsigned int blockDimZ;
1314  unsigned int sharedMemBytes;
1316  void** kernelParams;
1318 typedef enum hipExternalMemoryHandleType_enum {
1328 typedef struct hipExternalMemoryHandleDesc_st {
1330  union {
1331  int fd;
1332  struct {
1333  void* handle;
1334  const void* name;
1335  } win32;
1336  const void* nvSciBufObject;
1337  } handle;
1338  unsigned long long size;
1339  unsigned int flags;
1340  unsigned int reserved[16];
1342 typedef struct hipExternalMemoryBufferDesc_st {
1343  unsigned long long offset;
1344  unsigned long long size;
1345  unsigned int flags;
1346  unsigned int reserved[16];
1348 typedef struct hipExternalMemoryMipmappedArrayDesc_st {
1349  unsigned long long offset;
1352  unsigned int flags;
1353  unsigned int numLevels;
1355 typedef void* hipExternalMemory_t;
1356 typedef enum hipExternalSemaphoreHandleType_enum {
1368 typedef struct hipExternalSemaphoreHandleDesc_st {
1370  union {
1371  int fd;
1372  struct {
1373  void* handle;
1374  const void* name;
1375  } win32;
1376  const void* NvSciSyncObj;
1377  } handle;
1378  unsigned int flags;
1379  unsigned int reserved[16];
1382 typedef struct hipExternalSemaphoreSignalParams_st {
1383  struct {
1384  struct {
1385  unsigned long long value;
1386  } fence;
1387  union {
1388  void* fence;
1389  unsigned long long reserved;
1390  } nvSciSync;
1391  struct {
1392  unsigned long long key;
1393  } keyedMutex;
1394  unsigned int reserved[12];
1395  } params;
1396  unsigned int flags;
1397  unsigned int reserved[16];
1402 typedef struct hipExternalSemaphoreWaitParams_st {
1403  struct {
1404  struct {
1405  unsigned long long value;
1406  } fence;
1407  union {
1408  void* fence;
1409  unsigned long long reserved;
1410  } nvSciSync;
1411  struct {
1412  unsigned long long key;
1413  unsigned int timeoutMs;
1414  } keyedMutex;
1415  unsigned int reserved[10];
1416  } params;
1417  unsigned int flags;
1418  unsigned int reserved[16];
1420 
1421 #if __HIP_HAS_GET_PCH
1426 void __hipGetPCH(const char** pch, unsigned int* size);
1427 #endif
1428 
1436  2,
1439  8
1441 
1442 typedef struct _hipGraphicsResource hipGraphicsResource;
1443 
1445 
1449 typedef struct ihipGraph* hipGraph_t;
1453 typedef struct hipGraphNode* hipGraphNode_t;
1457 typedef struct hipGraphExec* hipGraphExec_t;
1458 
1462 typedef struct hipUserObject* hipUserObject_t;
1463 
1464 
1468 typedef enum hipGraphNodeType {
1486 
1487 typedef void (*hipHostFn_t)(void* userData);
1488 typedef struct hipHostNodeParams {
1490  void* userData;
1492 typedef struct hipKernelNodeParams {
1494  void** extra;
1495  void* func;
1498  unsigned int sharedMemBytes;
1500 typedef struct hipMemsetParams {
1501  void* dst;
1502  unsigned int elementSize;
1503  size_t height;
1504  size_t pitch;
1505  unsigned int value;
1506  size_t width;
1507 } hipMemsetParams;
1508 
1509 typedef struct hipMemAllocNodeParams {
1515  size_t bytesize;
1516  void* dptr;
1518 
1522 typedef enum hipAccessProperty {
1527 
1528 /***
1529  * Specifies access policy for a window, a contiguous extent of memory
1530  * beginning at base_ptr and ending at base_ptr + num_bytes.
1531  */
1532 typedef struct hipAccessPolicyWindow {
1533  void* base_ptr;
1535  float hitRatio;
1537  size_t num_bytes;
1539 
1544  unsigned char default_;
1545  unsigned char remote;
1547 
1555 
1566 
1570 typedef enum hipLaunchAttributeID {
1579 
1580 
1585  char pad[64];
1590  int priority;
1600 
1604 #define hipStreamAttrID hipLaunchAttributeID
1605 #define hipStreamAttributeAccessPolicyWindow hipLaunchAttributeAccessPolicyWindow
1606 #define hipStreamAttributeSynchronizationPolicy hipLaunchAttributeSynchronizationPolicy
1607 #define hipStreamAttributeMemSyncDomainMap hipLaunchAttributeMemSyncDomainMap
1608 #define hipStreamAttributeMemSyncDomain hipLaunchAttributeMemSyncDomain
1609 #define hipStreamAttributePriority hipLaunchAttributePriority
1610 
1611 #define hipStreamAttrValue hipLaunchAttributeValue
1612 
1616 #define hipKernelNodeAttrID hipLaunchAttributeID
1617 #define hipKernelNodeAttributeAccessPolicyWindow hipLaunchAttributeAccessPolicyWindow
1618 #define hipKernelNodeAttributeCooperative hipLaunchAttributeCooperative
1619 #define hipKernelNodeAttributePriority hipLaunchAttributePriority
1620 
1624 #define hipKernelNodeAttrValue hipLaunchAttributeValue
1625 
1629 #define hipDrvLaunchAttributeCooperative hipLaunchAttributeCooperative
1630 
1631 #define hipDrvLaunchAttributeID hipLaunchAttributeID
1632 #define hipDrvLaunchAttributeValue hipLaunchAttributeValue
1633 #define hipDrvLaunchAttribute hipLaunchAttribute
1634 
1640  hipGraphExecUpdateError = 0x1,
1645  0x4,
1647  0x5,
1649  0x6,
1652 
1653 typedef enum hipStreamCaptureMode {
1664 
1669 
1672  0,
1680 typedef enum hipUserObjectFlags {
1683 
1687 
1690  1,
1693  4,
1695  8,
1698 
1701  1 << 0,
1707  1 << 6,
1709  1 << 7,
1711  1 << 8,
1713  1 << 9,
1715  1 << 10
1716 };
1717 
1732 
1738  unsigned long long flags;
1743 
1744 
1748 typedef struct hipMemAllocationProp {
1750  union {
1753  };
1756  struct {
1757  unsigned char compressionType;
1758  unsigned char gpuDirectRDMACapable;
1759  unsigned short usage;
1762 
1772  unsigned int numExtSems;
1774 
1784  unsigned int numExtSems;
1786 
1790 typedef struct ihipMemGenericAllocationHandle* hipMemGenericAllocationHandle_t;
1791 
1799 
1803 typedef enum hipMemHandleType {
1806 
1810 typedef enum hipMemOperationType {
1814 
1822 
1826 typedef struct hipArrayMapInfo {
1828  union {
1833  union {
1834  struct {
1835  unsigned int
1837  unsigned int
1839  unsigned int offsetX;
1840  unsigned int offsetY;
1841  unsigned int offsetZ;
1842  unsigned int extentWidth;
1843  unsigned int extentHeight;
1844  unsigned int extentDepth;
1846  struct {
1847  unsigned int
1848  layer;
1849  unsigned long long offset;
1850  unsigned long long size;
1855  union {
1858  unsigned long long offset;
1859  unsigned int deviceBitMask;
1860  unsigned int flags;
1861  unsigned int reserved[2];
1862 } hipArrayMapInfo;
1863 
1867 typedef struct hipMemcpyNodeParams {
1868  int flags;
1869  int reserved[3];
1872 
1876 typedef struct hipChildGraphNodeParams {
1880 
1884 typedef struct hipEventWaitNodeParams {
1887 
1894 
1898 typedef struct hipMemFreeNodeParams {
1899  void* dptr;
1901 
1905 typedef struct hipGraphNodeParams {
1907  int reserved0[3];
1908  union {
1909  long long reserved1[29];
1921  };
1922 
1923  long long reserved2;
1925 
1929 #define hipGraphKernelNodePortDefault 0
1930 
1934 #define hipGraphKernelNodePortLaunchCompletion 2
1935 
1941 #define hipGraphKernelNodePortProgrammatic 1
1942 
1947 
1948 typedef struct hipGraphEdgeData {
1949  unsigned char
1957  unsigned char reserved[5];
1958  unsigned char
1960  unsigned char type;
1962 
1963 
1967 typedef struct hipLaunchAttribute_st {
1969  char pad[8 - sizeof(hipLaunchAttributeID)];
1970  union {
1973  };
1975 
1979 typedef struct hipLaunchConfig_st {
1985  unsigned int numAttrs;
1987 
1991 typedef struct HIP_LAUNCH_CONFIG_st {
1992  unsigned int gridDimX;
1993  unsigned int gridDimY;
1994  unsigned int gridDimZ;
1995  unsigned int blockDimX;
1996  unsigned int blockDimY;
1997  unsigned int blockDimZ;
1998  unsigned int sharedMemBytes;
2001  unsigned int numAttrs;
2003 
2009  hipMemRangeHandleTypeMax = 0x7fffffff
2011 
2015 typedef enum hipMemRangeFlags {
2017  hipMemRangeFlagsMax = 0x7fffffff
2019 
2020 // Doxygen end group GlobalDefs
2046 // TODO-ctx - more description on error codes.
2047 hipError_t hipInit(unsigned int flags);
2048 
2066 hipError_t hipDriverGetVersion(int* driverVersion);
2081 hipError_t hipRuntimeGetVersion(int* runtimeVersion);
2089 hipError_t hipDeviceGet(hipDevice_t* device, int ordinal);
2090 
2099 hipError_t hipDeviceComputeCapability(int* major, int* minor, hipDevice_t device);
2108 hipError_t hipDeviceGetName(char* name, int len, hipDevice_t device);
2130 hipError_t hipDeviceGetP2PAttribute(int* value, hipDeviceP2PAttr attr, int srcDevice,
2131  int dstDevice);
2140 hipError_t hipDeviceGetPCIBusId(char* pciBusId, int len, int device);
2148 hipError_t hipDeviceGetByPCIBusId(int* device, const char* pciBusId);
2157 // doxygen end initialization
2220 hipError_t hipSetDevice(int deviceId);
2233 hipError_t hipSetValidDevices(int* device_arr, int len);
2247 hipError_t hipGetDevice(int* deviceId);
2359  int device);
2396 hipError_t hipDeviceGetLimit(size_t* pValue, enum hipLimit_t limit);
2416 hipError_t hipDeviceSetLimit(enum hipLimit_t limit, size_t value);
2436 hipError_t hipGetDeviceFlags(unsigned int* flags);
2489 hipError_t hipChooseDevice(int* device, const hipDeviceProp_t* prop);
2503 hipError_t hipExtGetLinkTypeAndHopCount(int device1, int device2, uint32_t* linktype,
2504  uint32_t* hopcount);
2505 // TODO: implement IPC apis
2565 hipError_t hipIpcOpenMemHandle(void** devPtr, hipIpcMemHandle_t handle, unsigned int flags);
2584 
2602 
2622 
2623 // end doxygen Device
2647 hipError_t hipFuncSetAttribute(const void* func, hipFuncAttribute attr, int value);
2673 // doxygen end execution
2696 
2709 
2729 const char* hipGetErrorName(hipError_t hip_error);
2738 const char* hipGetErrorString(hipError_t hipError);
2748 hipError_t hipDrvGetErrorName(hipError_t hipError, const char** errorString);
2758 hipError_t hipDrvGetErrorString(hipError_t hipError, const char** errorString);
2759 // end doxygen Error
2813 hipError_t hipStreamCreateWithFlags(hipStream_t* stream, unsigned int flags);
2835 hipError_t hipStreamCreateWithPriority(hipStream_t* stream, unsigned int flags, int priority);
2854 hipError_t hipDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
2937 hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags __dparm(0));
2947 hipError_t hipStreamGetFlags(hipStream_t stream, unsigned int* flags);
2957 hipError_t hipStreamGetId(hipStream_t stream, unsigned long long* streamId);
3000  const uint32_t* cuMask);
3013 hipError_t hipExtStreamGetCUMask(hipStream_t stream, uint32_t cuMaskSize, uint32_t* cuMask);
3017 typedef void (*hipStreamCallback_t)(hipStream_t stream, hipError_t status, void* userData);
3034  unsigned int flags);
3035 
3044  const hipStreamAttrValue* value);
3045 
3054  hipStreamAttrValue* value_out);
3055 
3063 
3064 // end doxygen Stream
3112 hipError_t hipStreamWaitValue32(hipStream_t stream, void* ptr, uint32_t value, unsigned int flags,
3113  uint32_t mask __dparm(0xFFFFFFFF));
3114 
3151 hipError_t hipStreamWaitValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags,
3152  uint64_t mask __dparm(0xFFFFFFFFFFFFFFFF));
3153 
3174 hipError_t hipStreamWriteValue32(hipStream_t stream, void* ptr, uint32_t value, unsigned int flags);
3195 hipError_t hipStreamWriteValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags);
3196 
3216 hipError_t hipStreamBatchMemOp(hipStream_t stream, unsigned int count,
3217  hipStreamBatchMemOpParams* paramArray, unsigned int flags);
3218 
3237  const hipGraphNode_t* dependencies, size_t numDependencies,
3238  const hipBatchMemOpNodeParams* nodeParams);
3239 
3261  hipBatchMemOpNodeParams* nodeParams_out);
3262 
3281  hipBatchMemOpNodeParams* nodeParams);
3282 
3303  const hipBatchMemOpNodeParams* nodeParams);
3304 
3305 // end doxygen Stream Memory Operations
3391  unsigned int flags __dparm(0));
3422 #ifdef __cplusplus
3424 #else
3426 #endif
3509 // end doxygen Events
3541  hipDeviceptr_t ptr);
3542 
3543 
3595 hipError_t hipDrvPointerGetAttributes(unsigned int numAttributes, hipPointer_attribute* attributes,
3596  void** data, hipDeviceptr_t ptr);
3621  const hipExternalSemaphoreHandleDesc* semHandleDesc);
3638  const hipExternalSemaphoreSignalParams* paramsArray,
3639  unsigned int numExtSems, hipStream_t stream);
3656  const hipExternalSemaphoreWaitParams* paramsArray,
3657  unsigned int numExtSems, hipStream_t stream);
3672 
3685  const hipExternalMemoryHandleDesc* memHandleDesc);
3698  const hipExternalMemoryBufferDesc* bufferDesc);
3724  hipMipmappedArray_t* mipmap, hipExternalMemory_t extMem,
3725  const hipExternalMemoryMipmappedArrayDesc* mipmapDesc);
3726 // end of external resource
3743 hipError_t hipMalloc(void** ptr, size_t size);
3763 hipError_t hipExtMallocWithFlags(void** ptr, size_t sizeBytes, unsigned int flags);
3764 
3765 
3788 HIP_DEPRECATED("use hipHostMalloc instead")
3789 hipError_t hipMallocHost(void** ptr, size_t size);
3802 HIP_DEPRECATED("use hipHostMalloc instead")
3803 hipError_t hipMemAllocHost(void** ptr, size_t size);
3804 // end doxygen deprecated management memory
3841 hipError_t hipHostMalloc(void** ptr, size_t size, unsigned int flags);
3876 hipError_t hipMallocManaged(void** dev_ptr, size_t size,
3877  unsigned int flags __dparm(hipMemAttachGlobal));
3890 hipError_t hipMemPrefetchAsync(const void* dev_ptr, size_t count, int device,
3891  hipStream_t stream __dparm(0));
3905 hipError_t hipMemPrefetchAsync_v2(const void* dev_ptr, size_t count, hipMemLocation location,
3906  unsigned int flags, hipStream_t stream __dparm(0));
3926 hipError_t hipMemAdvise(const void* dev_ptr, size_t count, hipMemoryAdvise advice, int device);
3946 hipError_t hipMemAdvise_v2(const void* dev_ptr, size_t count, hipMemoryAdvise advice,
3947  hipMemLocation location);
3962 hipError_t hipMemRangeGetAttribute(void* data, size_t data_size, hipMemRangeAttribute attribute,
3963  const void* dev_ptr, size_t count);
3980 hipError_t hipMemRangeGetAttributes(void** data, size_t* data_sizes,
3981  hipMemRangeAttribute* attributes, size_t num_attributes,
3982  const void* dev_ptr, size_t count);
3998 hipError_t hipStreamAttachMemAsync(hipStream_t stream, void* dev_ptr, size_t length __dparm(0),
3999  unsigned int flags __dparm(hipMemAttachSingle));
4000 // end doxygen Managed Memory
4060 hipError_t hipMallocAsync(void** dev_ptr, size_t size, hipStream_t stream);
4085 hipError_t hipFreeAsync(void* dev_ptr, hipStream_t stream);
4113 hipError_t hipMemPoolTrimTo(hipMemPool_t mem_pool, size_t min_bytes_to_hold);
4212  size_t count);
4233  hipMemLocation* location);
4322 hipError_t hipMallocFromPoolAsync(void** dev_ptr, size_t size, hipMemPool_t mem_pool,
4323  hipStream_t stream);
4351  hipMemAllocationHandleType handle_type,
4352  unsigned int flags);
4377  hipMemAllocationHandleType handle_type,
4378  unsigned int flags);
4428  hipMemPoolPtrExportData* export_data);
4429 // Doxygen end of ordered memory allocator
4453 hipError_t hipHostAlloc(void** ptr, size_t size, unsigned int flags);
4465 hipError_t hipHostGetDevicePointer(void** devPtr, void* hstPtr, unsigned int flags);
4475 hipError_t hipHostGetFlags(unsigned int* flagsPtr, void* hostPtr);
4513 hipError_t hipHostRegister(void* hostPtr, size_t sizeBytes, unsigned int flags);
4541 hipError_t hipMallocPitch(void** ptr, size_t* pitch, size_t width, size_t height);
4564 hipError_t hipMemAllocPitch(hipDeviceptr_t* dptr, size_t* pitch, size_t widthInBytes, size_t height,
4565  unsigned int elementSizeBytes);
4579 hipError_t hipFree(void* ptr);
4638 hipError_t hipMemcpy(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind);
4654 hipError_t hipMemcpyWithStream(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind,
4655  hipStream_t stream);
4673 hipError_t hipMemcpyHtoD(hipDeviceptr_t dst, const void* src, size_t sizeBytes);
4691 hipError_t hipMemcpyDtoH(void* dst, hipDeviceptr_t src, size_t sizeBytes);
4728 hipError_t hipMemcpyAtoD(hipDeviceptr_t dstDevice, hipArray_t srcArray, size_t srcOffset,
4729  size_t ByteCount);
4748 hipError_t hipMemcpyDtoA(hipArray_t dstArray, size_t dstOffset, hipDeviceptr_t srcDevice,
4749  size_t ByteCount);
4750 
4770 hipError_t hipMemcpyAtoA(hipArray_t dstArray, size_t dstOffset, hipArray_t srcArray,
4771  size_t srcOffset, size_t ByteCount);
4790 hipError_t hipMemcpyHtoDAsync(hipDeviceptr_t dst, const void* src, size_t sizeBytes,
4791  hipStream_t stream);
4810 hipError_t hipMemcpyDtoHAsync(void* dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream);
4830  hipStream_t stream);
4850 hipError_t hipMemcpyAtoHAsync(void* dstHost, hipArray_t srcArray, size_t srcOffset,
4851  size_t ByteCount, hipStream_t stream);
4871 hipError_t hipMemcpyHtoAAsync(hipArray_t dstArray, size_t dstOffset, const void* srcHost,
4872  size_t ByteCount, hipStream_t stream);
4890  const char* name);
4891 
4901 hipError_t hipGetSymbolAddress(void** devPtr, const void* symbol);
4902 
4903 
4913 hipError_t hipGetSymbolSize(size_t* size, const void* symbol);
4914 
4934 hipError_t hipGetProcAddress(const char* symbol, void** pfn, int hipVersion, uint64_t flags,
4935  hipDriverProcAddressQueryResult* symbolStatus);
4936 
4958 hipError_t hipMemcpyToSymbol(const void* symbol, const void* src, size_t sizeBytes,
4959  size_t offset __dparm(0),
4961 
4975 hipError_t hipMemcpyToSymbolAsync(const void* symbol, const void* src, size_t sizeBytes,
4976  size_t offset, hipMemcpyKind kind, hipStream_t stream __dparm(0));
4977 
4990 hipError_t hipMemcpyFromSymbol(void* dst, const void* symbol, size_t sizeBytes,
4991  size_t offset __dparm(0),
4993 
5007 hipError_t hipMemcpyFromSymbolAsync(void* dst, const void* symbol, size_t sizeBytes, size_t offset,
5008  hipMemcpyKind kind, hipStream_t stream __dparm(0));
5037 hipError_t hipMemcpyAsync(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind,
5038  hipStream_t stream __dparm(0));
5048 hipError_t hipMemset(void* dst, int value, size_t sizeBytes);
5058 hipError_t hipMemsetD8(hipDeviceptr_t dest, unsigned char value, size_t count);
5074 hipError_t hipMemsetD8Async(hipDeviceptr_t dest, unsigned char value, size_t count,
5075  hipStream_t stream __dparm(0));
5085 hipError_t hipMemsetD16(hipDeviceptr_t dest, unsigned short value, size_t count);
5101 hipError_t hipMemsetD16Async(hipDeviceptr_t dest, unsigned short value, size_t count,
5102  hipStream_t stream __dparm(0));
5112 hipError_t hipMemsetD32(hipDeviceptr_t dest, int value, size_t count);
5128 hipError_t hipMemsetAsync(void* dst, int value, size_t sizeBytes, hipStream_t stream __dparm(0));
5144 hipError_t hipMemsetD32Async(hipDeviceptr_t dst, int value, size_t count,
5145  hipStream_t stream __dparm(0));
5156 hipError_t hipMemset2D(void* dst, size_t pitch, int value, size_t width, size_t height);
5168 hipError_t hipMemset2DAsync(void* dst, size_t pitch, int value, size_t width, size_t height,
5169  hipStream_t stream __dparm(0));
5178 hipError_t hipMemset3D(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent);
5188 hipError_t hipMemset3DAsync(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent,
5189  hipStream_t stream __dparm(0));
5190 
5202 hipError_t hipMemsetD2D8(hipDeviceptr_t dst, size_t dstPitch, unsigned char value, size_t width,
5203  size_t height);
5216 hipError_t hipMemsetD2D8Async(hipDeviceptr_t dst, size_t dstPitch, unsigned char value,
5217  size_t width, size_t height, hipStream_t stream __dparm(0));
5218 
5230 hipError_t hipMemsetD2D16(hipDeviceptr_t dst, size_t dstPitch, unsigned short value, size_t width,
5231  size_t height);
5244 hipError_t hipMemsetD2D16Async(hipDeviceptr_t dst, size_t dstPitch, unsigned short value,
5245  size_t width, size_t height, hipStream_t stream __dparm(0));
5257 hipError_t hipMemsetD2D32(hipDeviceptr_t dst, size_t dstPitch, unsigned int value, size_t width,
5258  size_t height);
5271 hipError_t hipMemsetD2D32Async(hipDeviceptr_t dst, size_t dstPitch, unsigned int value,
5272  size_t width, size_t height, hipStream_t stream __dparm(0));
5273 
5290 hipError_t hipMemGetInfo(size_t* free, size_t* total);
5291 
5303 hipError_t hipMemPtrGetInfo(void* ptr, size_t* size);
5317  size_t height __dparm(0), unsigned int flags __dparm(hipArrayDefault));
5382  struct hipExtent extent, unsigned int flags);
5396  hipArray_t array);
5467 hipError_t hipMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width,
5468  size_t height, hipMemcpyKind kind);
5530 hipError_t hipMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width,
5531  size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0));
5549 hipError_t hipMemcpy2DToArray(hipArray_t dst, size_t wOffset, size_t hOffset, const void* src,
5550  size_t spitch, size_t width, size_t height, hipMemcpyKind kind);
5569 hipError_t hipMemcpy2DToArrayAsync(hipArray_t dst, size_t wOffset, size_t hOffset, const void* src,
5570  size_t spitch, size_t width, size_t height, hipMemcpyKind kind,
5571  hipStream_t stream __dparm(0));
5590 hipError_t hipMemcpy2DArrayToArray(hipArray_t dst, size_t wOffsetDst, size_t hOffsetDst,
5591  hipArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc,
5592  size_t width, size_t height, hipMemcpyKind kind);
5612 hipError_t hipMemcpyToArray(hipArray_t dst, size_t wOffset, size_t hOffset, const void* src,
5613  size_t count, hipMemcpyKind kind);
5633 hipError_t hipMemcpyFromArray(void* dst, hipArray_const_t srcArray, size_t wOffset, size_t hOffset,
5634  size_t count, hipMemcpyKind kind);
5652 hipError_t hipMemcpy2DFromArray(void* dst, size_t dpitch, hipArray_const_t src, size_t wOffset,
5653  size_t hOffset, size_t width, size_t height, hipMemcpyKind kind);
5672 hipError_t hipMemcpy2DFromArrayAsync(void* dst, size_t dpitch, hipArray_const_t src, size_t wOffset,
5673  size_t hOffset, size_t width, size_t height,
5674  hipMemcpyKind kind, hipStream_t stream __dparm(0));
5688 hipError_t hipMemcpyAtoH(void* dst, hipArray_t srcArray, size_t srcOffset, size_t count);
5702 hipError_t hipMemcpyHtoA(hipArray_t dstArray, size_t dstOffset, const void* srcHost, size_t count);
5762 
5778 hipError_t hipMemcpyBatchAsync(void** dsts, void** srcs, size_t* sizes, size_t count,
5779  hipMemcpyAttributes* attrs, size_t* attrsIdxs, size_t numAttrs,
5780  size_t* failIdx, hipStream_t stream __dparm(0));
5781 
5794 hipError_t hipMemcpy3DBatchAsync(size_t numOps, struct hipMemcpy3DBatchOp* opList, size_t* failIdx,
5795  unsigned long long flags, hipStream_t stream __dparm(0));
5796 
5806 
5816 // doxygen end Memory
5851 hipError_t hipDeviceCanAccessPeer(int* canAccessPeer, int deviceId, int peerDeviceId);
5866 hipError_t hipDeviceEnablePeerAccess(int peerDeviceId, unsigned int flags);
5878 
5890 hipError_t hipMemcpyPeer(void* dst, int dstDeviceId, const void* src, int srcDeviceId,
5891  size_t sizeBytes);
5904 hipError_t hipMemcpyPeerAsync(void* dst, int dstDeviceId, const void* src, int srcDevice,
5905  size_t sizeBytes, hipStream_t stream __dparm(0));
5906 
5907 // doxygen end PeerToPeer
5949 hipError_t hipCtxCreate(hipCtx_t* ctx, unsigned int flags, hipDevice_t device);
6061 hipError_t hipCtxGetApiVersion(hipCtx_t ctx, unsigned int* apiVersion);
6164 hipError_t hipCtxGetFlags(unsigned int* flags);
6188 hipError_t hipCtxEnablePeerAccess(hipCtx_t peerCtx, unsigned int flags);
6210 
6227 hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int* flags, int* active);
6292 // doxygen end Context Management
6316 hipError_t hipModuleLoadFatBinary(hipModule_t* module, const void* fatbin);
6330 hipError_t hipModuleLoad(hipModule_t* module, const char* fname);
6351 hipError_t hipModuleGetFunction(hipFunction_t* function, hipModule_t module, const char* kname);
6352 
6363 
6377 hipError_t hipLibraryLoadData(hipLibrary_t* library, const void* code, hipJitOption* jitOptions,
6378  void** jitOptionsValues, unsigned int numJitOptions,
6379  hipLibraryOption* libraryOptions, void** libraryOptionValues,
6380  unsigned int numLibraryOptions);
6381 
6395 hipError_t hipLibraryLoadFromFile(hipLibrary_t* library, const char* fileName,
6396  hipJitOption* jitOptions, void** jitOptionsValues,
6397  unsigned int numJitOptions, hipLibraryOption* libraryOptions,
6398  void** libraryOptionValues, unsigned int numLibraryOptions);
6399 
6407 
6416 hipError_t hipLibraryGetKernel(hipKernel_t* pKernel, hipLibrary_t library, const char* name);
6417 
6425 hipError_t hipLibraryGetKernelCount(unsigned int *count, hipLibrary_t library);
6426 
6435 hipError_t hipLibraryEnumerateKernels(hipKernel_t* kernels, unsigned int numKernels,
6436  hipLibrary_t library);
6437 
6446 
6454 hipError_t hipKernelGetName(const char** name, hipKernel_t kernel);
6455 
6464 hipError_t hipFuncGetAttributes(struct hipFuncAttributes* attr, const void* func);
6484 hipError_t hipGetFuncBySymbol(hipFunction_t* functionPtr, const void* symbolPtr);
6496 hipError_t hipGetDriverEntryPoint(const char* symbol, void** funcPtr, unsigned long long flags,
6497  hipDriverEntryPointQueryResult* driverStatus);
6507 hipError_t hipModuleGetTexRef(textureReference** texRef, hipModule_t hmod, const char* name);
6531 hipError_t hipModuleLoadData(hipModule_t* module, const void* image);
6544 hipError_t hipModuleLoadDataEx(hipModule_t* module, const void* image, unsigned int numOptions,
6545  hipJitOption* options, void** optionValues);
6565  const char* name, unsigned int numOptions, hipJitOption* options,
6566  void** optionValues);
6567 
6585  unsigned int numOptions, hipJitOption* options, void** optionValues);
6586 
6601 hipError_t hipLinkComplete(hipLinkState_t state, void** hipBinOut, size_t* sizeOut);
6602 
6614 hipError_t hipLinkCreate(unsigned int numOptions, hipJitOption* options, void** optionValues,
6615  hipLinkState_t* stateOut);
6625 
6654 hipError_t hipModuleLaunchKernel(hipFunction_t f, unsigned int gridDimX, unsigned int gridDimY,
6655  unsigned int gridDimZ, unsigned int blockDimX,
6656  unsigned int blockDimY, unsigned int blockDimZ,
6657  unsigned int sharedMemBytes, hipStream_t stream,
6658  void** kernelParams, void** extra);
6688  unsigned int gridDimY, unsigned int gridDimZ,
6689  unsigned int blockDimX, unsigned int blockDimY,
6690  unsigned int blockDimZ, unsigned int sharedMemBytes,
6691  hipStream_t stream, void** kernelParams);
6707  unsigned int numDevices, unsigned int flags);
6728 hipError_t hipLaunchCooperativeKernel(const void* f, dim3 gridDim, dim3 blockDimX,
6729  void** kernelParams, unsigned int sharedMemBytes,
6730  hipStream_t stream);
6743  unsigned int flags);
6744 
6745 // Doxygen end group ModuleCooperativeG
6760  unsigned int flags);
6774 hipError_t hipLaunchKernelExC(const hipLaunchConfig_t* config, const void* fPtr, void** args);
6791  void** extra);
6807  hipMemRangeHandleType handleType,
6808  unsigned long long flags);
6809 // doxygen end Module
6837 // TODO - Match CUoccupancyB2DSize
6839  size_t dynSharedMemPerBlk, int blockSizeLimit);
6855 // TODO - Match CUoccupancyB2DSize
6857  hipFunction_t f,
6858  size_t dynSharedMemPerBlk,
6859  int blockSizeLimit, unsigned int flags);
6870  int blockSize,
6871  size_t dynSharedMemPerBlk);
6883  int* numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags);
6894  int blockSize, size_t dynSharedMemPerBlk);
6906  int* numBlocks, const void* f, int blockSize, size_t dynSharedMemPerBlk,
6907  unsigned int flags __dparm(hipOccupancyDefault));
6922 hipError_t hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize, const void* f,
6923  size_t dynSharedMemPerBlk, int blockSizeLimit);
6939 hipError_t hipOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, const void* f,
6940  int numBlocks, int blockSize);
6941 // doxygen end Occupancy
6955 // TODO - expand descriptions:
6962 HIP_DEPRECATED("use roctracer/rocTX instead")
6970 HIP_DEPRECATED("use roctracer/rocTX instead")
6972 // doxygen end profiler
6999 hipError_t hipConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0),
7000  hipStream_t stream __dparm(0));
7011 hipError_t hipSetupArgument(const void* arg, size_t size, size_t offset);
7020 hipError_t hipLaunchByPtr(const void* func);
7037 hipError_t __hipPushCallConfiguration(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0),
7038  hipStream_t stream __dparm(0));
7058 hipError_t __hipPopCallConfiguration(dim3* gridDim, dim3* blockDim, size_t* sharedMem,
7059  hipStream_t* stream);
7076 hipError_t hipLaunchKernel(const void* function_address, dim3 numBlocks, dim3 dimBlocks,
7077  void** args, size_t sharedMemBytes __dparm(0),
7078  hipStream_t stream __dparm(0));
7079 
7107 
7116 // TODO: Move this to hip_ext.h
7138 hipError_t hipExtLaunchKernel(const void* function_address, dim3 numBlocks, dim3 dimBlocks,
7139  void** args, size_t sharedMemBytes, hipStream_t stream,
7140  hipEvent_t startEvent, hipEvent_t stopEvent, int flags);
7141 // doxygen end Clang launch
7168  const hipTextureDesc* pTexDesc,
7169  const struct hipResourceViewDesc* pResViewDesc);
7170 
7180 
7191 
7202  hipTextureObject_t textureObject);
7203 
7214  hipTextureObject_t textureObject);
7215 
7226  hipTextureObject_t textureObject);
7227 
7240  const HIP_TEXTURE_DESC* pTexDesc,
7241  const HIP_RESOURCE_VIEW_DESC* pResViewDesc);
7242 
7252 
7263 
7274  hipTextureObject_t texObject);
7275 
7286 
7302  const struct hipChannelFormatDesc* desc, struct hipExtent extent,
7303  unsigned int numLevels, unsigned int flags __dparm(0));
7304 
7316 
7330  hipMipmappedArray_const_t mipmappedArray, unsigned int level);
7331 
7343 hipError_t hipMipmappedArrayCreate(hipMipmappedArray_t* pHandle,
7344  HIP_ARRAY3D_DESCRIPTOR* pMipmappedArrayDesc,
7345  unsigned int numMipmapLevels);
7346 
7357 hipError_t hipMipmappedArrayDestroy(hipMipmappedArray_t hMipmappedArray);
7358 
7371 hipError_t hipMipmappedArrayGetLevel(hipArray_t* pLevelArray, hipMipmappedArray_t hMipMappedArray,
7372  unsigned int level);
7373 
7395  const hipChannelFormatDesc* desc);
7396 
7408 hipError_t hipGetTextureReference(const textureReference** texref, const void* symbol);
7409 
7421 hipError_t hipTexRefGetBorderColor(float* pBorderColor, const textureReference* texRef);
7422 
7436 
7450  enum hipTextureAddressMode am);
7490 hipError_t hipTexRefSetFlags(textureReference* texRef, unsigned int Flags);
7505  int NumPackedComponents);
7521 hipError_t hipBindTexture(size_t* offset, const textureReference* tex, const void* devPtr,
7522  const hipChannelFormatDesc* desc, size_t size __dparm(UINT_MAX));
7540 hipError_t hipBindTexture2D(size_t* offset, const textureReference* tex, const void* devPtr,
7541  const hipChannelFormatDesc* desc, size_t width, size_t height,
7542  size_t pitch);
7557  const hipChannelFormatDesc* desc);
7610  int dim);
7636 hipError_t hipTexRefGetFlags(unsigned int* pFlags, const textureReference* texRef);
7650 hipError_t hipTexRefGetFormat(hipArray_Format* pFormat, int* pNumChannels,
7651  const textureReference* texRef);
7678  const textureReference* texRef);
7705 hipError_t hipTexRefGetMipmapLevelClamp(float* pminMipmapLevelClamp, float* pmaxMipmapLevelClamp,
7706  const textureReference* texRef);
7719 hipError_t hipTexRefGetMipMappedArray(hipMipmappedArray_t* pArray, const textureReference* texRef);
7735  size_t bytes);
7751  hipDeviceptr_t dptr, size_t Pitch);
7817 hipError_t hipTexRefSetMipmapLevelClamp(textureReference* texRef, float minMipMapLevelClamp,
7818  float maxMipMapLevelClamp);
7833  struct hipMipmappedArray* mipmappedArray, unsigned int Flags);
7834 
7835 // doxygen end deprecated texture management
7840 // doxygen end Texture management
7852 // This group is for HIPrtc
7853 
7854 // doxygen end Runtime
7873 const char* hipApiName(uint32_t id);
7882 const char* hipKernelNameRef(const hipFunction_t f);
7892 const char* hipKernelNameRefByPtr(const void* hostFunction, hipStream_t stream);
7902 
7903 // doxygen end Callback
7926 
7947  const hipGraphNode_t* dependencies,
7948  const hipGraphEdgeData* dependencyData,
7949  size_t numDependencies, hipStreamCaptureMode mode);
7950 
7961 
7973  unsigned long long* pId);
7974 
7990  unsigned long long* id_out __dparm(0),
7991  hipGraph_t* graph_out __dparm(0),
7992  const hipGraphNode_t** dependencies_out __dparm(0),
7993  size_t* numDependencies_out __dparm(0));
7994 
8005 
8018  size_t numDependencies,
8019  unsigned int flags __dparm(0));
8020 
8029 
8039 hipError_t hipGraphCreate(hipGraph_t* pGraph, unsigned int flags);
8040 
8050 
8062  const hipGraphNode_t* to, size_t numDependencies);
8063 
8075  const hipGraphNode_t* to, size_t numDependencies);
8076 
8093  size_t* numEdges);
8094 
8109 hipError_t hipGraphGetNodes(hipGraph_t graph, hipGraphNode_t* nodes, size_t* numNodes);
8110 
8126  size_t* pNumRootNodes);
8127 
8143  size_t* pNumDependencies);
8144 
8161  size_t* pNumDependentNodes);
8162 
8172 
8181 
8190 hipError_t hipGraphClone(hipGraph_t* pGraphClone, hipGraph_t originalGraph);
8191 
8202  hipGraph_t clonedGraph);
8203 
8218  hipGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize);
8219 
8231  unsigned long long flags);
8232 
8243  hipGraphInstantiateParams* instantiateParams);
8253 
8263 
8276  const hipGraphNode_t* pDependencies, size_t numDependencies,
8277  hipGraphNodeParams* nodeParams);
8278 
8287 hipError_t hipGraphExecGetFlags(hipGraphExec_t graphExec, unsigned long long* flags);
8288 
8299 
8311  hipGraphNodeParams* nodeParams);
8312 
8322 
8323 // Check whether an executable graph can be updated with a graph and perform the update if possible.
8336  hipGraphNode_t* hErrorNode_out,
8337  hipGraphExecUpdateResult* updateResult_out);
8338 
8351  const hipGraphNode_t* pDependencies, size_t numDependencies,
8352  const hipKernelNodeParams* pNodeParams);
8353 
8363 
8373 
8384  const hipKernelNodeParams* pNodeParams);
8385 
8399  const hipGraphNode_t* dependencies, size_t numDependencies,
8400  const HIP_MEMCPY3D* copyParams, hipCtx_t ctx);
8413  const hipGraphNode_t* pDependencies, size_t numDependencies,
8414  const hipMemcpy3DParms* pCopyParams);
8424 
8434 
8445  const hipKernelNodeAttrValue* value);
8456  hipKernelNodeAttrValue* value);
8467  hipMemcpy3DParms* pNodeParams);
8468 
8484  const hipGraphNode_t* pDependencies, size_t numDependencies,
8485  void* dst, const void* src, size_t count, hipMemcpyKind kind);
8486 
8499  size_t count, hipMemcpyKind kind);
8500 
8515  void* dst, const void* src, size_t count,
8516  hipMemcpyKind kind);
8517 
8534  const hipGraphNode_t* pDependencies,
8535  size_t numDependencies, void* dst, const void* symbol,
8536  size_t count, size_t offset, hipMemcpyKind kind);
8537 
8551  size_t count, size_t offset, hipMemcpyKind kind);
8552 
8568  void* dst, const void* symbol, size_t count,
8569  size_t offset, hipMemcpyKind kind);
8570 
8587  const hipGraphNode_t* pDependencies,
8588  size_t numDependencies, const void* symbol,
8589  const void* src, size_t count, size_t offset,
8590  hipMemcpyKind kind);
8591 
8605  const void* src, size_t count, size_t offset,
8606  hipMemcpyKind kind);
8607 
8608 
8623  const void* symbol, const void* src,
8624  size_t count, size_t offset, hipMemcpyKind kind);
8625 
8638  const hipGraphNode_t* pDependencies, size_t numDependencies,
8639  const hipMemsetParams* pMemsetParams);
8640 
8650 
8660 
8671  const hipMemsetParams* pNodeParams);
8672 
8685  const hipGraphNode_t* pDependencies, size_t numDependencies,
8686  const hipHostNodeParams* pNodeParams);
8687 
8697 
8707 
8718  const hipHostNodeParams* pNodeParams);
8719 
8732  const hipGraphNode_t* pDependencies, size_t numDependencies,
8733  hipGraph_t childGraph);
8734 
8744 
8755  hipGraph_t childGraph);
8756 
8768  const hipGraphNode_t* pDependencies, size_t numDependencies);
8769 
8770 
8783  const hipGraphNode_t* pDependencies, size_t numDependencies,
8784  hipEvent_t event);
8785 
8795 
8805 
8816  hipEvent_t event);
8817 
8830  const hipGraphNode_t* pDependencies, size_t numDependencies,
8831  hipEvent_t event);
8832 
8833 
8843 
8853 
8864  hipEvent_t event);
8865 
8879  const hipGraphNode_t* pDependencies, size_t numDependencies,
8880  hipMemAllocNodeParams* pNodeParams);
8881 
8891 
8904  const hipGraphNode_t* pDependencies, size_t numDependencies,
8905  void* dev_ptr);
8906 
8916 
8927 
8938 
8947 
8960  unsigned int initialRefcount, unsigned int flags);
8961 
8971 
8981 
8993  unsigned int count __dparm(1), unsigned int flags __dparm(0));
8994 
9005  unsigned int count __dparm(1));
9006 
9016 hipError_t hipGraphDebugDotPrint(hipGraph_t graph, const char* path, unsigned int flags);
9017 
9032 
9055  unsigned int isEnabled);
9076  unsigned int* isEnabled);
9077 
9090  hipGraphNode_t* pGraphNode, hipGraph_t graph, const hipGraphNode_t* pDependencies,
9091  size_t numDependencies, const hipExternalSemaphoreWaitNodeParams* nodeParams);
9092 
9105  hipGraphNode_t* pGraphNode, hipGraph_t graph, const hipGraphNode_t* pDependencies,
9106  size_t numDependencies, const hipExternalSemaphoreSignalNodeParams* nodeParams);
9116  hipGraphNode_t hNode, const hipExternalSemaphoreSignalNodeParams* nodeParams);
9126  hipGraphNode_t hNode, const hipExternalSemaphoreWaitNodeParams* nodeParams);
9157  hipGraphExec_t hGraphExec, hipGraphNode_t hNode,
9158  const hipExternalSemaphoreSignalNodeParams* nodeParams);
9169  hipGraphExec_t hGraphExec, hipGraphNode_t hNode,
9170  const hipExternalSemaphoreWaitNodeParams* nodeParams);
9171 
9181 
9191 
9205  const hipGraphNode_t* dependencies, size_t numDependencies,
9206  const hipMemsetParams* memsetParams, hipCtx_t ctx);
9207 
9220  const hipGraphNode_t* dependencies, size_t numDependencies,
9221  hipDeviceptr_t dptr);
9222 
9234  const HIP_MEMCPY3D* copyParams, hipCtx_t ctx);
9235 
9247  const hipMemsetParams* memsetParams, hipCtx_t ctx);
9248 
9249 // doxygen end graph API
9281 
9296 hipError_t hipMemAddressReserve(void** ptr, size_t size, size_t alignment, void* addr,
9297  unsigned long long flags);
9298 
9313  const hipMemAllocationProp* prop, unsigned long long flags);
9314 
9330  hipMemAllocationHandleType handleType,
9331  unsigned long long flags);
9332 
9345 hipError_t hipMemGetAccess(unsigned long long* flags, const hipMemLocation* location, void* ptr);
9346 
9362 
9376 
9390  hipMemAllocationHandleType shHandleType);
9391 
9406 hipError_t hipMemMap(void* ptr, size_t size, size_t offset, hipMemGenericAllocationHandle_t handle,
9407  unsigned long long flags);
9408 
9419 hipError_t hipMemMapArrayAsync(hipArrayMapInfo* mapInfoList, unsigned int count,
9420  hipStream_t stream);
9421 
9434 
9447 
9462 hipError_t hipMemSetAccess(void* ptr, size_t size, const hipMemAccessDesc* desc, size_t count);
9463 
9475 hipError_t hipMemUnmap(void* ptr, size_t size);
9476 
9477 // doxygen end virtual memory management API
9500  hipStream_t stream __dparm(0));
9515  unsigned int arrayIndex, unsigned int mipLevel);
9527  hipGraphicsResource_t resource);
9539  hipStream_t stream __dparm(0));
9549 // doxygen end GraphicsInterop
9584 // end of surface
9588 #ifdef __cplusplus
9589 } /* extern "c" */
9590 #endif
9591 #ifdef __cplusplus
9592 #if defined(__clang__) && defined(__HIP__)
9593 template <typename T> static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSize(
9594  int* gridSize, int* blockSize, T f, size_t dynSharedMemPerBlk = 0, int blockSizeLimit = 0) {
9595  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, reinterpret_cast<const void*>(f),
9596  dynSharedMemPerBlk, blockSizeLimit);
9597 }
9598 template <typename T> static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSizeWithFlags(
9599  int* gridSize, int* blockSize, T f, size_t dynSharedMemPerBlk = 0, int blockSizeLimit = 0,
9600  unsigned int flags = 0) {
9601  (void)flags;
9602  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, reinterpret_cast<const void*>(f),
9603  dynSharedMemPerBlk, blockSizeLimit);
9604 }
9605 #endif // defined(__clang__) && defined(__HIP__)
9606 
9616 template <typename T> hipError_t hipGetSymbolAddress(void** devPtr, const T& symbol) {
9617  return ::hipGetSymbolAddress(devPtr, (const void*)&symbol);
9618 }
9629 template <typename T> hipError_t hipGetSymbolSize(size_t* size, const T& symbol) {
9630  return ::hipGetSymbolSize(size, (const void*)&symbol);
9631 }
9632 
9641 template <typename T>
9642 hipError_t hipMemcpyToSymbol(const T& symbol, const void* src, size_t sizeBytes,
9643  size_t offset __dparm(0),
9645  return ::hipMemcpyToSymbol((const void*)&symbol, src, sizeBytes, offset, kind);
9646 }
9655 template <typename T>
9656 hipError_t hipMemcpyToSymbolAsync(const T& symbol, const void* src, size_t sizeBytes, size_t offset,
9657  hipMemcpyKind kind, hipStream_t stream __dparm(0)) {
9658  return ::hipMemcpyToSymbolAsync((const void*)&symbol, src, sizeBytes, offset, kind, stream);
9659 }
9667 template <typename T>
9668 hipError_t hipMemcpyFromSymbol(void* dst, const T& symbol, size_t sizeBytes,
9669  size_t offset __dparm(0),
9671  return ::hipMemcpyFromSymbol(dst, (const void*)&symbol, sizeBytes, offset, kind);
9672 }
9680 template <typename T>
9681 hipError_t hipMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t sizeBytes, size_t offset,
9682  hipMemcpyKind kind, hipStream_t stream __dparm(0)) {
9683  return ::hipMemcpyFromSymbolAsync(dst, (const void*)&symbol, sizeBytes, offset, kind, stream);
9684 }
9685 
9697 template <class T>
9698 inline hipError_t hipOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, T f, int blockSize,
9699  size_t dynSharedMemPerBlk) {
9700  return hipOccupancyMaxActiveBlocksPerMultiprocessor(numBlocks, reinterpret_cast<const void*>(f),
9701  blockSize, dynSharedMemPerBlk);
9702 }
9717  int* numBlocks, T f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags) {
9719  numBlocks, reinterpret_cast<const void*>(f), blockSize, dynSharedMemPerBlk, flags);
9720 }
9743 template <typename UnaryFunction, class T>
9744 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(
9745  int* min_grid_size, int* block_size, T func, UnaryFunction block_size_to_dynamic_smem_size,
9746  int block_size_limit = 0, unsigned int flags = 0) {
9747  if (min_grid_size == nullptr || block_size == nullptr ||
9748  reinterpret_cast<const void*>(func) == nullptr) {
9749  return hipErrorInvalidValue;
9750  }
9751 
9752  int dev;
9753  hipError_t status;
9754  if ((status = hipGetDevice(&dev)) != hipSuccess) {
9755  return status;
9756  }
9757 
9758  int max_threads_per_cu;
9759  if ((status = hipDeviceGetAttribute(&max_threads_per_cu,
9761  hipSuccess) {
9762  return status;
9763  }
9764 
9765  int warp_size;
9766  if ((status = hipDeviceGetAttribute(&warp_size, hipDeviceAttributeWarpSize, dev)) != hipSuccess) {
9767  return status;
9768  }
9769 
9770  int max_cu_count;
9771  if ((status = hipDeviceGetAttribute(&max_cu_count, hipDeviceAttributeMultiprocessorCount, dev)) !=
9772  hipSuccess) {
9773  return status;
9774  }
9775 
9776  struct hipFuncAttributes attr;
9777  if ((status = hipFuncGetAttributes(&attr, reinterpret_cast<const void*>(func))) != hipSuccess) {
9778  return status;
9779  }
9780 
9781  // Initial limits for the execution
9782  const int func_max_threads_per_block = attr.maxThreadsPerBlock;
9783  if (block_size_limit == 0) {
9784  block_size_limit = func_max_threads_per_block;
9785  }
9786 
9787  if (func_max_threads_per_block < block_size_limit) {
9788  block_size_limit = func_max_threads_per_block;
9789  }
9790 
9791  const int block_size_limit_aligned =
9792  ((block_size_limit + (warp_size - 1)) / warp_size) * warp_size;
9793 
9794  // For maximum search
9795  int max_threads = 0;
9796  int max_block_size{};
9797  int max_num_blocks{};
9798  for (int block_size_check_aligned = block_size_limit_aligned; block_size_check_aligned > 0;
9799  block_size_check_aligned -= warp_size) {
9800  // Make sure the logic uses the requested limit and not aligned
9801  int block_size_check =
9802  (block_size_limit < block_size_check_aligned) ? block_size_limit : block_size_check_aligned;
9803 
9804  size_t dyn_smem_size = block_size_to_dynamic_smem_size(block_size_check);
9805  int optimal_blocks;
9807  &optimal_blocks, func, block_size_check, dyn_smem_size, flags)) != hipSuccess) {
9808  return status;
9809  }
9810 
9811  int total_threads = block_size_check * optimal_blocks;
9812  if (total_threads > max_threads) {
9813  max_block_size = block_size_check;
9814  max_num_blocks = optimal_blocks;
9815  max_threads = total_threads;
9816  }
9817 
9818  // Break if the logic reached possible maximum
9819  if (max_threads_per_cu == max_threads) {
9820  break;
9821  }
9822  }
9823 
9824  // Grid size is the number of blocks per CU * CU count
9825  *min_grid_size = max_num_blocks * max_cu_count;
9826  *block_size = max_block_size;
9827 
9828  return status;
9829 }
9830 
9852 template <typename UnaryFunction, class T>
9853 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSizeVariableSMem(
9854  int* min_grid_size, int* block_size, T func, UnaryFunction block_size_to_dynamic_smem_size,
9855  int block_size_limit = 0) {
9856  return hipOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(
9857  min_grid_size, block_size, func, block_size_to_dynamic_smem_size, block_size_limit);
9858 }
9874 template <typename F> inline hipError_t hipOccupancyMaxPotentialBlockSize(int* gridSize,
9875  int* blockSize, F kernel,
9876  size_t dynSharedMemPerBlk,
9877  uint32_t blockSizeLimit) {
9878  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, (hipFunction_t)kernel,
9879  dynSharedMemPerBlk, blockSizeLimit);
9880 }
9881 
9897 template <typename F>
9898 inline hipError_t hipOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, F f,
9899  int numBlocks, int blockSize) {
9900  return hipOccupancyAvailableDynamicSMemPerBlock(dynamicSmemSize, reinterpret_cast<const void*>(f),
9901  numBlocks, blockSize);
9902 }
9924 template <class T>
9925 inline hipError_t hipLaunchCooperativeKernel(T f, dim3 gridDim, dim3 blockDim, void** kernelParams,
9926  unsigned int sharedMemBytes, hipStream_t stream) {
9927  return hipLaunchCooperativeKernel(reinterpret_cast<const void*>(f), gridDim, blockDim,
9928  kernelParams, sharedMemBytes, stream);
9929 }
9945 template <class T>
9947  unsigned int numDevices,
9948  unsigned int flags = 0) {
9949  return hipLaunchCooperativeKernelMultiDevice(launchParamsList, numDevices, flags);
9950 }
9963 template <class T>
9965  unsigned int numDevices,
9966  unsigned int flags = 0) {
9967  return hipExtLaunchMultiKernelMultiDevice(launchParamsList, numDevices, flags);
9968 }
9982 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
9983 static inline hipError_t hipBindTexture(size_t* offset, const struct texture<T, dim, readMode>& tex,
9984  const void* devPtr, size_t size = UINT_MAX) {
9985  return hipBindTexture(offset, &tex, devPtr, &tex.channelDesc, size);
9986 }
10001 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
10002 static inline hipError_t
10003  hipBindTexture(size_t* offset, const struct texture<T, dim, readMode>& tex, const void* devPtr,
10004  const struct hipChannelFormatDesc& desc, size_t size = UINT_MAX) {
10005  return hipBindTexture(offset, &tex, devPtr, &desc, size);
10006 }
10022 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
10023 static inline hipError_t
10024  hipBindTexture2D(size_t* offset, const struct texture<T, dim, readMode>& tex,
10025  const void* devPtr, size_t width, size_t height, size_t pitch) {
10026  return hipBindTexture2D(offset, &tex, devPtr, &tex.channelDesc, width, height, pitch);
10027 }
10044 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
10045 static inline hipError_t
10046  hipBindTexture2D(size_t* offset, const struct texture<T, dim, readMode>& tex,
10047  const void* devPtr, const struct hipChannelFormatDesc& desc, size_t width,
10048  size_t height, size_t pitch) {
10049  return hipBindTexture2D(offset, &tex, devPtr, &desc, width, height, pitch);
10050 }
10062 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
10063 static inline hipError_t
10065  struct hipChannelFormatDesc desc;
10068 }
10081 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
10082 static inline hipError_t
10084  const struct hipChannelFormatDesc& desc) {
10085  return hipBindTextureToArray(&tex, array, &desc);
10086 }
10098 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
10101  struct hipChannelFormatDesc desc;
10104  if (err != hipSuccess) {
10105  return err;
10106  }
10109 }
10122 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
10125  const struct hipChannelFormatDesc& desc) {
10127 }
10138 template <class T, int dim, enum hipTextureReadMode readMode> HIP_DEPRECATED(HIP_DEPRECATED_MSG)
10139 static inline hipError_t hipUnbindTexture(const struct texture<T, dim, readMode>& tex) {
10140  return hipUnbindTexture(&tex);
10141 }
10165 static inline hipError_t hipMallocAsync(void** dev_ptr, size_t size, hipMemPool_t mem_pool,
10166  hipStream_t stream) {
10167  return hipMallocFromPoolAsync(dev_ptr, size, mem_pool, stream);
10168 }
10179 template <class T> static inline hipError_t hipMallocAsync(T** dev_ptr, size_t size,
10180  hipMemPool_t mem_pool,
10181  hipStream_t stream) {
10182  return hipMallocFromPoolAsync(reinterpret_cast<void**>(dev_ptr), size, mem_pool, stream);
10183 }
10194 template <class T>
10195 static inline hipError_t hipMallocAsync(T** dev_ptr, size_t size, hipStream_t stream) {
10196  return hipMallocAsync(reinterpret_cast<void**>(dev_ptr), size, stream);
10197 }
10208 template <class T> static inline hipError_t hipMallocFromPoolAsync(T** dev_ptr, size_t size,
10209  hipMemPool_t mem_pool,
10210  hipStream_t stream) {
10211  return hipMallocFromPoolAsync(reinterpret_cast<void**>(dev_ptr), size, mem_pool, stream);
10212 }
10226 template <typename... KernelArgs, typename... Params>
10227 static inline __host__ hipError_t hipLaunchKernelEx(const hipLaunchConfig_t* config,
10228  void (*kernel)(KernelArgs...),
10229  Params&&... args) {
10230  return [&](KernelArgs... convertedArgs) {
10231  void* pArgs[] = {&convertedArgs...};
10232  return ::hipLaunchKernelExC(config, reinterpret_cast<void*>(kernel), pArgs);
10233  }(std::forward<Params>(args)...);
10234 }
10240 #endif // __cplusplus
10241 
10242 #ifdef __GNUC__
10243 #pragma GCC visibility pop
10244 #endif
10245 
10246 
10247 #elif !defined(__HIP_PLATFORM_AMD__) && defined(__HIP_PLATFORM_NVIDIA__)
10248 #include "hip/nvidia_detail/nvidia_hip_runtime_api.h"
10249 #else
10250 #error ("Must define exactly one of __HIP_PLATFORM_AMD__ or __HIP_PLATFORM_NVIDIA__");
10251 #endif
10252 
10253 
10265 #if defined(__cplusplus) && !defined(__HIP_DISABLE_CPP_FUNCTIONS__)
10266 template <class T> static inline hipError_t hipMalloc(T** devPtr, size_t size) {
10267  return hipMalloc((void**)devPtr, size);
10268 }
10280 template <class T>
10281 static inline hipError_t hipMallocPitch(T** devPtr, size_t* pitch, size_t width, size_t height) {
10282  return hipMallocPitch((void**)devPtr, pitch, width, height);
10283 }
10296 template <class T>
10297 static inline hipError_t hipHostMalloc(T** ptr, size_t size,
10298  unsigned int flags = hipHostMallocDefault) {
10299  return hipHostMalloc((void**)ptr, size, flags);
10300 }
10313 template <class T> static inline hipError_t hipHostAlloc(T** ptr, size_t size,
10314  unsigned int flags = hipHostAllocDefault) {
10315  return hipHostAlloc((void**)ptr, size, flags);
10316 }
10331 template <class T>
10332 static inline hipError_t hipMallocManaged(T** devPtr, size_t size,
10333  unsigned int flags = hipMemAttachGlobal) {
10334  return hipMallocManaged((void**)devPtr, size, flags);
10335 }
10336 
10337 
10338 #endif
10339 #endif
10340 // doxygen end HIP API
10344 #include <hip/amd_detail/amd_hip_runtime_pt_api.h>
10345 
10346 #if USE_PROF_API
10347 #include <hip/amd_detail/hip_prof_str.h>
10348 #endif
hipError_t err
Definition: hip_runtime_api.h:10066
const struct texture< T, dim, readMode > & tex
Definition: hip_runtime_api.h:9983
const struct texture< T, dim, readMode > const void size_t size
Definition: hip_runtime_api.h:9984
const struct texture< T, dim, readMode > const void size_t int enum hipTextureReadMode readMode const struct texture< T, dim, readMode > const void const struct hipChannelFormatDesc size_t int enum hipTextureReadMode readMode const struct texture< T, dim, readMode > const void size_t size_t size_t pitch
Definition: hip_runtime_api.h:10025
hipArray_t levelArray
Definition: hip_runtime_api.h:10102
const struct texture< T, dim, readMode > const void size_t int dim
Definition: hip_runtime_api.h:10001
readMode hipMipmappedArray_const_t mipmappedArray
Definition: hip_runtime_api.h:10100
const struct texture< T, dim, readMode > const void size_t int enum hipTextureReadMode readMode const struct texture< T, dim, readMode > const void const struct hipChannelFormatDesc size_t int enum hipTextureReadMode readMode const struct texture< T, dim, readMode > const void size_t size_t height
Definition: hip_runtime_api.h:10025
const struct texture< T, dim, readMode > const void * devPtr
Definition: hip_runtime_api.h:9984
const struct texture< T, dim, readMode > const void size_t int enum hipTextureReadMode readMode const struct texture< T, dim, readMode > const void const struct hipChannelFormatDesc & desc
Definition: hip_runtime_api.h:10004
readMode hipArray_const_t array
Definition: hip_runtime_api.h:10064
const struct texture< T, dim, readMode > const void size_t int enum hipTextureReadMode readMode const struct texture< T, dim, readMode > const void const struct hipChannelFormatDesc size_t int enum hipTextureReadMode readMode const struct texture< T, dim, readMode > const void size_t width
Definition: hip_runtime_api.h:10025
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 [Deprecated].
hipError_t hipCtxGetApiVersion(hipCtx_t ctx, unsigned int *apiVersion)
Returns the approximate HIP api version.
hipError_t hipCtxPopCurrent(hipCtx_t *ctx)
Pop the current/default context and return the popped context [Deprecated].
hipError_t hipCtxGetSharedMemConfig(hipSharedMemConfig *pConfig)
Get Shared memory bank configuration [Deprecated].
hipError_t hipDevicePrimaryCtxSetFlags(hipDevice_t dev, unsigned int flags)
Set flags for the primary context [Deprecated].
hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int *flags, int *active)
Get the state of the primary context [Deprecated].
hipError_t hipCtxGetCurrent(hipCtx_t *ctx)
Get the handle of the current/ default context [Deprecated].
hipError_t hipDevicePrimaryCtxRelease(hipDevice_t dev)
Release the primary context on the GPU.
hipError_t hipCtxSetCacheConfig(hipFuncCache_t cacheConfig)
Set L1/Shared cache partition [Deprecated].
hipError_t hipCtxSetCurrent(hipCtx_t ctx)
Set the passed context as current/default [Deprecated].
hipError_t hipCtxEnablePeerAccess(hipCtx_t peerCtx, unsigned int flags)
Enables direct access to memory allocations in a peer context [Deprecated].
hipError_t hipCtxGetDevice(hipDevice_t *device)
Get the handle of the device associated with current/default context [Deprecated].
hipError_t hipCtxDestroy(hipCtx_t ctx)
Destroy a HIP context [Deprecated].
hipError_t hipCtxPushCurrent(hipCtx_t ctx)
Push the context to be set as current/ default context [Deprecated].
hipError_t hipCtxGetCacheConfig(hipFuncCache_t *cacheConfig)
Get Cache configuration for a specific function [Deprecated].
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 [Deprecated].
hipError_t hipDevicePrimaryCtxReset(hipDevice_t dev)
Resets the primary context on the GPU [Deprecated].
hipError_t hipCtxSynchronize(void)
Blocks until the default context has completed all preceding requested tasks [Deprecated].
hipError_t hipCtxSetSharedMemConfig(hipSharedMemConfig config)
Set Shared memory bank configuration [Deprecated].
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 hipDeviceGetTexture1DLinearMaxWidth(size_t *max_width, const hipChannelFormatDesc *desc, int device)
Gets the maximum width for 1D linear textures on the specified device.
hipError_t hipSetDeviceFlags(unsigned flags)
The current device behavior is changed according to 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.
hipMemcpyKind
Definition: driver_types.h:373
hipPointer_attribute
Definition: driver_types.h:634
struct hipArray * hipArray_t
Definition: driver_types.h:75
void * hipDeviceptr_t
Definition: driver_types.h:46
hipFunction_attribute
Definition: driver_types.h:613
const struct hipArray * hipArray_const_t
Definition: driver_types.h:76
hipArray_Format
Definition: driver_types.h:80
hipResourceType
Definition: driver_types.h:159
@ hipMemcpyDeviceToHost
Device-to-Host Copy.
Definition: driver_types.h:376
@ hipMemcpyHostToDevice
Host-to-Device Copy.
Definition: driver_types.h:375
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 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 hipEventRecordWithFlags(hipEvent_t event, hipStream_t stream, unsigned int flags)
Record an event in the specified stream.
hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream=NULL)
Record an event in the specified stream.
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 hipFuncGetAttributes(struct hipFuncAttributes *attr, const void *func)
Find out attributes for a given function.
hipError_t hipLaunchKernelExC(const hipLaunchConfig_t *config, const void *fPtr, void **args)
Launches a HIP kernel using a generic function pointer and the specified configuration.
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 hipFuncSetSharedMemConfig(const void *func, hipSharedMemConfig config)
Set shared memory configuation for a specific function.
hipError_t hipFuncGetAttribute(int *value, hipFunction_attribute attrib, hipFunction_t hfunc)
Find out a specific attribute for a given function.
hipError_t hipFuncSetAttribute(const void *func, hipFuncAttribute attr, int value)
Set attribute for a specific function.
hipError_t hipDrvLaunchKernelEx(const HIP_LAUNCH_CONFIG *config, hipFunction_t f, void **params, void **extra)
Launches a HIP kernel using the driver API with the specified configuration.
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.
hipLimit_t
Definition: hip_runtime_api.h:724
hipMemRangeHandleType
Definition: hip_runtime_api.h:2007
hipMemAllocationHandleType
Definition: hip_runtime_api.h:1221
hipGraphicsResource * hipGraphicsResource_t
Definition: hip_runtime_api.h:1444
struct ihipCtx_t * hipCtx_t
Definition: hip_runtime_api.h:671
#define __dparm(x)
Definition: hip_runtime_api.h:653
struct ihipStream_t * hipStream_t
Definition: hip_runtime_api.h:685
hipGraphInstantiateResult
Definition: hip_runtime_api.h:1721
int hipDevice_t
Definition: hip_runtime_api.h:673
hipAccessProperty
Definition: hip_runtime_api.h:1522
struct ihipLinkState_t * hipLinkState_t
Definition: hip_runtime_api.h:696
hipGraphDependencyType
Definition: hip_runtime_api.h:1943
hipMemRangeAttribute
Definition: hip_runtime_api.h:1115
#define hipMemAttachSingle
Definition: hip_runtime_api.h:877
hipMemoryAdvise
Definition: hip_runtime_api.h:1082
#define hipArrayDefault
Definition: hip_runtime_api.h:936
hipSharedMemConfig
Definition: hip_runtime_api.h:1273
#define hipKernelNodeAttrValue
Definition: hip_runtime_api.h:1624
hipComputeMode
Definition: hip_runtime_api.h:613
struct ihipEvent_t * hipEvent_t
Definition: hip_runtime_api.h:716
hipStreamCaptureMode
Definition: hip_runtime_api.h:1653
hipStreamBatchMemOpType
Definition: hip_runtime_api.h:957
hipDriverProcAddressQueryResult
Definition: hip_runtime_api.h:607
#define HIP_DEPRECATED_MSG
Definition: hip_runtime_api.h:645
hipLaunchAttributeID
Definition: hip_runtime_api.h:1570
struct ihipKernel_t * hipKernel_t
Definition: hip_runtime_api.h:698
hipSynchronizationPolicy
Definition: hip_runtime_api.h:1560
hipGraphNodeType
Definition: hip_runtime_api.h:1468
hipExternalMemoryHandleType
Definition: hip_runtime_api.h:1318
#define hipMemAttachGlobal
Definition: hip_runtime_api.h:871
struct ihipLibrary_t * hipLibrary_t
Definition: hip_runtime_api.h:697
hipFuncAttribute
Definition: hip_runtime_api.h:1254
hipExternalSemaphoreHandleType
Definition: hip_runtime_api.h:1356
hipLaunchMemSyncDomain
Definition: hip_runtime_api.h:1551
hipDeviceP2PAttr
Definition: hip_runtime_api.h:674
hipGraphDebugDotFlags
Definition: hip_runtime_api.h:1699
hipUserObjectRetainFlags
Definition: hip_runtime_api.h:1684
#define hipStreamAttrID
Definition: hip_runtime_api.h:1604
enum __HIP_NODISCARD hipError_t hipError_t
Definition: hip_runtime_api.h:305
#define hipHostAllocDefault
Definition: hip_runtime_api.h:813
void(* hipHostFn_t)(void *userData)
Definition: hip_runtime_api.h:1487
#define hipOccupancyDefault
Definition: hip_runtime_api.h:941
hipStreamUpdateCaptureDependenciesFlags
Definition: hip_runtime_api.h:1665
struct ihipGraph * hipGraph_t
Definition: hip_runtime_api.h:1449
#define hipChooseDevice
Definition: hip_runtime_api.h:105
hipMemHandleType
Definition: hip_runtime_api.h:1803
hipFlushGPUDirectRDMAWritesOptions
Definition: hip_runtime_api.h:620
hipFuncCache_t
Definition: hip_runtime_api.h:1264
hipUserObjectFlags
Definition: hip_runtime_api.h:1680
#define __HIP_NODISCARD
Definition: hip_runtime_api.h:295
hipGraphMemAttributeType
Definition: hip_runtime_api.h:1670
hipMemPoolAttr
Definition: hip_runtime_api.h:1130
hipDriverEntryPointQueryResult
Definition: hip_runtime_api.h:680
hipMemRangeFlags
Definition: hip_runtime_api.h:2015
#define hipDeviceProp_t
Definition: hip_runtime_api.h:104
struct ihipModule_t * hipModule_t
Definition: hip_runtime_api.h:694
struct hipUserObject * hipUserObject_t
Definition: hip_runtime_api.h:1462
hipMemOperationType
Definition: hip_runtime_api.h:1810
void * hipExternalSemaphore_t
Definition: hip_runtime_api.h:1381
hipGraphicsRegisterFlags
Definition: hip_runtime_api.h:1432
#define hipStreamAttrValue
Definition: hip_runtime_api.h:1611
hipMemRangeCoherencyMode
Definition: hip_runtime_api.h:1103
hipMemAccessFlags
Definition: hip_runtime_api.h:1190
hipMemAllocationGranularity_flags
Definition: hip_runtime_api.h:1795
struct hipGraphExec * hipGraphExec_t
Definition: hip_runtime_api.h:1457
hipGraphExecUpdateResult
Definition: hip_runtime_api.h:1638
struct ihipModuleSymbol_t * hipFunction_t
Definition: hip_runtime_api.h:695
#define hipKernelNodeAttrID
Definition: hip_runtime_api.h:1616
void * hipExternalMemory_t
Definition: hip_runtime_api.h:1355
hipStreamCaptureStatus
Definition: hip_runtime_api.h:1658
hipDeviceAttribute_t
Definition: hip_runtime_api.h:427
hipGPUDirectRDMAWritesOrdering
Definition: hip_runtime_api.h:625
#define hipGetDeviceProperties
Definition: hip_runtime_api.h:103
#define hipHostMallocDefault
Definition: hip_runtime_api.h:817
#define HIP_DEPRECATED(msg)
Definition: hip_runtime_api.h:643
struct _hipGraphicsResource hipGraphicsResource
Definition: hip_runtime_api.h:1442
hipMemAllocationType
Definition: hip_runtime_api.h:1208
struct hipGraphNode * hipGraphNode_t
Definition: hip_runtime_api.h:1453
struct ihipMemGenericAllocationHandle * hipMemGenericAllocationHandle_t
Definition: hip_runtime_api.h:1790
hipMemoryType
Definition: hip_runtime_api.h:263
hipGraphInstantiateFlags
Definition: hip_runtime_api.h:1688
#define HIP_IPC_HANDLE_SIZE
Definition: hip_runtime_api.h:687
struct ihipMemPoolHandle_t * hipMemPool_t
Definition: hip_runtime_api.h:702
hipArraySparseSubresourceType
Definition: hip_runtime_api.h:1818
@ hipExtLimitScratchMin
Definition: hip_runtime_api.h:732
@ hipLimitMallocHeapSize
Definition: hip_runtime_api.h:730
@ hipLimitStackSize
Definition: hip_runtime_api.h:725
@ hipLimitRange
Supported limit range.
Definition: hip_runtime_api.h:740
@ hipLimitPrintfFifoSize
Definition: hip_runtime_api.h:728
@ hipExtLimitScratchMax
Definition: hip_runtime_api.h:734
@ hipExtLimitScratchCurrent
Definition: hip_runtime_api.h:736
@ hipMemRangeHandleTypeMax
Definition: hip_runtime_api.h:2009
@ hipMemRangeHandleTypeDmaBufFd
Definition: hip_runtime_api.h:2008
@ hipMemHandleTypeWin32
Allows a Win32 NT handle for exporting. (HANDLE)
Definition: hip_runtime_api.h:1225
@ hipMemHandleTypeWin32Kmt
Allows a Win32 KMT handle for exporting. (D3DKMT_HANDLE)
Definition: hip_runtime_api.h:1226
@ hipMemHandleTypeNone
Does not allow any export mechanism.
Definition: hip_runtime_api.h:1222
@ hipMemHandleTypePosixFileDescriptor
Allows a file descriptor for exporting. Permitted only on POSIX systems.
Definition: hip_runtime_api.h:1223
@ hipGraphInstantiateNodeOperationNotSupported
Definition: hip_runtime_api.h:1727
@ hipGraphInstantiateMultipleDevicesNotSupported
Definition: hip_runtime_api.h:1729
@ hipGraphInstantiateError
Definition: hip_runtime_api.h:1723
@ hipGraphInstantiateInvalidStructure
Definition: hip_runtime_api.h:1725
@ hipGraphInstantiateSuccess
Definition: hip_runtime_api.h:1722
@ hipAccessPropertyNormal
Normal cache persistence.
Definition: hip_runtime_api.h:1523
@ hipAccessPropertyPersisting
Persisting access is more likely to persist in cache.
Definition: hip_runtime_api.h:1525
@ hipAccessPropertyStreaming
Streaming access is less likely to persist from cache.
Definition: hip_runtime_api.h:1524
@ hipGraphDependencyTypeDefault
Definition: hip_runtime_api.h:1944
@ hipGraphDependencyTypeProgrammatic
Definition: hip_runtime_api.h:1945
@ hipMemRangeAttributeLastPrefetchLocation
Definition: hip_runtime_api.h:1121
@ hipMemRangeAttributePreferredLocation
The preferred location of the range.
Definition: hip_runtime_api.h:1118
@ hipMemRangeAttributeAccessedBy
Definition: hip_runtime_api.h:1119
@ hipMemRangeAttributeReadMostly
Definition: hip_runtime_api.h:1116
@ hipMemRangeAttributeCoherencyMode
Definition: hip_runtime_api.h:1123
@ hipMemAdviseUnsetAccessedBy
Definition: hip_runtime_api.h:1091
@ hipMemAdviseUnsetCoarseGrain
Restores cache coherency policy back to fine-grain.
Definition: hip_runtime_api.h:1098
@ hipMemAdviseSetCoarseGrain
Definition: hip_runtime_api.h:1093
@ hipMemAdviseUnsetPreferredLocation
Clear the preferred location for the data.
Definition: hip_runtime_api.h:1088
@ hipMemAdviseSetAccessedBy
Definition: hip_runtime_api.h:1089
@ hipMemAdviseSetPreferredLocation
Definition: hip_runtime_api.h:1086
@ hipMemAdviseSetReadMostly
Definition: hip_runtime_api.h:1083
@ hipMemAdviseUnsetReadMostly
Undo the effect of hipMemAdviseSetReadMostly.
Definition: hip_runtime_api.h:1085
@ hipSharedMemBankSizeFourByte
Definition: hip_runtime_api.h:1275
@ hipSharedMemBankSizeEightByte
Definition: hip_runtime_api.h:1277
@ hipSharedMemBankSizeDefault
The compiler selects a device-specific value for the banking.
Definition: hip_runtime_api.h:1274
@ hipComputeModeProhibited
Definition: hip_runtime_api.h:616
@ hipComputeModeExclusive
Definition: hip_runtime_api.h:615
@ hipComputeModeDefault
Definition: hip_runtime_api.h:614
@ hipComputeModeExclusiveProcess
Definition: hip_runtime_api.h:617
@ hipStreamCaptureModeRelaxed
Definition: hip_runtime_api.h:1656
@ hipStreamCaptureModeThreadLocal
Definition: hip_runtime_api.h:1655
@ hipStreamCaptureModeGlobal
Definition: hip_runtime_api.h:1654
@ hipStreamMemOpWriteValue64
Definition: hip_runtime_api.h:961
@ hipStreamMemOpBarrier
Currently not supported.
Definition: hip_runtime_api.h:962
@ hipStreamMemOpWriteValue32
Definition: hip_runtime_api.h:959
@ hipStreamMemOpWaitValue32
Definition: hip_runtime_api.h:958
@ hipStreamMemOpWaitValue64
Definition: hip_runtime_api.h:960
@ hipStreamMemOpFlushRemoteWrites
Currently not supported.
Definition: hip_runtime_api.h:963
@ HIP_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND
Definition: hip_runtime_api.h:609
@ HIP_GET_PROC_ADDRESS_SUCCESS
Definition: hip_runtime_api.h:608
@ HIP_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT
Definition: hip_runtime_api.h:610
@ hipLaunchAttributePriority
Valid for graph node, streams, launches.
Definition: hip_runtime_api.h:1574
@ hipLaunchAttributeMax
Definition: hip_runtime_api.h:1577
@ hipLaunchAttributeMemSyncDomain
Valid for streams, graph nodes, launches.
Definition: hip_runtime_api.h:1576
@ hipLaunchAttributeMemSyncDomainMap
Valid for streams, graph nodes, launches.
Definition: hip_runtime_api.h:1575
@ hipLaunchAttributeSynchronizationPolicy
Valid for streams.
Definition: hip_runtime_api.h:1573
@ hipLaunchAttributeAccessPolicyWindow
Valid for Streams, graph nodes, launches.
Definition: hip_runtime_api.h:1571
@ hipLaunchAttributeCooperative
Valid for graph nodes, launches.
Definition: hip_runtime_api.h:1572
@ hipSyncPolicyYield
Definition: hip_runtime_api.h:1563
@ hipSyncPolicyBlockingSync
Definition: hip_runtime_api.h:1564
@ hipSyncPolicyAuto
Definition: hip_runtime_api.h:1561
@ hipSyncPolicySpin
Definition: hip_runtime_api.h:1562
@ hipGraphNodeTypeBatchMemOp
BatchMemOp node.
Definition: hip_runtime_api.h:1483
@ hipGraphNodeTypeGraph
Node which executes an embedded graph.
Definition: hip_runtime_api.h:1473
@ hipGraphNodeTypeMemset
Memset node.
Definition: hip_runtime_api.h:1471
@ hipGraphNodeTypeEventRecord
External event record node.
Definition: hip_runtime_api.h:1476
@ hipGraphNodeTypeExtSemaphoreSignal
External Semaphore signal node.
Definition: hip_runtime_api.h:1477
@ hipGraphNodeTypeMemcpy
Memcpy node.
Definition: hip_runtime_api.h:1470
@ hipGraphNodeTypeWaitEvent
External event wait node.
Definition: hip_runtime_api.h:1475
@ hipGraphNodeTypeCount
Definition: hip_runtime_api.h:1484
@ hipGraphNodeTypeKernel
GPU kernel node.
Definition: hip_runtime_api.h:1469
@ hipGraphNodeTypeHost
Host (executable) node.
Definition: hip_runtime_api.h:1472
@ hipGraphNodeTypeMemAlloc
Memory alloc node.
Definition: hip_runtime_api.h:1479
@ hipGraphNodeTypeMemFree
Memory free node.
Definition: hip_runtime_api.h:1480
@ hipGraphNodeTypeMemcpyFromSymbol
MemcpyFromSymbol node.
Definition: hip_runtime_api.h:1481
@ hipGraphNodeTypeMemcpyToSymbol
MemcpyToSymbol node.
Definition: hip_runtime_api.h:1482
@ hipGraphNodeTypeEmpty
Empty (no-op) node.
Definition: hip_runtime_api.h:1474
@ hipGraphNodeTypeExtSemaphoreWait
External Semaphore wait node.
Definition: hip_runtime_api.h:1478
@ hipExternalMemoryHandleTypeD3D11Resource
Definition: hip_runtime_api.h:1324
@ hipExternalMemoryHandleTypeD3D12Resource
Definition: hip_runtime_api.h:1323
@ hipExternalMemoryHandleTypeNvSciBuf
Definition: hip_runtime_api.h:1326
@ hipExternalMemoryHandleTypeOpaqueFd
Definition: hip_runtime_api.h:1319
@ hipExternalMemoryHandleTypeD3D12Heap
Definition: hip_runtime_api.h:1322
@ hipExternalMemoryHandleTypeOpaqueWin32Kmt
Definition: hip_runtime_api.h:1321
@ hipExternalMemoryHandleTypeOpaqueWin32
Definition: hip_runtime_api.h:1320
@ hipExternalMemoryHandleTypeD3D11ResourceKmt
Definition: hip_runtime_api.h:1325
@ hipFuncAttributePreferredSharedMemoryCarveout
Sets the percentage of total shared memory allocated as the shared memory carveout.
Definition: hip_runtime_api.h:1257
@ hipFuncAttributeMaxDynamicSharedMemorySize
The maximum number of bytes requested for dynamically allocated shared memory.
Definition: hip_runtime_api.h:1255
@ hipFuncAttributeMax
Definition: hip_runtime_api.h:1259
@ hipExternalSemaphoreHandleTypeNvSciSync
Definition: hip_runtime_api.h:1362
@ hipExternalSemaphoreHandleTypeKeyedMutexKmt
Definition: hip_runtime_api.h:1364
@ hipExternalSemaphoreHandleTypeOpaqueWin32Kmt
Definition: hip_runtime_api.h:1359
@ hipExternalSemaphoreHandleTypeKeyedMutex
Definition: hip_runtime_api.h:1363
@ hipExternalSemaphoreHandleTypeD3D11Fence
Definition: hip_runtime_api.h:1361
@ hipExternalSemaphoreHandleTypeTimelineSemaphoreWin32
Definition: hip_runtime_api.h:1366
@ hipExternalSemaphoreHandleTypeOpaqueFd
Definition: hip_runtime_api.h:1357
@ hipExternalSemaphoreHandleTypeOpaqueWin32
Definition: hip_runtime_api.h:1358
@ hipExternalSemaphoreHandleTypeTimelineSemaphoreFd
Definition: hip_runtime_api.h:1365
@ hipExternalSemaphoreHandleTypeD3D12Fence
Definition: hip_runtime_api.h:1360
@ hipLaunchMemSyncDomainRemote
Definition: hip_runtime_api.h:1553
@ hipLaunchMemSyncDomainDefault
Definition: hip_runtime_api.h:1552
@ hipDevP2PAttrAccessSupported
Definition: hip_runtime_api.h:676
@ hipDevP2PAttrHipArrayAccessSupported
Definition: hip_runtime_api.h:678
@ hipDevP2PAttrNativeAtomicSupported
Definition: hip_runtime_api.h:677
@ hipDevP2PAttrPerformanceRank
Definition: hip_runtime_api.h:675
@ hipGraphDebugDotFlagsKernelNodeAttributes
Definition: hip_runtime_api.h:1712
@ hipGraphDebugDotFlagsMemsetNodeParams
Definition: hip_runtime_api.h:1704
@ hipGraphDebugDotFlagsKernelNodeParams
Definition: hip_runtime_api.h:1702
@ hipGraphDebugDotFlagsExtSemasWaitNodeParams
Definition: hip_runtime_api.h:1710
@ hipGraphDebugDotFlagsHandles
Definition: hip_runtime_api.h:1714
@ hipGraphDebugDotFlagsExtSemasSignalNodeParams
Definition: hip_runtime_api.h:1708
@ hipGraphDebugDotFlagsHostNodeParams
Definition: hip_runtime_api.h:1705
@ hipGraphDebugDotFlagsEventNodeParams
Definition: hip_runtime_api.h:1706
@ hipGraphDebugDotFlagsVerbose
Definition: hip_runtime_api.h:1700
@ hipGraphDebugDotFlagsMemcpyNodeParams
Definition: hip_runtime_api.h:1703
@ hipGraphUserObjectMove
Add new reference or retain.
Definition: hip_runtime_api.h:1685
@ hipStreamAddCaptureDependencies
Add new nodes to the dependency set.
Definition: hip_runtime_api.h:1666
@ hipStreamSetCaptureDependencies
Replace the dependency set with the new nodes.
Definition: hip_runtime_api.h:1667
@ hipMemHandleTypeGeneric
Generic handle type.
Definition: hip_runtime_api.h:1804
@ hipFlushGPUDirectRDMAWritesOptionHost
Definition: hip_runtime_api.h:621
@ hipFlushGPUDirectRDMAWritesOptionMemOps
Definition: hip_runtime_api.h:622
@ hipFuncCachePreferNone
no preference for shared memory or L1 (default)
Definition: hip_runtime_api.h:1265
@ hipFuncCachePreferEqual
prefer equal size L1 cache and shared memory
Definition: hip_runtime_api.h:1268
@ hipFuncCachePreferL1
prefer larger L1 cache and smaller shared memory
Definition: hip_runtime_api.h:1267
@ hipFuncCachePreferShared
prefer larger shared memory and smaller L1 cache
Definition: hip_runtime_api.h:1266
@ hipUserObjectNoDestructorSync
Destructor execution is not synchronized.
Definition: hip_runtime_api.h:1681
@ hipGraphMemAttrReservedMemHigh
Definition: hip_runtime_api.h:1677
@ hipGraphMemAttrUsedMemCurrent
Amount of memory, in bytes, currently associated with graphs.
Definition: hip_runtime_api.h:1671
@ hipGraphMemAttrUsedMemHigh
Definition: hip_runtime_api.h:1673
@ hipGraphMemAttrReservedMemCurrent
Definition: hip_runtime_api.h:1675
@ hipMemPoolAttrUsedMemCurrent
Definition: hip_runtime_api.h:1177
@ hipMemPoolAttrReservedMemHigh
Definition: hip_runtime_api.h:1172
@ hipMemPoolAttrReservedMemCurrent
Definition: hip_runtime_api.h:1166
@ hipMemPoolAttrReleaseThreshold
Definition: hip_runtime_api.h:1161
@ hipMemPoolAttrUsedMemHigh
Definition: hip_runtime_api.h:1183
@ hipMemPoolReuseAllowInternalDependencies
Definition: hip_runtime_api.h:1152
@ hipMemPoolReuseFollowEventDependencies
Definition: hip_runtime_api.h:1139
@ hipMemPoolReuseAllowOpportunistic
Definition: hip_runtime_api.h:1145
@ hipDriverEntryPointSuccess
Definition: hip_runtime_api.h:681
@ hipDriverEntryPointSymbolNotFound
Definition: hip_runtime_api.h:682
@ hipDriverEntryPointVersionNotSufficent
Definition: hip_runtime_api.h:683
@ hipMemRangeFlagsMax
Definition: hip_runtime_api.h:2017
@ hipMemRangeFlagDmaBufMappingTypePcie
Definition: hip_runtime_api.h:2016
@ hipMemOperationTypeMap
Map operation.
Definition: hip_runtime_api.h:1811
@ hipMemOperationTypeUnmap
Unmap operation.
Definition: hip_runtime_api.h:1812
@ hipGraphicsRegisterFlagsReadOnly
HIP will not write to this registered resource.
Definition: hip_runtime_api.h:1434
@ hipGraphicsRegisterFlagsTextureGather
HIP will perform texture gather operations on this registered resource.
Definition: hip_runtime_api.h:1438
@ hipGraphicsRegisterFlagsWriteDiscard
HIP will only write and will not read from this registered resource.
Definition: hip_runtime_api.h:1435
@ hipGraphicsRegisterFlagsNone
Definition: hip_runtime_api.h:1433
@ hipGraphicsRegisterFlagsSurfaceLoadStore
HIP will bind this resource to a surface.
Definition: hip_runtime_api.h:1437
@ hipMemRangeCoherencyModeFineGrain
Definition: hip_runtime_api.h:1104
@ hipMemRangeCoherencyModeIndeterminate
Definition: hip_runtime_api.h:1108
@ hipMemRangeCoherencyModeCoarseGrain
Definition: hip_runtime_api.h:1106
@ hipMemAccessFlagsProtRead
Set the address range read accessible.
Definition: hip_runtime_api.h:1192
@ hipMemAccessFlagsProtNone
Default, make the address range not accessible.
Definition: hip_runtime_api.h:1191
@ hipMemAccessFlagsProtReadWrite
Set the address range read-write accessible.
Definition: hip_runtime_api.h:1193
@ hipMemAllocationGranularityMinimum
Minimum granularity.
Definition: hip_runtime_api.h:1796
@ hipMemAllocationGranularityRecommended
Recommended granularity for performance.
Definition: hip_runtime_api.h:1797
@ hipGraphExecUpdateErrorNotSupported
The update failed because something about the node is not supported.
Definition: hip_runtime_api.h:1648
@ hipGraphExecUpdateErrorNodeTypeChanged
The update failed because a node type changed.
Definition: hip_runtime_api.h:1643
@ hipGraphExecUpdateErrorTopologyChanged
The update failed because the topology changed.
Definition: hip_runtime_api.h:1642
@ hipGraphExecUpdateErrorUnsupportedFunctionChange
Definition: hip_runtime_api.h:1650
@ hipGraphExecUpdateError
Definition: hip_runtime_api.h:1640
@ hipGraphExecUpdateErrorFunctionChanged
The update failed because the function of a kernel node changed.
Definition: hip_runtime_api.h:1644
@ hipGraphExecUpdateSuccess
The update succeeded.
Definition: hip_runtime_api.h:1639
@ hipGraphExecUpdateErrorParametersChanged
The update failed because the parameters changed in a way that is not supported.
Definition: hip_runtime_api.h:1646
@ hipStreamCaptureStatusInvalidated
Definition: hip_runtime_api.h:1661
@ hipStreamCaptureStatusNone
Stream is not capturing.
Definition: hip_runtime_api.h:1659
@ hipStreamCaptureStatusActive
Stream is actively capturing.
Definition: hip_runtime_api.h:1660
@ hipDeviceAttributeDirectManagedMemAccessFromHost
Definition: hip_runtime_api.h:452
@ hipDeviceAttributeSurfaceAlignment
Alignment requirement for surfaces.
Definition: hip_runtime_api.h:542
@ hipDeviceAttributeMaxGridDimX
Max grid size in width.
Definition: hip_runtime_api.h:473
@ hipDeviceAttributeMaxSurfaceCubemapLayered
Definition: hip_runtime_api.h:482
@ hipDeviceAttributeMaxSurface3D
Maximum dimension (width, height, depth) of 3D surface.
Definition: hip_runtime_api.h:480
@ hipDeviceAttributeMaxPitch
Maximum pitch in bytes allowed by memory copies.
Definition: hip_runtime_api.h:507
@ hipDeviceAttributeTccDriver
Cuda only. Whether device is a Tesla device using TCC driver.
Definition: hip_runtime_api.h:543
@ hipDeviceAttributeHostNativeAtomicSupported
Definition: hip_runtime_api.h:455
@ hipDeviceAttributePageableMemoryAccessUsesHostPageTables
Definition: hip_runtime_api.h:520
@ hipDeviceAttributeUnused5
Previously hipDeviceAttributeGcnArchName.
Definition: hip_runtime_api.h:572
@ hipDeviceAttributeMaxBlockDimY
Max block size in height.
Definition: hip_runtime_api.h:471
@ hipDeviceAttributeMaxSurfaceCubemap
Cuda only. Maximum dimensions of Cubemap surface.
Definition: hip_runtime_api.h:481
@ hipDeviceAttributePageableMemoryAccess
Definition: hip_runtime_api.h:518
@ hipDeviceAttributeClockRate
Peak clock frequency in kilohertz.
Definition: hip_runtime_api.h:440
@ hipDeviceAttributeCudaCompatibleEnd
Definition: hip_runtime_api.h:563
@ hipDeviceAttributeMaxTexture1DMipmap
Maximum size of 1D mipmapped texture.
Definition: hip_runtime_api.h:489
@ hipDeviceAttributeComputeCapabilityMajor
Major compute capability version number.
Definition: hip_runtime_api.h:467
@ hipDeviceAttributeGlobalL1CacheSupported
Device supports caching globals in L1.
Definition: hip_runtime_api.h:454
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedSharedMem
Definition: hip_runtime_api.h:584
@ hipDeviceAttributeAccessPolicyMaxWindowSize
Definition: hip_runtime_api.h:432
@ hipDeviceAttributeMaxTexture3DHeight
Maximum dimension height of 3D texture.
Definition: hip_runtime_api.h:499
@ hipDeviceAttributeComputeCapabilityMinor
Minor compute capability version number.
Definition: hip_runtime_api.h:510
@ hipDeviceAttributeNumberOfXccs
The number of XCC(s) on the device.
Definition: hip_runtime_api.h:596
@ hipDeviceAttributeMaxTextureCubemap
Maximum dimensions of Cubemap texture.
Definition: hip_runtime_api.h:502
@ hipDeviceAttributeDeviceOverlap
Definition: hip_runtime_api.h:450
@ hipDeviceAttributeMaxTexture2DLinear
Definition: hip_runtime_api.h:495
@ hipDeviceAttributeMaxSurface2D
Maximum dimension (width, height) of 2D surface.
Definition: hip_runtime_api.h:478
@ hipDeviceAttributeMaxSurface1DLayered
Cuda only. Maximum dimensions of 1D layered surface.
Definition: hip_runtime_api.h:477
@ hipDeviceAttributeHdpRegFlushCntl
Address of the HDP_REG_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:574
@ hipDeviceAttributeMaxAvailableVgprsPerThread
Definition: hip_runtime_api.h:597
@ hipDeviceAttributeComputeMode
Compute mode that device is currently in.
Definition: hip_runtime_api.h:441
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedFunc
Definition: hip_runtime_api.h:575
@ hipDeviceAttributeAsicRevision
Revision of the GPU in this device.
Definition: hip_runtime_api.h:588
@ hipDeviceAttributeUnused4
Previously hipDeviceAttributeGcnArch.
Definition: hip_runtime_api.h:571
@ hipDeviceAttributeCooperativeMultiDeviceLaunch
Definition: hip_runtime_api.h:448
@ hipDeviceAttributeMaxTexture2DHeight
Maximum dimension hight of 2D texture.
Definition: hip_runtime_api.h:491
@ hipDeviceAttributePersistingL2CacheMaxSize
Maximum l2 persisting lines capacity in bytes.
Definition: hip_runtime_api.h:527
@ hipDeviceAttributeEccEnabled
Whether ECC support is enabled.
Definition: hip_runtime_api.h:430
@ hipDeviceAttributeCanUseHostPointerForRegisteredMem
Definition: hip_runtime_api.h:437
@ hipDeviceAttributePciBusId
PCI Bus ID.
Definition: hip_runtime_api.h:522
@ hipDeviceAttributeL2CacheSize
Definition: hip_runtime_api.h:460
@ hipDeviceAttributeKernelExecTimeout
Run time limit for kernels executed on the device.
Definition: hip_runtime_api.h:459
@ hipDeviceAttributeMaxThreadsDim
Maximum dimension of a block.
Definition: hip_runtime_api.h:504
@ hipDeviceAttributeSingleToDoublePrecisionPerfRatio
Definition: hip_runtime_api.h:539
@ hipDeviceAttributeMaxGridDimY
Max grid size in height.
Definition: hip_runtime_api.h:474
@ hipDeviceAttributeMultiprocessorCount
Definition: hip_runtime_api.h:513
@ hipDeviceAttributeAmdSpecificBegin
Definition: hip_runtime_api.h:564
@ hipDeviceAttributeMaxRegistersPerMultiprocessor
32-bit registers available per block.
Definition: hip_runtime_api.h:531
@ hipDeviceAttributeIsMultiGpuBoard
Multiple GPU devices.
Definition: hip_runtime_api.h:458
@ hipDeviceAttributeSharedMemPerBlockOptin
Definition: hip_runtime_api.h:536
@ hipDeviceAttributeMaxSurface2DLayered
Cuda only. Maximum dimensions of 2D layered surface.
Definition: hip_runtime_api.h:479
@ hipDeviceAttributeAmdSpecificEnd
Definition: hip_runtime_api.h:602
@ hipDeviceAttributeMemoryClockRate
Peak memory clock frequency in kilohertz.
Definition: hip_runtime_api.h:509
@ hipDeviceAttributeMaxGridDimZ
Max grid size in depth.
Definition: hip_runtime_api.h:475
@ hipDeviceAttributeHdpMemFlushCntl
Address of the HDP_MEM_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:573
@ hipDeviceAttributeUnused2
Previously hipDeviceAttributeUuid.
Definition: hip_runtime_api.h:551
@ hipDeviceAttributeFineGrainSupport
'1' if Device supports fine grain, '0' otherwise
Definition: hip_runtime_api.h:594
@ hipDeviceAttributeCooperativeLaunch
Support cooperative launch.
Definition: hip_runtime_api.h:447
@ hipDeviceAttributeUnifiedAddressing
Definition: hip_runtime_api.h:549
@ hipDeviceAttributeAsyncEngineCount
Asynchronous engines number.
Definition: hip_runtime_api.h:434
@ hipDeviceAttributeMultiGpuBoardGroupID
Definition: hip_runtime_api.h:511
@ hipDeviceAttributeStreamPrioritiesSupported
Whether to support stream priorities.
Definition: hip_runtime_api.h:541
@ hipDeviceAttributeMaxSharedMemoryPerBlock
Definition: hip_runtime_api.h:534
@ hipDeviceAttributeLocalL1CacheSupported
caching locals in L1 is supported
Definition: hip_runtime_api.h:462
@ hipDeviceAttributeCanUseStreamWaitValue
Definition: hip_runtime_api.h:589
@ hipDeviceAttributeMaxRegistersPerBlock
Definition: hip_runtime_api.h:528
@ hipDeviceAttributeMaxThreadsPerBlock
Maximum number of threads per block.
Definition: hip_runtime_api.h:505
@ hipDeviceAttributePciDomainId
PCI Domain Id.
Definition: hip_runtime_api.h:524
@ hipDeviceAttributeMemoryBusWidth
Global memory bus width in bits.
Definition: hip_runtime_api.h:508
@ hipDeviceAttributeMemoryPoolSupportedHandleTypes
Definition: hip_runtime_api.h:558
@ hipDeviceAttributeComputePreemptionSupported
Device supports Compute Preemption.
Definition: hip_runtime_api.h:442
@ hipDeviceAttributeMaxSurface1D
Maximum size of 1D surface.
Definition: hip_runtime_api.h:476
@ hipDeviceAttributeUnused1
Previously hipDeviceAttributeName.
Definition: hip_runtime_api.h:517
@ hipDeviceAttributeMaxTexture3DAlt
Maximum dimensions of alternate 3D texture.
Definition: hip_runtime_api.h:501
@ hipDeviceAttributeMaxTexture1DLinear
Definition: hip_runtime_api.h:486
@ hipDeviceAttributeMaxTexture2DGather
Definition: hip_runtime_api.h:492
@ hipDeviceAttributeWallClockRate
Constant frequency of wall clock in kilohertz.
Definition: hip_runtime_api.h:595
@ hipDeviceAttributePciDeviceId
PCI Device ID. Returns pcie slot id.
Definition: hip_runtime_api.h:523
@ hipDeviceAttributeCanMapHostMemory
Definition: hip_runtime_api.h:435
@ hipDeviceAttributeMaxTexture1DWidth
Maximum size of 1D texture.
Definition: hip_runtime_api.h:484
@ hipDeviceAttributeConcurrentManagedAccess
Definition: hip_runtime_api.h:445
@ hipDeviceAttributeVendorSpecificBegin
Definition: hip_runtime_api.h:603
@ hipDeviceAttributeManagedMemory
Device supports allocating managed memory on this system.
Definition: hip_runtime_api.h:468
@ hipDeviceAttributeHostNumaId
Definition: hip_runtime_api.h:560
@ hipDeviceAttributeIntegrated
Device is integrated GPU.
Definition: hip_runtime_api.h:457
@ hipDeviceAttributeMaxTexture2DLayered
Maximum dimensions of 2D layered texture.
Definition: hip_runtime_api.h:494
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedGridDim
Definition: hip_runtime_api.h:578
@ hipDeviceAttributeMaxTexture3DDepth
Maximum dimension depth of 3D texture.
Definition: hip_runtime_api.h:500
@ hipDeviceAttributePciChipId
GPU Manufacturer device id.
Definition: hip_runtime_api.h:600
@ hipDeviceAttributeImageSupport
'1' if Device supports image, '0' otherwise.
Definition: hip_runtime_api.h:591
@ hipDeviceAttributeTotalGlobalMem
Global memory available on devicice.
Definition: hip_runtime_api.h:548
@ hipDeviceAttributeMaxBlocksPerMultiProcessor
Max block size per multiprocessor.
Definition: hip_runtime_api.h:469
@ hipDeviceAttributeIsLargeBar
Whether it is LargeBar.
Definition: hip_runtime_api.h:587
@ hipDeviceAttributeMaxTexture2DWidth
Maximum dimension width of 2D texture.
Definition: hip_runtime_api.h:490
@ hipDeviceAttributeMaxBlockDimX
Max block size in width.
Definition: hip_runtime_api.h:470
@ hipDeviceAttributeMaxTexture3DWidth
Maximum dimension width of 3D texture.
Definition: hip_runtime_api.h:498
@ hipDeviceAttributeUnused3
Previously hipDeviceAttributeArch.
Definition: hip_runtime_api.h:569
@ hipDeviceAttributeTotalConstantMemory
Constant memory size in bytes.
Definition: hip_runtime_api.h:547
@ hipDeviceAttributeTextureAlignment
Alignment requirement for textures.
Definition: hip_runtime_api.h:544
@ hipDeviceAttributeMaxTexture1DLayered
Maximum dimensions of 1D layered texture.
Definition: hip_runtime_api.h:485
@ hipDeviceAttributeMaxSharedMemoryPerMultiprocessor
Maximum Shared Memory PerMultiprocessor.
Definition: hip_runtime_api.h:570
@ hipDeviceAttributeReservedSharedMemPerBlock
Definition: hip_runtime_api.h:532
@ hipDeviceAttributeCudaCompatibleBegin
Definition: hip_runtime_api.h:428
@ hipDeviceAttributeConcurrentKernels
Definition: hip_runtime_api.h:443
@ hipDeviceAttributeLuid
Definition: hip_runtime_api.h:463
@ hipDeviceAttributePciDomainID
PCI Domain ID, for backward compatibility.
Definition: hip_runtime_api.h:525
@ hipDeviceAttributeMaxThreadsPerMultiProcessor
Maximum resident threads per multiprocessor.
Definition: hip_runtime_api.h:506
@ hipDeviceAttributeTexturePitchAlignment
Definition: hip_runtime_api.h:545
@ hipDeviceAttributePhysicalMultiProcessorCount
Definition: hip_runtime_api.h:592
@ hipDeviceAttributeHostRegisterSupported
Definition: hip_runtime_api.h:556
@ hipDeviceAttributeSharedMemPerMultiprocessor
Shared memory available per multiprocessor.
Definition: hip_runtime_api.h:538
@ hipDeviceAttributeLuidDeviceNodeMask
Definition: hip_runtime_api.h:465
@ hipDeviceAttributeMaxTextureCubemapLayered
Maximum dimensions of Cubemap layered texture.
Definition: hip_runtime_api.h:503
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedBlockDim
Definition: hip_runtime_api.h:581
@ hipDeviceAttributeVirtualMemoryManagementSupported
Definition: hip_runtime_api.h:554
@ hipDeviceAttributeMemoryPoolsSupported
Device supports HIP Stream Ordered Memory Allocator.
Definition: hip_runtime_api.h:553
@ hipDeviceAttributeClockInstructionRate
Definition: hip_runtime_api.h:566
@ hipDeviceAttributeMaxTexture2DMipmap
Maximum dimensions of 2D mipmapped texture.
Definition: hip_runtime_api.h:497
@ hipDeviceAttributeMaxBlockDimZ
Max block size in depth.
Definition: hip_runtime_api.h:472
@ hipDeviceAttributeWarpSize
Warp size in threads.
Definition: hip_runtime_api.h:552
@ hipGPUDirectRDMAWritesOrderingOwner
Definition: hip_runtime_api.h:627
@ hipGPUDirectRDMAWritesOrderingNone
Definition: hip_runtime_api.h:626
@ hipGPUDirectRDMAWritesOrderingAllDevices
Definition: hip_runtime_api.h:628
@ hipMemAllocationTypeMax
Definition: hip_runtime_api.h:1215
@ hipMemAllocationTypePinned
Definition: hip_runtime_api.h:1213
@ hipMemAllocationTypeUncached
Definition: hip_runtime_api.h:1214
@ hipMemAllocationTypeInvalid
Definition: hip_runtime_api.h:1209
@ hipMemoryTypeDevice
Definition: hip_runtime_api.h:266
@ hipMemoryTypeHost
Memory is physically located on host.
Definition: hip_runtime_api.h:265
@ hipMemoryTypeUnregistered
Unregistered memory.
Definition: hip_runtime_api.h:264
@ hipMemoryTypeArray
Definition: hip_runtime_api.h:271
@ hipMemoryTypeManaged
Definition: hip_runtime_api.h:268
@ hipMemoryTypeUnified
unified address space
Definition: hip_runtime_api.h:273
@ hipGraphInstantiateFlagAutoFreeOnLaunch
Automatically free memory allocated in a graph before relaunching.
Definition: hip_runtime_api.h:1689
@ hipGraphInstantiateFlagUseNodePriority
Definition: hip_runtime_api.h:1694
@ hipGraphInstantiateFlagUpload
Automatically upload the graph after instantiation.
Definition: hip_runtime_api.h:1691
@ hipGraphInstantiateFlagDeviceLaunch
Instantiate the graph to be launched from the device.
Definition: hip_runtime_api.h:1692
@ hipArraySparseSubresourceTypeSparseLevel
Sparse level.
Definition: hip_runtime_api.h:1819
@ hipArraySparseSubresourceTypeMiptail
Miptail.
Definition: hip_runtime_api.h:1820
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 hipDrvGraphExecMemsetNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, const hipMemsetParams *memsetParams, hipCtx_t ctx)
Sets the parameters for a memset node in the given graphExec.
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 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 to a stream.
hipError_t hipDrvGraphAddMemsetNode(hipGraphNode_t *phGraphNode, hipGraph_t hGraph, const hipGraphNode_t *dependencies, size_t numDependencies, const hipMemsetParams *memsetParams, hipCtx_t ctx)
Creates a memset node and adds it to a graph.
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 graph's 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 of an 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 of a memcpy node in the given graphExec.
hipError_t hipGraphExecNodeSetParams(hipGraphExec_t graphExec, hipGraphNode_t node, hipGraphNodeParams *nodeParams)
Updates parameters of an executable graph's node.
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's 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 the specified 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's 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 a graph's 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 reserved for graphs on a specific device and return it back to the 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 hipGraphGetRootNodes(hipGraph_t graph, hipGraphNode_t *pRootNodes, size_t *pNumRootNodes)
Returns a 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 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.
hipLibraryOption
Definition: linker_types.h:124
hipJitOption
Definition: linker_types.h:47
hipJitInputType
Definition: linker_types.h:92
hipError_t hipHostFree(void *ptr)
Free memory allocated by the HIP-Clang hip host memory allocation API This API performs an implicit h...
hipError_t hipMallocHost(void **ptr, size_t size)
Allocate pinned host memory [Deprecated].
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 [Deprecated].
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 [Deprecated].
hipError_t hipMemAllocHost(void **ptr, size_t size)
Allocate pinned host memory [Deprecated].
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.
hipError_t hipMemcpy3DBatchAsync(size_t numOps, struct hipMemcpy3DBatchOp *opList, size_t *failIdx, unsigned long long flags, hipStream_t stream)
Perform Batch of 3D copies.
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)
Frees page-locked memory This API performs an implicit hipDeviceSynchronize() call....
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 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 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 hipMemsetD2D32(hipDeviceptr_t dst, size_t dstPitch, unsigned int value, size_t width, size_t height)
Fills 2D memory range of 'width' 32-bit values synchronously to the specified int value....
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 hipMemsetD2D32Async(hipDeviceptr_t dst, size_t dstPitch, unsigned int value, size_t width, size_t height, hipStream_t stream)
Fills 2D memory range of 'width' 32-bit values asynchronously to the specified int value....
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 asynchronously.
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 HIP-Clang hip memory allocation API. This API performs an implicit hipDe...
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 hipMemcpy3DPeer(hipMemcpy3DPeerParms *p)
Performs 3D memory copies between devices This API is asynchronous with respect to host.
hipError_t hipMemcpyDtoD(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes)
Copy data from Device to 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 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 hipMemsetD2D16Async(hipDeviceptr_t dst, size_t dstPitch, unsigned short value, size_t width, size_t height, hipStream_t stream)
Fills 2D memory range of 'width' 16-bit values asynchronously to the specified short value....
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 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 hipMemsetD2D8(hipDeviceptr_t dst, size_t dstPitch, unsigned char value, size_t width, size_t height)
Fills 2D memory range of 'width' 8-bit values synchronously to the specified char value....
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 hipMemsetD2D16(hipDeviceptr_t dst, size_t dstPitch, unsigned short value, size_t width, size_t height)
Fills 2D memory range of 'width' 16-bit values synchronously to the specified short value....
hipError_t hipMemcpyBatchAsync(void **dsts, void **srcs, size_t *sizes, size_t count, hipMemcpyAttributes *attrs, size_t *attrsIdxs, size_t numAttrs, size_t *failIdx, hipStream_t stream)
Perform Batch of 1D copies.
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 hipMemGetAddressRange(hipDeviceptr_t *pbase, size_t *psize, hipDeviceptr_t dptr)
Get information on memory allocations.
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)
Copies 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 hipMemcpyHtoD(hipDeviceptr_t dst, const void *src, size_t sizeBytes)
Copy data from Host to 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 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 hipMemcpyHtoDAsync(hipDeviceptr_t dst, const void *src, size_t sizeBytes, hipStream_t stream)
Copy data from Host to Device asynchronously.
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 hipPointerGetAttribute(void *data, hipPointer_attribute attribute, hipDeviceptr_t ptr)
Returns information about the specified pointer.[BETA].
hipError_t hipMemsetD2D8Async(hipDeviceptr_t dst, size_t dstPitch, unsigned char value, size_t width, size_t height, hipStream_t stream)
Fills 2D memory range of 'width' 8-bit values asynchronously to the specified char value....
hipError_t hipMemcpy3DPeerAsync(hipMemcpy3DPeerParms *p, hipStream_t stream)
Performs 3D memory copies between devices asynchronously.
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 hipMemPrefetchAsync_v2(const void *dev_ptr, size_t count, hipMemLocation location, unsigned int flags, 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 hipMemAdvise_v2(const void *dev_ptr, size_t count, hipMemoryAdvise advice, hipMemLocation location)
Advise about the usage of a given memory range to 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 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 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 hipModuleGetTexRef(textureReference **texRef, hipModule_t hmod, const char *name)
returns the handle of the texture reference with the name from the module.
hipError_t hipLinkComplete(hipLinkState_t state, void **hipBinOut, size_t *sizeOut)
Completes the linking of the given program.
hipError_t hipModuleGetFunctionCount(unsigned int *count, hipModule_t mod)
Returns the number of functions within a module.
hipError_t hipModuleLoad(hipModule_t *module, const char *fname)
Loads code object from file into a module the currrent context.
hipError_t hipModuleGetGlobal(hipDeviceptr_t *dptr, size_t *bytes, hipModule_t hmod, const char *name)
Returns a global pointer from a module.
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 hipLibraryUnload(hipLibrary_t library)
Unload HIP Library.
hipError_t hipLinkAddFile(hipLinkState_t state, hipJitInputType type, const char *path, unsigned int numOptions, hipJitOption *options, void **optionValues)
Adds a file with bitcode to be linked with options.
hipError_t hipGetFuncBySymbol(hipFunction_t *functionPtr, const void *symbolPtr)
Gets pointer to device entry function that matches entry function symbolPtr.
hipError_t hipLinkDestroy(hipLinkState_t state)
Deletes the linker instance.
hipError_t hipLibraryLoadFromFile(hipLibrary_t *library, const char *fileName, hipJitOption *jitOptions, void **jitOptionsValues, unsigned int numJitOptions, hipLibraryOption *libraryOptions, void **libraryOptionValues, unsigned int numLibraryOptions)
Load hip Library from file.
hipError_t hipMemGetHandleForAddressRange(void *handle, hipDeviceptr_t dptr, size_t size, hipMemRangeHandleType handleType, unsigned long long flags)
Returns a handle for the address range requested.
hipError_t hipLibraryEnumerateKernels(hipKernel_t *kernels, unsigned int numKernels, hipLibrary_t library)
Retrieve kernel handles within a library.
hipError_t hipLibraryGetKernel(hipKernel_t *pKernel, hipLibrary_t library, const char *name)
Get Kernel object from library.
hipError_t hipKernelGetName(const char **name, hipKernel_t kernel)
Returns a Kernel Name.
hipError_t hipModuleGetFunction(hipFunction_t *function, hipModule_t module, const char *kname)
Function with kname will be extracted if present in module.
hipError_t hipLinkCreate(unsigned int numOptions, hipJitOption *options, void **optionValues, hipLinkState_t *stateOut)
Creates a linker instance with options.
hipError_t hipGetDriverEntryPoint(const char *symbol, void **funcPtr, unsigned long long flags, hipDriverEntryPointQueryResult *driverStatus)
Gets function pointer of a requested HIP API.
hipError_t hipModuleLoadData(hipModule_t *module, const void *image)
builds module from code object data which resides in host memory.
hipError_t hipLibraryGetKernelCount(unsigned int *count, hipLibrary_t library)
Get Kernel count in library.
hipError_t hipModuleLoadFatBinary(hipModule_t *module, const void *fatbin)
Loads fatbin object.
hipError_t hipLibraryLoadData(hipLibrary_t *library, const void *code, hipJitOption *jitOptions, void **jitOptionsValues, unsigned int numJitOptions, hipLibraryOption *libraryOptions, void **libraryOptionValues, unsigned int numLibraryOptions)
Load hip Library from inmemory object.
hipError_t hipModuleUnload(hipModule_t module)
Frees the module.
hipError_t hipKernelGetLibrary(hipLibrary_t *library, hipKernel_t kernel)
Returns a Library Handle.
hipError_t hipLinkAddData(hipLinkState_t state, hipJitInputType type, void *data, size_t size, const char *name, unsigned int numOptions, hipJitOption *options, void **optionValues)
Adds bitcode data to be linked with options.
hipError_t hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags)
Returns occupancy for a device function.
hipError_t hipOccupancyAvailableDynamicSMemPerBlock(size_t *dynamicSmemSize, const void *f, int numBlocks, int blockSize)
Returns dynamic shared memory available per block when launching numBlocks blocks on SM.
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)
Determines if a device can access a peer device's memory.
hipError_t hipDeviceEnablePeerAccess(int peerDeviceId, unsigned int flags)
Enables direct access to memory allocations on a peer device.
hipError_t hipMemcpyPeer(void *dst, int dstDeviceId, const void *src, int srcDeviceId, size_t sizeBytes)
Copies memory between two peer accessible devices.
hipError_t hipMemcpyPeerAsync(void *dst, int dstDeviceId, const void *src, int srcDevice, size_t sizeBytes, hipStream_t stream)
Copies memory between two peer accessible devices asynchronously.
hipError_t hipDeviceDisablePeerAccess(int peerDeviceId)
Disables direct access to memory allocations on a peer device.
hipError_t hipProfilerStart()
Start recording of profiling information [Deprecated] When using this API, start the profiler with pr...
hipError_t hipProfilerStop()
Stop recording of profiling information [Deprecated] When using this API, start the profiler with pro...
hipError_t hipStreamGetId(hipStream_t stream, unsigned long long *streamId)
Queries the Id of a stream.
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)
Returns 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...
hipError_t hipStreamCopyAttributes(hipStream_t dst, hipStream_t src)
Copies attributes from source stream to destination stream.
void(* hipStreamCallback_t)(hipStream_t stream, hipError_t status, void *userData)
Definition: hip_runtime_api.h:3017
hipError_t hipStreamGetDevice(hipStream_t stream, hipDevice_t *device)
Gets the device associated with the stream.
hipError_t hipStreamQuery(hipStream_t stream)
Returns hipSuccess if all of the operations in the specified stream have completed,...
hipError_t hipStreamSynchronize(hipStream_t stream)
Waits for all commands in the stream to complete.
hipError_t hipStreamSetAttribute(hipStream_t stream, hipStreamAttrID attr, const hipStreamAttrValue *value)
Sets stream attribute. Updated attribute is applied to work submitted to the stream.
hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags)
Makes the specified compute stream wait for the specified event.
hipError_t hipStreamCreateWithPriority(hipStream_t *stream, unsigned int flags, int priority)
Creates an asynchronous stream with the specified priority.
hipError_t hipExtStreamCreateWithCUMask(hipStream_t *stream, uint32_t cuMaskSize, const uint32_t *cuMask)
Creates an asynchronous stream with the specified CU mask.
hipError_t hipStreamGetPriority(hipStream_t stream, int *priority)
Queries the priority of a stream.
hipError_t hipExtStreamGetCUMask(hipStream_t stream, uint32_t cuMaskSize, uint32_t *cuMask)
Gets CU mask associated with an asynchronous stream.
hipError_t hipStreamGetAttribute(hipStream_t stream, hipStreamAttrID attr, hipStreamAttrValue *value_out)
queries stream attribute.
hipError_t hipStreamCreateWithFlags(hipStream_t *stream, unsigned int flags)
Creates an asynchronous stream with flag.
hipError_t hipStreamCreate(hipStream_t *stream)
Creates 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 hipGraphExecBatchMemOpNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, const hipBatchMemOpNodeParams *nodeParams)
Sets the parameters for a batch mem op node in the given graphExec.[BETA].
hipError_t hipGraphAddBatchMemOpNode(hipGraphNode_t *phGraphNode, hipGraph_t hGraph, const hipGraphNode_t *dependencies, size_t numDependencies, const hipBatchMemOpNodeParams *nodeParams)
Creates a batch memory operation node and adds it to a graph.[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 hipGraphBatchMemOpNodeGetParams(hipGraphNode_t hNode, hipBatchMemOpNodeParams *nodeParams_out)
Returns a batch mem op node's parameters.[BETA].
hipError_t hipStreamBatchMemOp(hipStream_t stream, unsigned int count, hipStreamBatchMemOpParams *paramArray, unsigned int flags)
Enqueues an array of stream memory operations in the stream.[BETA].
hipError_t hipGraphBatchMemOpNodeSetParams(hipGraphNode_t hNode, hipBatchMemOpNodeParams *nodeParams)
Sets the batch mem op node's parameters.[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 [Deprecated].
hipError_t hipBindTextureToMipmappedArray(const textureReference *tex, hipMipmappedArray_const_t mipmappedArray, const hipChannelFormatDesc *desc)
Binds a mipmapped array to a texture [Deprecated].
hipError_t hipTexRefGetMipmapLevelClamp(float *pminMipmapLevelClamp, float *pmaxMipmapLevelClamp, const textureReference *texRef)
Gets the minimum and maximum mipmap level clamps for a texture reference [Deprecated].
hipError_t hipTexRefGetAddressMode(enum hipTextureAddressMode *pam, const textureReference *texRef, int dim)
Gets the address mode for a texture reference [Deprecated].
hipError_t hipTexRefGetFlags(unsigned int *pFlags, const textureReference *texRef)
Gets flags for a texture reference [Deprecated].
hipError_t hipTexRefSetAddress(size_t *ByteOffset, textureReference *texRef, hipDeviceptr_t dptr, size_t bytes)
Sets an bound address for a texture reference [Deprecated].
hipError_t hipTexRefSetFilterMode(textureReference *texRef, enum hipTextureFilterMode fm)
Set filter mode for a texture reference [Deprecated].
hipError_t hipTexRefSetMipmappedArray(textureReference *texRef, struct hipMipmappedArray *mipmappedArray, unsigned int Flags)
Binds mipmapped array to a texture reference [Deprecated].
hipError_t hipTexRefGetMipmapFilterMode(enum hipTextureFilterMode *pfm, const textureReference *texRef)
Gets the mipmap filter mode for a texture reference [Deprecated].
hipError_t hipGetTextureAlignmentOffset(size_t *offset, const textureReference *texref)
Get the offset of the alignment in a texture [Deprecated].
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 [Deprecated].
hipError_t hipTexRefGetMaxAnisotropy(int *pmaxAnsio, const textureReference *texRef)
Gets the maximum anisotropy for a texture reference [Deprecated].
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 [Deprecated].
hipError_t hipUnbindTexture(const textureReference *tex)
Unbinds a texture [Deprecated].
hipError_t hipTexRefGetBorderColor(float *pBorderColor, const textureReference *texRef)
Gets the border color used by a texture reference [Deprecated].
hipError_t hipTexRefSetFormat(textureReference *texRef, hipArray_Format fmt, int NumPackedComponents)
Set format for a texture reference [Deprecated].
hipError_t hipTexRefGetAddress(hipDeviceptr_t *dev_ptr, const textureReference *texRef)
Gets the address for a texture reference [Deprecated].
hipError_t hipTexRefGetArray(hipArray_t *pArray, const textureReference *texRef)
Gets the array bound to a texture reference [Deprecated].
hipError_t hipTexRefSetFlags(textureReference *texRef, unsigned int Flags)
Set flags for a texture reference [Deprecated].
hipError_t hipTexRefSetAddressMode(textureReference *texRef, int dim, enum hipTextureAddressMode am)
Sets address mode for a texture reference [Deprecated].
hipError_t hipTexRefGetMipMappedArray(hipMipmappedArray_t *pArray, const textureReference *texRef)
Gets the mipmapped array bound to a texture reference [Deprecated].
hipError_t hipTexRefSetMaxAnisotropy(textureReference *texRef, unsigned int maxAniso)
Sets the maximum anisotropy for a texture reference [Deprecated].
hipError_t hipTexRefSetMipmapLevelClamp(textureReference *texRef, float minMipMapLevelClamp, float maxMipMapLevelClamp)
Sets mipmap level clamp for a texture reference [Deprecated].
hipError_t hipTexRefSetBorderColor(textureReference *texRef, float *pBorderColor)
Sets border color for a texture reference [Deprecated].
hipError_t hipTexRefSetArray(textureReference *tex, hipArray_const_t array, unsigned int flags)
Binds an array as a texture reference [Deprecated].
hipError_t hipTexRefSetMipmapLevelBias(textureReference *texRef, float bias)
Sets mipmap level bias for a texture reference [Deprecated].
hipError_t hipTexRefGetMipmapLevelBias(float *pbias, const textureReference *texRef)
Gets the mipmap level bias for a texture reference [Deprecated].
hipError_t hipBindTextureToArray(const textureReference *tex, hipArray_const_t array, const hipChannelFormatDesc *desc)
Binds a memory area to a texture [Deprecated].
hipError_t hipGetTextureReference(const textureReference **texref, const void *symbol)
Gets the texture reference related with the symbol [Deprecated].
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 [Deprecated].
hipError_t hipTexRefSetMipmapFilterMode(textureReference *texRef, enum hipTextureFilterMode fm)
Sets mipmap filter mode for a texture reference [Deprecated].
hipError_t hipTexRefGetFormat(hipArray_Format *pFormat, int *pNumChannels, const textureReference *texRef)
Gets texture format for a texture reference [Deprecated].
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:365
hipErrorMemoryAllocation
Memory allocation error.
Definition: hip_runtime_api.h:311
hipErrorNotFound
Not found.
Definition: hip_runtime_api.h:360
hipErrorProfilerDisabled
Definition: hip_runtime_api.h:316
hipErrorInvalidDevicePointer
Invalid Device Pointer.
Definition: hip_runtime_api.h:323
@ HIP_ERROR_LAUNCH_OUT_OF_RESOURCES
Definition: hip_runtime_api.h:53
@ HIP_ERROR_INVALID_VALUE
Definition: hip_runtime_api.h:51
@ HIP_SUCCESS
Definition: hip_runtime_api.h:50
@ HIP_ERROR_NOT_INITIALIZED
Definition: hip_runtime_api.h:52
hipErrorRuntimeMemory
Definition: hip_runtime_api.h:414
hipErrorInvalidImage
Invalid image.
Definition: hip_runtime_api.h:331
hipErrorPeerAccessUnsupported
Definition: hip_runtime_api.h:348
hipErrorArrayIsMapped
Definition: hip_runtime_api.h:338
hipErrorStreamCaptureIsolation
Definition: hip_runtime_api.h:393
hipErrorInvalidKernelFile
In CUDA DRV, it is CUDA_ERROR_INVALID_PTX.
Definition: hip_runtime_api.h:349
hipErrorNotMapped
Definition: hip_runtime_api.h:342
hipErrorGraphExecUpdateFailure
Definition: hip_runtime_api.h:406
hipErrorNotInitialized
Invalid not initialized.
Definition: hip_runtime_api.h:312
hipErrorInvalidResourceHandle
Resource handle (hipEvent_t or hipStream_t) invalid.
Definition: hip_runtime_api.h:358
hipErrorSharedObjectInitFailed
Failed to initialize shared object.
Definition: hip_runtime_api.h:354
hipErrorInvalidPitchValue
Invalid pitch value.
Definition: hip_runtime_api.h:321
hipErrorNoBinaryForGpu
Definition: hip_runtime_api.h:340
hipErrorInvalidContext
Produced when input context is invalid.
Definition: hip_runtime_api.h:332
hipErrorStreamCaptureUnsupported
Definition: hip_runtime_api.h:384
hipErrorPeerAccessNotEnabled
Peer access was never enabled from the current device.
Definition: hip_runtime_api.h:370
hipErrorOperatingSystem
Not the correct operating system.
Definition: hip_runtime_api.h:355
hipErrorStreamCaptureUnjoined
Definition: hip_runtime_api.h:391
hipErrorInitializationError
Definition: hip_runtime_api.h:314
hipErrorNotMappedAsPointer
Definition: hip_runtime_api.h:344
hipErrorPriorLaunchFailure
Definition: hip_runtime_api.h:327
hipErrorContextIsDestroyed
The context is already destroyed.
Definition: hip_runtime_api.h:372
hipErrorInvalidValue
Definition: hip_runtime_api.h:307
hipErrorLaunchTimeOut
Timeout for the launch.
Definition: hip_runtime_api.h:367
hipErrorUnmapFailed
Definition: hip_runtime_api.h:337
hipErrorSetOnActiveProcess
The process is active.
Definition: hip_runtime_api.h:371
hipErrorFileNotFound
the file is not found.
Definition: hip_runtime_api.h:352
hipErrorLaunchFailure
An exception occurred on the device while executing a kernel.
Definition: hip_runtime_api.h:378
hipErrorInvalidDevice
DeviceID must be in range from 0 to compute-devices.
Definition: hip_runtime_api.h:330
hipErrorUnsupportedLimit
Unsupported limit.
Definition: hip_runtime_api.h:346
hipErrorMapBufferObjectFailed
Produced when the IPC memory attach failed from ROCr.
Definition: hip_runtime_api.h:336
hipErrorHostMemoryAlreadyRegistered
Definition: hip_runtime_api.h:374
hipErrorMissingConfiguration
Definition: hip_runtime_api.h:326
hipErrorSharedObjectSymbolNotFound
Definition: hip_runtime_api.h:353
hipErrorECCNotCorrectable
Definition: hip_runtime_api.h:345
hipErrorStreamCaptureWrongThread
Definition: hip_runtime_api.h:402
hipErrorAssert
Produced when the kernel calls assert.
Definition: hip_runtime_api.h:373
hipErrorContextAlreadyInUse
The context is already in use.
Definition: hip_runtime_api.h:347
hipErrorNotReady
Definition: hip_runtime_api.h:361
hipErrorInvalidSource
Invalid source.
Definition: hip_runtime_api.h:351
hipErrorLaunchOutOfResources
Out of resources error.
Definition: hip_runtime_api.h:366
hipErrorInvalidDeviceFunction
Invalid device function.
Definition: hip_runtime_api.h:328
hipErrorCooperativeLaunchTooLarge
Definition: hip_runtime_api.h:379
hipErrorAlreadyMapped
Definition: hip_runtime_api.h:339
hipErrorProfilerNotInitialized
Definition: hip_runtime_api.h:317
hipErrorProfilerAlreadyStarted
Definition: hip_runtime_api.h:318
hipErrorInvalidChannelDescriptor
Invalid channel descriptor.
Definition: hip_runtime_api.h:410
hipErrorNoDevice
Call to hipGetDeviceCount returned 0 devices.
Definition: hip_runtime_api.h:329
hipErrorMapFailed
Definition: hip_runtime_api.h:334
hipErrorStreamCaptureInvalidated
Definition: hip_runtime_api.h:386
hipErrorProfilerAlreadyStopped
Definition: hip_runtime_api.h:319
hipErrorDeinitialized
Deinitialized.
Definition: hip_runtime_api.h:315
hipErrorPeerAccessAlreadyEnabled
Definition: hip_runtime_api.h:368
hipErrorNotMappedAsArray
Definition: hip_runtime_api.h:343
hipErrorNotSupported
Produced when the hip API is not supported/implemented.
Definition: hip_runtime_api.h:383
hipErrorInvalidConfiguration
Invalide configuration.
Definition: hip_runtime_api.h:320
hipErrorStreamCaptureImplicit
Definition: hip_runtime_api.h:397
hipErrorStreamCaptureMerge
Definition: hip_runtime_api.h:388
hipErrorInvalidGraphicsContext
Definition: hip_runtime_api.h:350
hipErrorIllegalState
Resource required is not in a valid state to perform operation.
Definition: hip_runtime_api.h:359
hipErrorOutOfMemory
out of memory range.
Definition: hip_runtime_api.h:309
hipErrorInvalidSymbol
Invalid symbol.
Definition: hip_runtime_api.h:322
hipSuccess
Successful completion.
Definition: hip_runtime_api.h:306
hipErrorUnknown
Unknown error.
Definition: hip_runtime_api.h:412
hipErrorInvalidHandle
Invalide handle.
Definition: hip_runtime_api.h:356
hipErrorStreamCaptureUnmatched
The capture was not initiated in this stream.
Definition: hip_runtime_api.h:390
hipErrorCapturedEvent
Definition: hip_runtime_api.h:400
hipErrorAlreadyAcquired
Definition: hip_runtime_api.h:341
hipErrorInsufficientDriver
Definition: hip_runtime_api.h:325
hipErrorHostMemoryNotRegistered
Definition: hip_runtime_api.h:376
hipErrorInvalidTexture
Invalid texture.
Definition: hip_runtime_api.h:411
hipErrorRuntimeOther
Definition: hip_runtime_api.h:416
hipErrorContextAlreadyCurrent
Definition: hip_runtime_api.h:333
hipErrorInvalidMemcpyDirection
Invalid memory copy direction.
Definition: hip_runtime_api.h:324
Definition: hip_runtime_api.h:661
hipError_t hip_init()
Definition: driver_types.h:103
Definition: driver_types.h:93
Definition: hip_runtime_api.h:1991
unsigned int gridDimZ
Grid depth in blocks.
Definition: hip_runtime_api.h:1994
unsigned int sharedMemBytes
Dynamic shared-memory size in bytes per block.
Definition: hip_runtime_api.h:1998
unsigned int blockDimY
Thread block dimension in Y.
Definition: hip_runtime_api.h:1996
hipStream_t hStream
HIP stream identifier.
Definition: hip_runtime_api.h:1999
hipLaunchAttribute * attrs
Attribute list.
Definition: hip_runtime_api.h:2000
unsigned int blockDimZ
Thread block dimension in Z.
Definition: hip_runtime_api.h:1997
unsigned int numAttrs
Number of attributes.
Definition: hip_runtime_api.h:2001
unsigned int gridDimX
Grid width in blocks.
Definition: hip_runtime_api.h:1992
unsigned int gridDimY
Grid height in blocks.
Definition: hip_runtime_api.h:1993
unsigned int blockDimX
Thread block dimension in X.
Definition: hip_runtime_api.h:1995
Definition: driver_types.h:424
Definition: driver_types.h:313
Definition: driver_types.h:358
Definition: driver_types.h:191
Definition: hip_runtime_api.h:1283
uint32_t y
y
Definition: hip_runtime_api.h:1285
uint32_t z
z
Definition: hip_runtime_api.h:1286
uint32_t x
x
Definition: hip_runtime_api.h:1284
constexpr dim3(uint32_t _x=1, uint32_t _y=1, uint32_t _z=1)
Definition: hip_runtime_api.h:1288
Definition: driver_types.h:115
Definition: hip_runtime_api.h:1532
hipAccessProperty hitProp
hipAccessProperty set for hit
Definition: hip_runtime_api.h:1534
hipAccessProperty missProp
hipAccessProperty set for miss
Definition: hip_runtime_api.h:1536
float hitRatio
hitRatio specifies percentage of lines assigned hitProp
Definition: hip_runtime_api.h:1535
void * base_ptr
Starting address of the access policy window.
Definition: hip_runtime_api.h:1533
size_t num_bytes
Size in bytes of the window policy.
Definition: hip_runtime_api.h:1537
Definition: hip_runtime_api.h:1826
unsigned int level
For mipmapped arrays must be a valid mipmap level. For arrays must be zero.
Definition: hip_runtime_api.h:1836
unsigned int flags
flags for future use, must be zero now.
Definition: hip_runtime_api.h:1860
hipArraySparseSubresourceType subresourceType
Sparse subresource type.
Definition: hip_runtime_api.h:1832
unsigned int extentDepth
Depth in elements.
Definition: hip_runtime_api.h:1844
unsigned int offsetX
X offset in elements.
Definition: hip_runtime_api.h:1839
hipArray_t array
Definition: hip_runtime_api.h:1830
hipResourceType resourceType
Resource type.
Definition: hip_runtime_api.h:1827
hipMemOperationType memOperationType
Memory operation type.
Definition: hip_runtime_api.h:1853
struct hipArrayMapInfo::@35::@38 miptail
unsigned int reserved[2]
Reserved for future use, must be zero now.
Definition: hip_runtime_api.h:1861
unsigned int extentWidth
Width in elements.
Definition: hip_runtime_api.h:1842
struct hipArrayMapInfo::@35::@37 sparseLevel
unsigned int extentHeight
Height in elements.
Definition: hip_runtime_api.h:1843
unsigned int offsetY
Y offset in elements.
Definition: hip_runtime_api.h:1840
hipMemHandleType memHandleType
Memory handle type.
Definition: hip_runtime_api.h:1854
hipMemGenericAllocationHandle_t memHandle
Definition: hip_runtime_api.h:1856
hipMipmappedArray mipmap
Definition: hip_runtime_api.h:1829
union hipArrayMapInfo::@35 subresource
unsigned int layer
For layered arrays must be a valid layer index. Otherwise, must be zero.
Definition: hip_runtime_api.h:1838
unsigned int deviceBitMask
Device ordinal bit mask.
Definition: hip_runtime_api.h:1859
unsigned long long size
Extent in bytes.
Definition: hip_runtime_api.h:1850
unsigned long long offset
Offset within mip tail.
Definition: hip_runtime_api.h:1849
unsigned int offsetZ
Z offset in elements.
Definition: hip_runtime_api.h:1841
union hipArrayMapInfo::@34 resource
Structure representing node parameters for batch memory operations in HIP graphs.
Definition: hip_runtime_api.h:1062
hipStreamBatchMemOpParams * paramArray
Definition: hip_runtime_api.h:1065
unsigned int count
Definition: hip_runtime_api.h:1064
unsigned int flags
Definition: hip_runtime_api.h:1066
hipCtx_t ctx
Definition: hip_runtime_api.h:1063
Definition: driver_types.h:59
Definition: hip_runtime_api.h:1876
hipGraph_t graph
Definition: hip_runtime_api.h:1877
Definition: hip_runtime_api.h:65
unsigned hasSharedInt64Atomics
64-bit integer atomics for shared memory.
Definition: hip_runtime_api.h:75
unsigned hasSharedInt32Atomics
32-bit integer atomics for shared memory.
Definition: hip_runtime_api.h:69
unsigned hasFloatAtomicAdd
32-bit float atomic add in global and shared memory.
Definition: hip_runtime_api.h:71
unsigned hasDoubles
Double-precision floating point.
Definition: hip_runtime_api.h:78
unsigned hasWarpVote
Warp vote instructions (__any, __all).
Definition: hip_runtime_api.h:81
unsigned hasWarpShuffle
Warp shuffle operations. (__shfl_*).
Definition: hip_runtime_api.h:83
unsigned hasGlobalInt32Atomics
32-bit integer atomics for global memory.
Definition: hip_runtime_api.h:67
unsigned hasGlobalFloatAtomicExch
32-bit float atomic exch for global memory.
Definition: hip_runtime_api.h:68
unsigned hasDynamicParallelism
Dynamic parallelism.
Definition: hip_runtime_api.h:93
unsigned hasSurfaceFuncs
Surface functions.
Definition: hip_runtime_api.h:91
unsigned has3dGrid
Grid and group dims are 3D (rather than 2D).
Definition: hip_runtime_api.h:92
unsigned hasFunnelShift
Funnel two words into one with shift&mask caps.
Definition: hip_runtime_api.h:84
unsigned hasThreadFenceSystem
__threadfence_system.
Definition: hip_runtime_api.h:87
unsigned hasGlobalInt64Atomics
64-bit integer atomics for global memory.
Definition: hip_runtime_api.h:74
unsigned hasSyncThreadsExt
__syncthreads_count, syncthreads_and, syncthreads_or.
Definition: hip_runtime_api.h:88
unsigned hasWarpBallot
Warp ballot instructions (__ballot).
Definition: hip_runtime_api.h:82
unsigned hasSharedFloatAtomicExch
32-bit float atomic exch for shared memory.
Definition: hip_runtime_api.h:70
Definition: hip_runtime_api.h:111
int ECCEnabled
Device has ECC support enabled.
Definition: hip_runtime_api.h:171
int ipcEventSupported
Device supports IPC events.
Definition: hip_runtime_api.h:225
int computePreemptionSupported
Is compute preemption supported on the device.
Definition: hip_runtime_api.h:197
int maxTexture1DLinear
Maximum size for 1D textures bound to linear memory.
Definition: hip_runtime_api.h:150
int timelineSemaphoreInteropSupported
Indicates external timeline semaphore support.
Definition: hip_runtime_api.h:215
int pciBusID
PCI Bus ID.
Definition: hip_runtime_api.h:172
int maxTexture1D
Maximum number of elements in 1D images.
Definition: hip_runtime_api.h:148
int memoryBusWidth
Global memory bus width in bits.
Definition: hip_runtime_api.h:179
int maxTexture2DMipmap[2]
Maximum number of elements in 2D array mipmap of images.
Definition: hip_runtime_api.h:152
int clockRate
Max clock frequency of the multiProcessors in khz.
Definition: hip_runtime_api.h:125
int maxThreadsPerMultiProcessor
Maximum resident threads per multi-processor.
Definition: hip_runtime_api.h:182
int l2CacheSize
L2 cache size.
Definition: hip_runtime_api.h:180
int deferredMappingHipArraySupported
Definition: hip_runtime_api.h:223
int asyncEngineCount
Number of async engines.
Definition: hip_runtime_api.h:176
int accessPolicyMaxWindowSize
Max value of access policy window.
Definition: hip_runtime_api.h:209
size_t totalConstMem
Definition: hip_runtime_api.h:126
int memoryPoolsSupported
Indicates if device supports hipMallocAsync and hipMemPool APIs.
Definition: hip_runtime_api.h:216
int unifiedFunctionPointers
Indicates device supports unified function pointers.
Definition: hip_runtime_api.h:227
int maxTexture2DGather[2]
Maximum 2D tex dimensions if gather has to be performed.
Definition: hip_runtime_api.h:154
size_t memPitch
Definition: hip_runtime_api.h:120
int gpuDirectRDMAWritesOrdering
value of hipGPUDirectRDMAWritesOrdering
Definition: hip_runtime_api.h:220
hipUUID uuid
UUID of a device.
Definition: hip_runtime_api.h:113
size_t sharedMemPerBlock
Size of shared memory per block (in bytes).
Definition: hip_runtime_api.h:117
unsigned int gpuDirectRDMAFlushWritesOptions
Definition: hip_runtime_api.h:218
size_t surfaceAlignment
Alignment requirement for surface.
Definition: hip_runtime_api.h:169
int reserved[63]
CUDA Reserved.
Definition: hip_runtime_api.h:228
int maxTexture2DLayered[3]
Maximum number of elements in 2D array images.
Definition: hip_runtime_api.h:160
int streamPrioritiesSupported
Device supports stream priority.
Definition: hip_runtime_api.h:183
int cooperativeMultiDeviceLaunch
Definition: hip_runtime_api.h:201
int hostRegisterSupported
Device supports hipHostRegister.
Definition: hip_runtime_api.h:211
int pageableMemoryAccess
Definition: hip_runtime_api.h:193
char name[256]
Device name.
Definition: hip_runtime_api.h:112
size_t textureAlignment
Alignment requirement for textures.
Definition: hip_runtime_api.h:137
int globalL1CacheSupported
Indicates globals are cached in L1.
Definition: hip_runtime_api.h:184
int hostNativeAtomicSupported
Link between host and device supports native atomics.
Definition: hip_runtime_api.h:191
int maxSurfaceCubemapLayered[2]
Maximum cubemap layered surface size.
Definition: hip_runtime_api.h:168
int maxTextureCubemapLayered[2]
Maximum cubemaps layered texture dims.
Definition: hip_runtime_api.h:161
size_t sharedMemPerBlockOptin
Per device m ax shared mem per block usable by special opt in.
Definition: hip_runtime_api.h:203
size_t sharedMemPerMultiprocessor
Amount of shared memory available per multiprocessor.
Definition: hip_runtime_api.h:186
int singleToDoublePrecisionPerfRatio
Deprecated. CUDA only.
Definition: hip_runtime_api.h:192
int maxSurface2D[2]
Maximum 2D surface size.
Definition: hip_runtime_api.h:163
int memoryClockRate
Max global memory clock frequency in khz.
Definition: hip_runtime_api.h:178
int maxTexture2DLinear[3]
Maximum 2D tex dimensions if tex are bound to pitched memory.
Definition: hip_runtime_api.h:153
int sparseHipArraySupported
Indicates if device supports sparse hip arrays.
Definition: hip_runtime_api.h:212
int clockInstructionRate
Definition: hip_runtime_api.h:235
int localL1CacheSupported
Locals are cahced in L1.
Definition: hip_runtime_api.h:185
int regsPerMultiprocessor
registers available per multiprocessor
Definition: hip_runtime_api.h:187
int regsPerBlock
Registers per block.
Definition: hip_runtime_api.h:118
int maxTexture2D[2]
Maximum dimensions (width, height) of 2D images, in image elements.
Definition: hip_runtime_api.h:151
int cooperativeLaunch
HIP device supports cooperative launch.
Definition: hip_runtime_api.h:200
int maxTexture3D[3]
Definition: hip_runtime_api.h:155
int directManagedMemAccessFromHost
Definition: hip_runtime_api.h:206
int cooperativeMultiDeviceUnmatchedFunc
Definition: hip_runtime_api.h:240
int deviceOverlap
Deprecated. Use asyncEngineCount instead.
Definition: hip_runtime_api.h:139
int pageableMemoryAccessUsesHostPageTables
Definition: hip_runtime_api.h:204
unsigned int * hdpRegFlushCntl
Addres of HDP_REG_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:239
int maxThreadsDim[3]
Max number of threads in each dimension (XYZ) of a block.
Definition: hip_runtime_api.h:123
int unifiedAddressing
Does device and host share unified address space.
Definition: hip_runtime_api.h:177
int multiGpuBoardGroupID
Unique identifier for a group of devices on same multiboard GPU.
Definition: hip_runtime_api.h:190
int isMultiGpuBoard
1 if device is on a multi-GPU board, 0 if not.
Definition: hip_runtime_api.h:189
int canUseHostPointerForRegisteredMem
Definition: hip_runtime_api.h:198
int maxTexture1DLayered[2]
Maximum number of elements in 1D array images.
Definition: hip_runtime_api.h:159
int pciDomainID
PCI Domain ID.
Definition: hip_runtime_api.h:174
size_t maxSharedMemoryPerMultiProcessor
Maximum Shared Memory Per CU. HIP Only.
Definition: hip_runtime_api.h:234
int maxTextureCubemap
Maximum cubemap texture dims.
Definition: hip_runtime_api.h:158
int hipReserved[32]
Reserved for adding new entries for HIP/CUDA.
Definition: hip_runtime_api.h:230
int cooperativeMultiDeviceUnmatchedGridDim
Definition: hip_runtime_api.h:243
int gpuDirectRDMASupported
Indicates device support of RDMA APIs.
Definition: hip_runtime_api.h:217
int minor
Definition: hip_runtime_api.h:132
char gcnArchName[256]
AMD GCN Arch Name. HIP Only.
Definition: hip_runtime_api.h:233
char luid[8]
8-byte unique identifier. Only valid on windows
Definition: hip_runtime_api.h:114
int kernelExecTimeoutEnabled
Run time limit for kernels executed on the device.
Definition: hip_runtime_api.h:144
unsigned int memoryPoolSupportedHandleTypes
Bitmask of handle types support with mempool based IPC.
Definition: hip_runtime_api.h:222
unsigned int * hdpMemFlushCntl
Addres of HDP_MEM_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:238
int concurrentManagedAccess
Definition: hip_runtime_api.h:195
int integrated
APU vs dGPU.
Definition: hip_runtime_api.h:145
int canMapHostMemory
Check whether HIP can map host memory.
Definition: hip_runtime_api.h:146
size_t reservedSharedMemPerBlock
Shared memory reserved by driver per block.
Definition: hip_runtime_api.h:210
int maxSurfaceCubemap
Maximum cubemap surface size.
Definition: hip_runtime_api.h:167
int maxSurface3D[3]
Maximum 3D surface size.
Definition: hip_runtime_api.h:164
int asicRevision
Revision of the GPU in this device.
Definition: hip_runtime_api.h:253
size_t totalGlobalMem
Size of global memory region (in bytes).
Definition: hip_runtime_api.h:116
int cooperativeMultiDeviceUnmatchedBlockDim
Definition: hip_runtime_api.h:246
int maxSurface1DLayered[2]
Maximum 1D layered surface size.
Definition: hip_runtime_api.h:165
int persistingL2CacheMaxSize
Device's max L2 persisting lines in bytes.
Definition: hip_runtime_api.h:181
int maxSurface1D
Maximum 1D surface size.
Definition: hip_runtime_api.h:162
int concurrentKernels
Device can possibly execute multiple kernels concurrently.
Definition: hip_runtime_api.h:170
int isLargeBar
1: if it is a large PCI bar device, else 0
Definition: hip_runtime_api.h:252
int clusterLaunch
Device supports cluster launch.
Definition: hip_runtime_api.h:226
int maxTexture1DMipmap
Maximum 1D mipmap texture size.
Definition: hip_runtime_api.h:149
int multiProcessorCount
Definition: hip_runtime_api.h:140
int maxTexture3DAlt[3]
Maximum alternate 3D texture dims.
Definition: hip_runtime_api.h:157
int maxGridSize[3]
Max grid dimensions (XYZ).
Definition: hip_runtime_api.h:124
int pciDeviceID
PCI Device ID.
Definition: hip_runtime_api.h:173
int maxBlocksPerMultiProcessor
Max number of blocks on CU.
Definition: hip_runtime_api.h:208
int computeMode
Compute mode.
Definition: hip_runtime_api.h:147
int maxSurface2DLayered[3]
Maximum 2D layared surface size.
Definition: hip_runtime_api.h:166
int major
Definition: hip_runtime_api.h:128
int warpSize
Warp size.
Definition: hip_runtime_api.h:119
int tccDriver
1:If device is Tesla device using TCC driver, else 0
Definition: hip_runtime_api.h:175
unsigned int luidDeviceNodeMask
LUID node mask.
Definition: hip_runtime_api.h:115
int hostRegisterReadOnlySupported
Definition: hip_runtime_api.h:213
int cooperativeMultiDeviceUnmatchedSharedMem
Definition: hip_runtime_api.h:249
int maxThreadsPerBlock
Max work items per work group or workgroup max size.
Definition: hip_runtime_api.h:122
hipDeviceArch_t arch
Architectural feature flags. New for HIP.
Definition: hip_runtime_api.h:237
int managedMemory
Device supports allocating managed memory on this system.
Definition: hip_runtime_api.h:188
size_t texturePitchAlignment
Pitch alignment requirement for texture references bound to.
Definition: hip_runtime_api.h:138
Definition: hip_runtime_api.h:1891
hipEvent_t event
The event to be recorded when node executes.
Definition: hip_runtime_api.h:1892
Definition: hip_runtime_api.h:1884
hipEvent_t event
Event to wait on.
Definition: hip_runtime_api.h:1885
Definition: driver_types.h:394
Definition: hip_runtime_api.h:1342
unsigned int flags
Definition: hip_runtime_api.h:1345
unsigned long long offset
Definition: hip_runtime_api.h:1343
unsigned long long size
Definition: hip_runtime_api.h:1344
Definition: hip_runtime_api.h:1328
unsigned int flags
Definition: hip_runtime_api.h:1339
const void * name
Definition: hip_runtime_api.h:1334
int fd
Definition: hip_runtime_api.h:1331
unsigned long long size
Definition: hip_runtime_api.h:1338
hipExternalMemoryHandleType type
Definition: hip_runtime_api.h:1329
const void * nvSciBufObject
Definition: hip_runtime_api.h:1336
void * handle
Definition: hip_runtime_api.h:1333
Definition: hip_runtime_api.h:1348
hipExtent extent
Definition: hip_runtime_api.h:1351
unsigned int numLevels
Definition: hip_runtime_api.h:1353
unsigned int flags
Definition: hip_runtime_api.h:1352
unsigned long long offset
Definition: hip_runtime_api.h:1349
hipChannelFormatDesc formatDesc
Definition: hip_runtime_api.h:1350
Definition: hip_runtime_api.h:1368
unsigned int flags
Definition: hip_runtime_api.h:1378
const void * name
Definition: hip_runtime_api.h:1374
const void * NvSciSyncObj
Definition: hip_runtime_api.h:1376
hipExternalSemaphoreHandleType type
Definition: hip_runtime_api.h:1369
void * handle
Definition: hip_runtime_api.h:1373
int fd
Definition: hip_runtime_api.h:1371
Definition: hip_runtime_api.h:1766
const hipExternalSemaphoreSignalParams * paramsArray
Total number of handles and parameters contained in extSemArray and paramsArray.
Definition: hip_runtime_api.h:1770
hipExternalSemaphore_t * extSemArray
< Array containing external semaphore handles.
Definition: hip_runtime_api.h:1768
unsigned int numExtSems
Definition: hip_runtime_api.h:1772
Definition: hip_runtime_api.h:1382
unsigned long long reserved
Definition: hip_runtime_api.h:1389
unsigned long long value
Definition: hip_runtime_api.h:1385
void * fence
Definition: hip_runtime_api.h:1388
unsigned int flags
Definition: hip_runtime_api.h:1396
unsigned long long key
Definition: hip_runtime_api.h:1392
Definition: hip_runtime_api.h:1778
unsigned int numExtSems
Definition: hip_runtime_api.h:1784
const hipExternalSemaphoreWaitParams * paramsArray
Total number of handles and parameters contained in extSemArray and paramsArray.
Definition: hip_runtime_api.h:1782
hipExternalSemaphore_t * extSemArray
< Array containing external semaphore handles.
Definition: hip_runtime_api.h:1780
Definition: hip_runtime_api.h:1402
unsigned long long value
Definition: hip_runtime_api.h:1405
void * fence
Definition: hip_runtime_api.h:1408
unsigned int timeoutMs
Definition: hip_runtime_api.h:1413
unsigned long long key
Definition: hip_runtime_api.h:1412
unsigned int flags
Definition: hip_runtime_api.h:1417
unsigned long long reserved
Definition: hip_runtime_api.h:1409
Definition: hip_runtime_api.h:704
int cacheModeCA
Definition: hip_runtime_api.h:706
int binaryVersion
Definition: hip_runtime_api.h:705
size_t constSizeBytes
Definition: hip_runtime_api.h:707
int preferredShmemCarveout
Definition: hip_runtime_api.h:712
size_t sharedSizeBytes
Definition: hip_runtime_api.h:714
int maxDynamicSharedSizeBytes
Definition: hip_runtime_api.h:709
int ptxVersion
Definition: hip_runtime_api.h:713
int numRegs
Definition: hip_runtime_api.h:711
size_t localSizeBytes
Definition: hip_runtime_api.h:708
int maxThreadsPerBlock
Definition: hip_runtime_api.h:710
Definition: hip_runtime_api.h:1306
unsigned int gridDimX
Width(X) of grid in blocks.
Definition: hip_runtime_api.h:1308
unsigned int blockDimX
X dimension of each thread block.
Definition: hip_runtime_api.h:1311
hipStream_t hStream
Stream identifier.
Definition: hip_runtime_api.h:1315
unsigned int blockDimY
Y dimension of each thread block.
Definition: hip_runtime_api.h:1312
unsigned int gridDimY
Height(Y) of grid in blocks.
Definition: hip_runtime_api.h:1309
unsigned int gridDimZ
Depth(Z) of grid in blocks.
Definition: hip_runtime_api.h:1310
unsigned int sharedMemBytes
Shared memory.
Definition: hip_runtime_api.h:1314
unsigned int blockDimZ
Z dimension of each thread block.
Definition: hip_runtime_api.h:1313
void ** kernelParams
Kernel parameters.
Definition: hip_runtime_api.h:1316
Definition: hip_runtime_api.h:1948
unsigned char to_port
Currently no node types define non-zero ports. This field must be set to zero.
Definition: hip_runtime_api.h:1959
unsigned char reserved[5]
These bytes are unused and must be zeroed.
Definition: hip_runtime_api.h:1957
unsigned char type
This should be populated with a value from hipGraphDependencyType.
Definition: hip_runtime_api.h:1960
unsigned char from_port
Definition: hip_runtime_api.h:1950
Definition: hip_runtime_api.h:1736
hipGraphInstantiateResult result_out
Definition: hip_runtime_api.h:1739
hipStream_t uploadStream
Definition: hip_runtime_api.h:1741
hipGraphNode_t errNode_out
Definition: hip_runtime_api.h:1737
unsigned long long flags
Definition: hip_runtime_api.h:1738
Definition: hip_runtime_api.h:1905
hipGraphNodeType type
Definition: hip_runtime_api.h:1906
int reserved0[3]
Definition: hip_runtime_api.h:1907
hipMemAllocNodeParams alloc
Definition: hip_runtime_api.h:1919
long long reserved1[29]
Definition: hip_runtime_api.h:1909
hipEventRecordNodeParams eventRecord
Definition: hip_runtime_api.h:1916
hipExternalSemaphoreSignalNodeParams extSemSignal
Definition: hip_runtime_api.h:1917
hipMemFreeNodeParams free
Definition: hip_runtime_api.h:1920
hipChildGraphNodeParams graph
Definition: hip_runtime_api.h:1914
hipExternalSemaphoreWaitNodeParams extSemWait
Definition: hip_runtime_api.h:1918
hipMemsetParams memset
Definition: hip_runtime_api.h:1912
hipHostNodeParams host
Definition: hip_runtime_api.h:1913
long long reserved2
Definition: hip_runtime_api.h:1923
hipKernelNodeParams kernel
Definition: hip_runtime_api.h:1910
hipEventWaitNodeParams eventWait
Definition: hip_runtime_api.h:1915
hipMemcpyNodeParams memcpy
Definition: hip_runtime_api.h:1911
Definition: hip_runtime_api.h:1488
hipHostFn_t fn
Definition: hip_runtime_api.h:1489
void * userData
Definition: hip_runtime_api.h:1490
Definition: hip_runtime_api.h:691
Definition: hip_runtime_api.h:688
Definition: hip_runtime_api.h:1492
dim3 gridDim
Definition: hip_runtime_api.h:1496
unsigned int sharedMemBytes
Definition: hip_runtime_api.h:1498
dim3 blockDim
Definition: hip_runtime_api.h:1493
void ** kernelParams
Definition: hip_runtime_api.h:1497
void ** extra
Definition: hip_runtime_api.h:1494
void * func
Definition: hip_runtime_api.h:1495
Definition: hip_runtime_api.h:1967
hipLaunchAttributeValue val
Value associated with the launch attribute.
Definition: hip_runtime_api.h:1971
hipLaunchAttributeID id
Identifier of the launch attribute.
Definition: hip_runtime_api.h:1968
hipLaunchAttributeValue value
Value associated with the launch attribute.
Definition: hip_runtime_api.h:1972
Definition: hip_runtime_api.h:1979
dim3 blockDim
Block dimensions.
Definition: hip_runtime_api.h:1981
dim3 gridDim
Grid dimensions.
Definition: hip_runtime_api.h:1980
unsigned int numAttrs
Number of attributes.
Definition: hip_runtime_api.h:1985
hipStream_t stream
Stream identifier.
Definition: hip_runtime_api.h:1983
size_t dynamicSmemBytes
Dynamic shared-memory size per thread block.
Definition: hip_runtime_api.h:1982
hipLaunchAttribute * attrs
Attributes list.
Definition: hip_runtime_api.h:1984
Definition: hip_runtime_api.h:1543
unsigned char remote
Definition: hip_runtime_api.h:1545
unsigned char default_
Definition: hip_runtime_api.h:1544
Definition: hip_runtime_api.h:1295
size_t sharedMem
Shared memory.
Definition: hip_runtime_api.h:1300
void ** args
Arguments.
Definition: hip_runtime_api.h:1299
dim3 blockDim
Block dimensions.
Definition: hip_runtime_api.h:1298
dim3 gridDim
Grid dimensions.
Definition: hip_runtime_api.h:1297
void * func
Device function symbol.
Definition: hip_runtime_api.h:1296
hipStream_t stream
Stream identifier.
Definition: hip_runtime_api.h:1301
Definition: hip_runtime_api.h:1201
hipMemAccessFlags flags
Accessibility flags to set.
Definition: hip_runtime_api.h:1203
hipMemLocation location
Location on which the accessibility has to change.
Definition: hip_runtime_api.h:1202
Definition: hip_runtime_api.h:1509
const hipMemAccessDesc * accessDescs
The number of memory access descriptors.
Definition: hip_runtime_api.h:1512
size_t bytesize
The size of the requested allocation in bytes.
Definition: hip_runtime_api.h:1515
hipMemPoolProps poolProps
Definition: hip_runtime_api.h:1510
size_t accessDescCount
Definition: hip_runtime_api.h:1513
void * dptr
Returned device address of the allocation.
Definition: hip_runtime_api.h:1516
Definition: hip_runtime_api.h:1748
void * win32HandleMetaData
Metadata for Win32 handles.
Definition: hip_runtime_api.h:1755
hipMemAllocationType type
Memory allocation type.
Definition: hip_runtime_api.h:1749
struct hipMemAllocationProp::@33 allocFlags
unsigned char gpuDirectRDMACapable
RDMA capable.
Definition: hip_runtime_api.h:1758
hipMemAllocationHandleType requestedHandleTypes
Requested handle types.
Definition: hip_runtime_api.h:1752
unsigned short usage
Usage.
Definition: hip_runtime_api.h:1759
hipMemAllocationHandleType requestedHandleType
Requested handle type.
Definition: hip_runtime_api.h:1751
hipMemLocation location
Memory location.
Definition: hip_runtime_api.h:1754
unsigned char compressionType
Compression type.
Definition: hip_runtime_api.h:1757
Definition: hip_runtime_api.h:1898
void * dptr
the pointer to be freed
Definition: hip_runtime_api.h:1899
Definition: driver_types.h:466
Definition: hip_runtime_api.h:1231
size_t maxSize
Maximum pool size. When set to 0, defaults to a system dependent value.
Definition: hip_runtime_api.h:1241
unsigned char reserved[56]
Reserved for future use, must be 0.
Definition: hip_runtime_api.h:1242
hipMemLocation location
Location where allocations should reside.
Definition: hip_runtime_api.h:1236
hipMemAllocationHandleType handleTypes
Handle types that will be supported by allocations from the pool.
Definition: hip_runtime_api.h:1235
hipMemAllocationType allocType
Allocation type. Currently must be specified as hipMemAllocationTypePinned.
Definition: hip_runtime_api.h:1233
void * win32SecurityAttributes
Definition: hip_runtime_api.h:1240
Definition: hip_runtime_api.h:1247
unsigned char reserved[64]
Definition: hip_runtime_api.h:1248
Definition: driver_types.h:543
Definition: driver_types.h:411
Definition: driver_types.h:551
Definition: driver_types.h:497
Definition: hip_runtime_api.h:1867
int reserved[3]
Must be zero.
Definition: hip_runtime_api.h:1869
int flags
Must be zero.
Definition: hip_runtime_api.h:1868
hipMemcpy3DParms copyParams
Params set for the memory copy.
Definition: hip_runtime_api.h:1870
Definition: hip_runtime_api.h:1500
void * dst
Definition: hip_runtime_api.h:1501
unsigned int value
Definition: hip_runtime_api.h:1505
unsigned int elementSize
Definition: hip_runtime_api.h:1502
size_t width
Definition: hip_runtime_api.h:1506
size_t pitch
Definition: hip_runtime_api.h:1504
size_t height
Definition: hip_runtime_api.h:1503
Definition: driver_types.h:137
Definition: driver_types.h:385
Definition: hip_runtime_api.h:280
int device
Definition: hip_runtime_api.h:282
void * hostPointer
Definition: hip_runtime_api.h:284
enum hipMemoryType type
Definition: hip_runtime_api.h:281
int isManaged
Definition: hip_runtime_api.h:285
void * devicePointer
Definition: hip_runtime_api.h:283
unsigned allocationFlags
Definition: hip_runtime_api.h:286
Definition: driver_types.h:286
Definition: driver_types.h:345
unsigned int flags
Definition: hip_runtime_api.h:1026
hipStreamBatchMemOpType operation
Definition: hip_runtime_api.h:1025
unsigned int flags
Definition: hip_runtime_api.h:1030
hipStreamBatchMemOpType operation
Definition: hip_runtime_api.h:1029
hipStreamBatchMemOpType operation
Definition: hip_runtime_api.h:1005
uint64_t value64
Definition: hip_runtime_api.h:1009
hipDeviceptr_t address
Definition: hip_runtime_api.h:1006
hipDeviceptr_t alias
Not valid for AMD backend. Initial value is unimportant.
Definition: hip_runtime_api.h:1012
uint32_t value
Definition: hip_runtime_api.h:1008
unsigned int flags
Definition: hip_runtime_api.h:1011
hipDeviceptr_t address
Definition: hip_runtime_api.h:1016
hipDeviceptr_t alias
Not valid for AMD backend. Initial value is unimportant.
Definition: hip_runtime_api.h:1022
uint32_t value
Definition: hip_runtime_api.h:1018
hipStreamBatchMemOpType operation
Definition: hip_runtime_api.h:1015
unsigned int flags
Definition: hip_runtime_api.h:1021
uint64_t value64
Definition: hip_runtime_api.h:1019
Definition: texture_types.h:116
Definition: hip_runtime_api.h:96
Definition: texture_types.h:147
Definition: texture_types.h:95
Defines surface types for HIP runtime.
struct __hip_surface * hipSurfaceObject_t
Definition: surface_types.h:43
struct __hip_texture * hipTextureObject_t
Definition: texture_types.h:70
hipTextureAddressMode
Definition: texture_types.h:75
hipTextureFilterMode
Definition: texture_types.h:85
Definition: hip_runtime_api.h:1584
int priority
Definition: hip_runtime_api.h:1590
char pad[64]
64 byte padding
Definition: hip_runtime_api.h:1585
hipLaunchMemSyncDomain memSyncDomain
Value of launch attribute hipLaunchAttributeMemSyncDomain.
Definition: hip_runtime_api.h:1598
int cooperative
Definition: hip_runtime_api.h:1588
hipAccessPolicyWindow accessPolicyWindow
Value of launch attribute hipLaunchAttributeAccessPolicyWindow.
Definition: hip_runtime_api.h:1587
hipSynchronizationPolicy syncPolicy
Definition: hip_runtime_api.h:1593
hipLaunchMemSyncDomainMap memSyncDomainMap
Value of launch attribute hipLaunchAttributeMemSyncDomainMap.
Definition: hip_runtime_api.h:1596
Union representing batch memory operation parameters for HIP streams.
Definition: hip_runtime_api.h:1002
hipStreamBatchMemOpType operation
Definition: hip_runtime_api.h:1003