HIP: Heterogenous-computing Interface for Portability
hip_runtime_api.h
Go to the documentation of this file.
1 /*
2 Copyright (c) 2015 - 2022 Advanced Micro Devices, Inc. All rights reserved.
3 
4 Permission is hereby granted, free of charge, to any person obtaining a copy
5 of this software and associated documentation files (the "Software"), to deal
6 in the Software without restriction, including without limitation the rights
7 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 copies of the Software, and to permit persons to whom the Software is
9 furnished to do so, subject to the following conditions:
10 
11 The above copyright notice and this permission notice shall be included in
12 all copies or substantial portions of the Software.
13 
14 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 THE SOFTWARE.
21 */
22 
30 #ifndef HIP_INCLUDE_HIP_HIP_RUNTIME_API_H
31 #define HIP_INCLUDE_HIP_HIP_RUNTIME_API_H
32 
33 
34 #include <string.h> // for getDeviceProp
35 #include <hip/hip_version.h>
36 #include <hip/hip_common.h>
37 
38 enum {
39  HIP_SUCCESS = 0,
40  HIP_ERROR_INVALID_VALUE,
41  HIP_ERROR_NOT_INITIALIZED,
42  HIP_ERROR_LAUNCH_OUT_OF_RESOURCES
43 };
44 
45 typedef struct {
46  // 32-bit Atomics
47  unsigned hasGlobalInt32Atomics : 1;
48  unsigned hasGlobalFloatAtomicExch : 1;
49  unsigned hasSharedInt32Atomics : 1;
50  unsigned hasSharedFloatAtomicExch : 1;
51  unsigned hasFloatAtomicAdd : 1;
52 
53  // 64-bit Atomics
54  unsigned hasGlobalInt64Atomics : 1;
55  unsigned hasSharedInt64Atomics : 1;
56 
57  // Doubles
58  unsigned hasDoubles : 1;
59 
60  // Warp cross-lane operations
61  unsigned hasWarpVote : 1;
62  unsigned hasWarpBallot : 1;
63  unsigned hasWarpShuffle : 1;
64  unsigned hasFunnelShift : 1;
65 
66  // Sync
67  unsigned hasThreadFenceSystem : 1;
68  unsigned hasSyncThreadsExt : 1;
69 
70  // Misc
71  unsigned hasSurfaceFuncs : 1;
72  unsigned has3dGrid : 1;
73  unsigned hasDynamicParallelism : 1;
75 
76 typedef struct hipUUID_t {
77  char bytes[16];
78 } hipUUID;
79 
80 //---
81 // Common headers for both NVCC and HCC paths:
82 
87 typedef struct hipDeviceProp_t {
88  char name[256];
89  size_t totalGlobalMem;
92  int warpSize;
94  int maxThreadsDim[3];
95  int maxGridSize[3];
96  int clockRate;
99  size_t totalConstMem;
100  int major;
101  int minor;
104  int multiProcessorCount;
115  int pciBusID;
120  int gcnArch;
121  char gcnArchName[256];
127  int maxTexture2D[2];
128  int maxTexture3D[3];
129  unsigned int* hdpMemFlushCntl;
130  unsigned int* hdpRegFlushCntl;
131  size_t memPitch;
136  int tccDriver;
144  int isLargeBar;
154 
155 
159 typedef enum hipMemoryType {
167 
173 typedef enum hipKernelNodeAttrID {
174  hipKernelNodeAttributeAccessPolicyWindow = 1,
175  hipKernelNodeAttributeCooperative = 2,
176 } hipKernelNodeAttrID;
177 typedef enum hipAccessProperty {
178  hipAccessPropertyNormal = 0,
179  hipAccessPropertyStreaming = 1,
180  hipAccessPropertyPersisting = 2,
181 } hipAccessProperty;
182 typedef struct hipAccessPolicyWindow {
183  void* base_ptr;
184  hipAccessProperty hitProp;
185  float hitRatio;
186  hipAccessProperty missProp;
187  size_t num_bytes;
189 typedef union hipKernelNodeAttrValue {
190  hipAccessPolicyWindow accessPolicyWindow;
191  int cooperative;
193 
197 typedef struct hipPointerAttribute_t {
198  enum hipMemoryType memoryType;
199  int device;
200  void* devicePointer;
201  void* hostPointer;
202  int isManaged;
203  unsigned allocationFlags; /* flags specified when memory was allocated*/
204  /* peers? */
206 
207 
208 // hack to get these to show up in Doxygen:
215 // Ignoring error-code return values from hip APIs is discouraged. On C++17,
216 // we can make that yield a warning
217 #if __cplusplus >= 201703L
218 #define __HIP_NODISCARD [[nodiscard]]
219 #else
220 #define __HIP_NODISCARD
221 #endif
222 
223 /*
224  * @brief hipError_t
225  * @enum
226  * @ingroup Enumerations
227  */
228 // Developer note - when updating these, update the hipErrorName and hipErrorString functions in
229 // NVCC and HCC paths Also update the hipCUDAErrorTohipError function in NVCC path.
230 
231 typedef enum __HIP_NODISCARD hipError_t {
234  hipErrorOutOfMemory = 2,
236  // Deprecated
238  hipErrorNotInitialized = 3,
239  // Deprecated
240  hipErrorInitializationError = 3,
241  hipErrorDeinitialized = 4,
242  hipErrorProfilerDisabled = 5,
243  hipErrorProfilerNotInitialized = 6,
244  hipErrorProfilerAlreadyStarted = 7,
245  hipErrorProfilerAlreadyStopped = 8,
246  hipErrorInvalidConfiguration = 9,
247  hipErrorInvalidPitchValue = 12,
248  hipErrorInvalidSymbol = 13,
251  hipErrorInsufficientDriver = 35,
252  hipErrorMissingConfiguration = 52,
253  hipErrorPriorLaunchFailure = 53,
254  hipErrorInvalidDeviceFunction = 98,
257  hipErrorInvalidImage = 200,
259  hipErrorContextAlreadyCurrent = 202,
260  hipErrorMapFailed = 205,
261  // Deprecated
263  hipErrorUnmapFailed = 206,
264  hipErrorArrayIsMapped = 207,
265  hipErrorAlreadyMapped = 208,
266  hipErrorNoBinaryForGpu = 209,
267  hipErrorAlreadyAcquired = 210,
268  hipErrorNotMapped = 211,
269  hipErrorNotMappedAsArray = 212,
270  hipErrorNotMappedAsPointer = 213,
271  hipErrorECCNotCorrectable = 214,
272  hipErrorUnsupportedLimit = 215,
273  hipErrorContextAlreadyInUse = 216,
274  hipErrorPeerAccessUnsupported = 217,
276  hipErrorInvalidGraphicsContext = 219,
277  hipErrorInvalidSource = 300,
278  hipErrorFileNotFound = 301,
279  hipErrorSharedObjectSymbolNotFound = 302,
280  hipErrorSharedObjectInitFailed = 303,
281  hipErrorOperatingSystem = 304,
282  hipErrorInvalidHandle = 400,
283  // Deprecated
286  hipErrorNotFound = 500,
288  hipErrorIllegalAddress = 700,
293  hipErrorLaunchTimeOut = 702,
295  704,
297  705,
298  hipErrorSetOnActiveProcess = 708,
299  hipErrorContextIsDestroyed = 709,
302  712,
304  713,
306  719,
308  720,
309  hipErrorNotSupported = 801,
326  hipErrorCapturedEvent = 907,
335  hipErrorUnknown = 999, //< Unknown error.
339  // HSA Runtime Error Codes start here.
341  hipErrorRuntimeOther = 1053,
343  hipErrorTbd
345 } hipError_t;
346 
347 #undef __HIP_NODISCARD
348 
349 /*
350  * @brief hipDeviceAttribute_t
351  * @enum
352  * @ingroup Enumerations
353  */
354 typedef enum hipDeviceAttribute_t {
355  hipDeviceAttributeCudaCompatibleBegin = 0,
356 
357  hipDeviceAttributeEccEnabled = hipDeviceAttributeCudaCompatibleBegin,
452 
453  hipDeviceAttributeCudaCompatibleEnd = 9999,
454  hipDeviceAttributeAmdSpecificBegin = 10000,
455 
456  hipDeviceAttributeClockInstructionRate = hipDeviceAttributeAmdSpecificBegin,
479 
480  hipDeviceAttributeAmdSpecificEnd = 19999,
481  hipDeviceAttributeVendorSpecificBegin = 20000,
482  // Extended attributes for vendors
484 
485 enum hipComputeMode {
486  hipComputeModeDefault = 0,
487  hipComputeModeExclusive = 1,
488  hipComputeModeProhibited = 2,
489  hipComputeModeExclusiveProcess = 3
490 };
491 
496 #if (defined(__HIP_PLATFORM_HCC__) || defined(__HIP_PLATFORM_AMD__)) && !(defined(__HIP_PLATFORM_NVCC__) || defined(__HIP_PLATFORM_NVIDIA__))
497 
498 #include <stdint.h>
499 #include <stddef.h>
500 #ifndef GENERIC_GRID_LAUNCH
501 #define GENERIC_GRID_LAUNCH 1
502 #endif
503 #include <hip/amd_detail/host_defines.h>
504 #include <hip/driver_types.h>
505 #include <hip/texture_types.h>
506 #include <hip/surface_types.h>
507 #if defined(_MSC_VER)
508 #define DEPRECATED(msg) __declspec(deprecated(msg))
509 #else // !defined(_MSC_VER)
510 #define DEPRECATED(msg) __attribute__ ((deprecated(msg)))
511 #endif // !defined(_MSC_VER)
512 #define DEPRECATED_MSG "This API is marked as deprecated and may not be supported in future releases. For more details please refer https://github.com/ROCm-Developer-Tools/HIP/blob/master/docs/markdown/hip_deprecated_api_list.md"
513 #define HIP_LAUNCH_PARAM_BUFFER_POINTER ((void*)0x01)
514 #define HIP_LAUNCH_PARAM_BUFFER_SIZE ((void*)0x02)
515 #define HIP_LAUNCH_PARAM_END ((void*)0x03)
516 #ifdef __cplusplus
517  #define __dparm(x) \
518  = x
519 #else
520  #define __dparm(x)
521 #endif
522 #ifdef __GNUC__
523 #pragma GCC visibility push (default)
524 #endif
525 #ifdef __cplusplus
526 namespace hip_impl {
527 hipError_t hip_init();
528 } // namespace hip_impl
529 #endif
530 // Structure definitions:
531 #ifdef __cplusplus
532 extern "C" {
533 #endif
534 //---
535 // API-visible structures
536 typedef struct ihipCtx_t* hipCtx_t;
537 // Note many APIs also use integer deviceIds as an alternative to the device pointer:
538 typedef int hipDevice_t;
539 typedef enum hipDeviceP2PAttr {
540  hipDevP2PAttrPerformanceRank = 0,
541  hipDevP2PAttrAccessSupported,
542  hipDevP2PAttrNativeAtomicSupported,
543  hipDevP2PAttrHipArrayAccessSupported
544 } hipDeviceP2PAttr;
545 typedef struct ihipStream_t* hipStream_t;
546 #define hipIpcMemLazyEnablePeerAccess 0
547 #define HIP_IPC_HANDLE_SIZE 64
548 typedef struct hipIpcMemHandle_st {
549  char reserved[HIP_IPC_HANDLE_SIZE];
551 typedef struct hipIpcEventHandle_st {
552  char reserved[HIP_IPC_HANDLE_SIZE];
554 typedef struct ihipModule_t* hipModule_t;
555 typedef struct ihipModuleSymbol_t* hipFunction_t;
559 typedef struct ihipMemPoolHandle_t* hipMemPool_t;
560 
561 typedef struct hipFuncAttributes {
562  int binaryVersion;
563  int cacheModeCA;
564  size_t constSizeBytes;
565  size_t localSizeBytes;
566  int maxDynamicSharedSizeBytes;
567  int maxThreadsPerBlock;
568  int numRegs;
569  int preferredShmemCarveout;
570  int ptxVersion;
571  size_t sharedSizeBytes;
573 typedef struct ihipEvent_t* hipEvent_t;
574 enum hipLimit_t {
575  hipLimitPrintfFifoSize = 0x01,
576  hipLimitMallocHeapSize = 0x02,
577 };
582 //Flags that can be used with hipStreamCreateWithFlags.
584 #define hipStreamDefault 0x00
585 
587 #define hipStreamNonBlocking 0x01
588 
589 //Flags that can be used with hipEventCreateWithFlags.
591 #define hipEventDefault 0x0
592 
594 #define hipEventBlockingSync 0x1
595 
597 #define hipEventDisableTiming 0x2
598 
600 #define hipEventInterprocess 0x4
601 
604 #define hipEventReleaseToDevice 0x40000000
605 
608 #define hipEventReleaseToSystem 0x80000000
609 
610 //Flags that can be used with hipHostMalloc.
612 #define hipHostMallocDefault 0x0
613 
615 #define hipHostMallocPortable 0x1
616 
619 #define hipHostMallocMapped 0x2
620 
624 #define hipHostMallocWriteCombined 0x4
625 
627 #define hipHostMallocNumaUser 0x20000000
628 
630 #define hipHostMallocCoherent 0x40000000
631 
633 #define hipHostMallocNonCoherent 0x80000000
634 
636 #define hipMemAttachGlobal 0x01
637 
639 #define hipMemAttachHost 0x02
640 
642 #define hipMemAttachSingle 0x04
643 
644 #define hipDeviceMallocDefault 0x0
645 
647 #define hipDeviceMallocFinegrained 0x1
648 
650 #define hipMallocSignalMemory 0x2
651 
652 //Flags that can be used with hipHostRegister.
654 #define hipHostRegisterDefault 0x0
655 
657 #define hipHostRegisterPortable 0x1
658 
661 #define hipHostRegisterMapped 0x2
662 
664 #define hipHostRegisterIoMemory 0x4
665 
667 #define hipExtHostRegisterCoarseGrained 0x8
668 
670 #define hipDeviceScheduleAuto 0x0
671 
674 #define hipDeviceScheduleSpin 0x1
675 
678 #define hipDeviceScheduleYield 0x2
679 #define hipDeviceScheduleBlockingSync 0x4
680 #define hipDeviceScheduleMask 0x7
681 #define hipDeviceMapHost 0x8
682 #define hipDeviceLmemResizeToMax 0x16
683 
684 #define hipArrayDefault 0x00
685 #define hipArrayLayered 0x01
686 #define hipArraySurfaceLoadStore 0x02
687 #define hipArrayCubemap 0x04
688 #define hipArrayTextureGather 0x08
689 #define hipOccupancyDefault 0x00
690 #define hipCooperativeLaunchMultiDeviceNoPreSync 0x01
691 #define hipCooperativeLaunchMultiDeviceNoPostSync 0x02
692 #define hipCpuDeviceId ((int)-1)
693 #define hipInvalidDeviceId ((int)-2)
694 //Flags that can be used with hipExtLaunch Set of APIs.
696 #define hipExtAnyOrderLaunch 0x01
697 // Flags to be used with hipStreamWaitValue32 and hipStreamWaitValue64.
698 #define hipStreamWaitValueGte 0x0
699 #define hipStreamWaitValueEq 0x1
700 #define hipStreamWaitValueAnd 0x2
701 #define hipStreamWaitValueNor 0x3
702 // Stream per thread
704 #define hipStreamPerThread ((hipStream_t)2)
705 /*
706  * @brief HIP Memory Advise values
707  * @enum
708  * @ingroup Enumerations
709  */
710 typedef enum hipMemoryAdvise {
728 /*
729  * @brief HIP Coherency Mode
730  * @enum
731  * @ingroup Enumerations
732  */
742 /*
743  * @brief HIP range attributes
744  * @enum
745  * @ingroup Enumerations
746  */
747 typedef enum hipMemRangeAttribute {
758 
764 typedef enum hipMemPoolAttr
765 {
825  typedef enum hipMemLocationType {
826  hipMemLocationTypeInvalid = 0,
834 typedef struct hipMemLocation {
836  int id;
843 typedef enum hipMemAccessFlags {
851 typedef struct hipMemAccessDesc {
860 typedef enum hipMemAllocationType {
861  hipMemAllocationTypeInvalid = 0x0,
866  hipMemAllocationTypeMax = 0x7FFFFFFF
882 typedef struct hipMemPoolProps {
886 
890  unsigned char reserved[64];
895 typedef struct hipMemPoolPtrExportData {
896  unsigned char reserved[64];
898 
899 /*
900  * @brief hipJitOption
901  * @enum
902  * @ingroup Enumerations
903  */
904 typedef enum hipJitOption {
905  hipJitOptionMaxRegisters = 0,
906  hipJitOptionThreadsPerBlock,
907  hipJitOptionWallTime,
908  hipJitOptionInfoLogBuffer,
909  hipJitOptionInfoLogBufferSizeBytes,
910  hipJitOptionErrorLogBuffer,
911  hipJitOptionErrorLogBufferSizeBytes,
912  hipJitOptionOptimizationLevel,
913  hipJitOptionTargetFromContext,
914  hipJitOptionTarget,
915  hipJitOptionFallbackStrategy,
916  hipJitOptionGenerateDebugInfo,
917  hipJitOptionLogVerbose,
918  hipJitOptionGenerateLineInfo,
919  hipJitOptionCacheMode,
920  hipJitOptionSm3xOpt,
921  hipJitOptionFastCompile,
922  hipJitOptionNumOptions
923 } hipJitOption;
927 typedef enum hipFuncAttribute {
928  hipFuncAttributeMaxDynamicSharedMemorySize = 8,
929  hipFuncAttributePreferredSharedMemoryCarveout = 9,
930  hipFuncAttributeMax
935 typedef enum hipFuncCache_t {
944 typedef enum hipSharedMemConfig {
955 typedef struct dim3 {
956  uint32_t x;
957  uint32_t y;
958  uint32_t z;
959 #ifdef __cplusplus
960  constexpr __host__ __device__ dim3(uint32_t _x = 1, uint32_t _y = 1, uint32_t _z = 1) : x(_x), y(_y), z(_z){};
961 #endif
963 typedef struct hipLaunchParams_t {
964  void* func;
967  void **args;
968  size_t sharedMem;
969  hipStream_t stream;
971 typedef enum hipExternalMemoryHandleType_enum {
972  hipExternalMemoryHandleTypeOpaqueFd = 1,
973  hipExternalMemoryHandleTypeOpaqueWin32 = 2,
974  hipExternalMemoryHandleTypeOpaqueWin32Kmt = 3,
975  hipExternalMemoryHandleTypeD3D12Heap = 4,
976  hipExternalMemoryHandleTypeD3D12Resource = 5,
977  hipExternalMemoryHandleTypeD3D11Resource = 6,
978  hipExternalMemoryHandleTypeD3D11ResourceKmt = 7,
979 } hipExternalMemoryHandleType;
981  hipExternalMemoryHandleType type;
982  union {
983  int fd;
984  struct {
985  void *handle;
986  const void *name;
987  } win32;
988  } handle;
989  unsigned long long size;
990  unsigned int flags;
993  unsigned long long offset;
994  unsigned long long size;
995  unsigned int flags;
997 typedef void* hipExternalMemory_t;
998 typedef enum hipExternalSemaphoreHandleType_enum {
999  hipExternalSemaphoreHandleTypeOpaqueFd = 1,
1000  hipExternalSemaphoreHandleTypeOpaqueWin32 = 2,
1001  hipExternalSemaphoreHandleTypeOpaqueWin32Kmt = 3,
1002  hipExternalSemaphoreHandleTypeD3D12Fence = 4
1003 } hipExternalSemaphoreHandleType;
1005  hipExternalSemaphoreHandleType type;
1006  union {
1007  int fd;
1008  struct {
1009  void* handle;
1010  const void* name;
1011  } win32;
1012  } handle;
1013  unsigned int flags;
1015 typedef void* hipExternalSemaphore_t;
1017  struct {
1018  struct {
1019  unsigned long long value;
1020  } fence;
1021  struct {
1022  unsigned long long key;
1023  } keyedMutex;
1024  unsigned int reserved[12];
1025  } params;
1026  unsigned int flags;
1027  unsigned int reserved[16];
1033  struct {
1034  struct {
1035  unsigned long long value;
1036  } fence;
1037  struct {
1038  unsigned long long key;
1039  unsigned int timeoutMs;
1040  } keyedMutex;
1041  unsigned int reserved[10];
1042  } params;
1043  unsigned int flags;
1044  unsigned int reserved[16];
1046 
1047 #if __HIP_HAS_GET_PCH
1048 
1053  void __hipGetPCH(const char** pch, unsigned int*size);
1054 #endif
1055 
1056 /*
1057  * @brief HIP Devices used by current OpenGL Context.
1058  * @enum
1059  * @ingroup Enumerations
1060  */
1061 typedef enum hipGLDeviceList {
1066 } hipGLDeviceList;
1068 
1069 /*
1070  * @brief HIP Access falgs for Interop resources.
1071  * @enum
1072  * @ingroup Enumerations
1073  */
1075  hipGraphicsRegisterFlagsNone = 0,
1078  2,
1081  8
1083 
1084 typedef struct _hipGraphicsResource hipGraphicsResource;
1085 
1086 typedef hipGraphicsResource* hipGraphicsResource_t;
1087 
1091 typedef struct ihipGraph* hipGraph_t;
1095 typedef struct hipGraphNode* hipGraphNode_t;
1099 typedef struct hipGraphExec* hipGraphExec_t;
1100 
1106 typedef enum hipGraphNodeType {
1118  hipGraphNodeTypeCount
1120 
1121 typedef void (*hipHostFn_t)(void* userData);
1122 typedef struct hipHostNodeParams {
1123  hipHostFn_t fn;
1124  void* userData;
1126 typedef struct hipKernelNodeParams {
1127  dim3 blockDim;
1128  void** extra;
1129  void* func;
1130  dim3 gridDim;
1131  void** kernelParams;
1132  unsigned int sharedMemBytes;
1134 typedef struct hipMemsetParams {
1135  void* dst;
1136  unsigned int elementSize;
1137  size_t height;
1138  size_t pitch;
1139  unsigned int value;
1140  size_t width;
1141 } hipMemsetParams;
1142 
1150  hipGraphExecUpdateError = 0x1,
1155  0x4,
1157  0x5,
1159  0x6,
1160  hipGraphExecUpdateErrorUnsupportedFunctionChange = 0x7
1162 
1163 typedef enum hipStreamCaptureMode {
1164  hipStreamCaptureModeGlobal = 0,
1165  hipStreamCaptureModeThreadLocal,
1166  hipStreamCaptureModeRelaxed
1167 } hipStreamCaptureMode;
1174 
1179 
1182  1,
1184 #include <hip/amd_detail/amd_hip_runtime_pt_api.h>
1185 
1186 // Doxygen end group GlobalDefs
1188 //-------------------------------------------------------------------------------------------------
1189 // The handle allows the async commands to use the stream even if the parent hipStream_t goes
1190 // out-of-scope.
1191 // typedef class ihipStream_t * hipStream_t;
1192 /*
1193  * Opaque structure allows the true event (pointed at by the handle) to remain "live" even if the
1194  * surrounding hipEvent_t goes out-of-scope. This is handy for cases where the hipEvent_t goes
1195  * out-of-scope but the true event is being written by some async queue or device */
1196 // typedef struct hipEvent_t {
1197 // struct ihipEvent_t *_handle;
1198 //} hipEvent_t;
1217 // TODO-ctx - more description on error codes.
1218 hipError_t hipInit(unsigned int flags);
1234 hipError_t hipDriverGetVersion(int* driverVersion);
1249 hipError_t hipRuntimeGetVersion(int* runtimeVersion);
1257 hipError_t hipDeviceGet(hipDevice_t* device, int ordinal);
1266 hipError_t hipDeviceComputeCapability(int* major, int* minor, hipDevice_t device);
1275 hipError_t hipDeviceGetName(char* name, int len, hipDevice_t device);
1287 hipError_t hipDeviceGetUuid(hipUUID* uuid, hipDevice_t device);
1297 hipError_t hipDeviceGetP2PAttribute(int* value, hipDeviceP2PAttr attr,
1298  int srcDevice, int dstDevice);
1307 hipError_t hipDeviceGetPCIBusId(char* pciBusId, int len, int device);
1315 hipError_t hipDeviceGetByPCIBusId(int* device, const char* pciBusId);
1323 hipError_t hipDeviceTotalMem(size_t* bytes, hipDevice_t device);
1324 // doxygen end initialization
1343 hipError_t hipDeviceSynchronize(void);
1355 hipError_t hipDeviceReset(void);
1387 hipError_t hipSetDevice(int deviceId);
1401 hipError_t hipGetDevice(int* deviceId);
1414 hipError_t hipGetDeviceCount(int* count);
1424 hipError_t hipDeviceGetAttribute(int* pi, hipDeviceAttribute_t attr, int deviceId);
1439 hipError_t hipDeviceGetDefaultMemPool(hipMemPool_t* mem_pool, int device);
1461 hipError_t hipDeviceSetMemPool(int device, hipMemPool_t mem_pool);
1481 hipError_t hipDeviceGetMemPool(hipMemPool_t* mem_pool, int device);
1495 hipError_t hipGetDeviceProperties(hipDeviceProp_t* prop, int deviceId);
1506 hipError_t hipDeviceSetCacheConfig(hipFuncCache_t cacheConfig);
1517 hipError_t hipDeviceGetCacheConfig(hipFuncCache_t* cacheConfig);
1528 hipError_t hipDeviceGetLimit(size_t* pValue, enum hipLimit_t limit);
1548 hipError_t hipGetDeviceFlags(unsigned int* flags);
1585 hipError_t hipSetDeviceFlags(unsigned flags);
1594 hipError_t hipChooseDevice(int* device, const hipDeviceProp_t* prop);
1607 hipError_t hipExtGetLinkTypeAndHopCount(int device1, int device2, uint32_t* linktype, uint32_t* hopcount);
1608 // TODO: implement IPC apis
1634 hipError_t hipIpcGetMemHandle(hipIpcMemHandle_t* handle, void* devPtr);
1671 hipError_t hipIpcOpenMemHandle(void** devPtr, hipIpcMemHandle_t handle, unsigned int flags);
1690 hipError_t hipIpcCloseMemHandle(void* devPtr);
1691 
1706 hipError_t hipIpcGetEventHandle(hipIpcEventHandle_t* handle, hipEvent_t event);
1707 
1723 hipError_t hipIpcOpenEventHandle(hipEvent_t* event, hipIpcEventHandle_t handle);
1724 
1725 // end doxygen Device
1749 hipError_t hipFuncSetAttribute(const void* func, hipFuncAttribute attr, int value);
1760 hipError_t hipFuncSetCacheConfig(const void* func, hipFuncCache_t config);
1773 hipError_t hipFuncSetSharedMemConfig(const void* func, hipSharedMemConfig config);
1774 //doxygen end execution
1796 hipError_t hipGetLastError(void);
1807 hipError_t hipPeekAtLastError(void);
1816 const char* hipGetErrorName(hipError_t hip_error);
1827 const char* hipGetErrorString(hipError_t hipError);
1828 // end doxygen Error
1858 hipError_t hipStreamCreate(hipStream_t* stream);
1875 hipError_t hipStreamCreateWithFlags(hipStream_t* stream, unsigned int flags);
1893 hipError_t hipStreamCreateWithPriority(hipStream_t* stream, unsigned int flags, int priority);
1907 hipError_t hipDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
1926 hipError_t hipStreamDestroy(hipStream_t stream);
1942 hipError_t hipStreamQuery(hipStream_t stream);
1962 hipError_t hipStreamSynchronize(hipStream_t stream);
1982 hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags);
1996 hipError_t hipStreamGetFlags(hipStream_t stream, unsigned int* flags);
2010 hipError_t hipStreamGetPriority(hipStream_t stream, int* priority);
2030 hipError_t hipExtStreamCreateWithCUMask(hipStream_t* stream, uint32_t cuMaskSize, const uint32_t* cuMask);
2043 hipError_t hipExtStreamGetCUMask(hipStream_t stream, uint32_t cuMaskSize, uint32_t* cuMask);
2047 typedef void (*hipStreamCallback_t)(hipStream_t stream, hipError_t status, void* userData);
2063 hipError_t hipStreamAddCallback(hipStream_t stream, hipStreamCallback_t callback, void* userData,
2064  unsigned int flags);
2065 // end doxygen Stream
2108 hipError_t hipStreamWaitValue32(hipStream_t stream, void* ptr, uint32_t value, unsigned int flags,
2109  uint32_t mask __dparm(0xFFFFFFFF));
2142 hipError_t hipStreamWaitValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags,
2143  uint64_t mask __dparm(0xFFFFFFFFFFFFFFFF));
2163 hipError_t hipStreamWriteValue32(hipStream_t stream, void* ptr, uint32_t value, unsigned int flags);
2183 hipError_t hipStreamWriteValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags);
2184 // end doxygen Stream Memory Operations
2217 hipError_t hipEventCreateWithFlags(hipEvent_t* event, unsigned flags);
2229 hipError_t hipEventCreate(hipEvent_t* event);
2257 #ifdef __cplusplus
2258 hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream = NULL);
2259 #else
2260 hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream);
2261 #endif
2262 
2278 hipError_t hipEventDestroy(hipEvent_t event);
2296 hipError_t hipEventSynchronize(hipEvent_t event);
2332 hipError_t hipEventElapsedTime(float* ms, hipEvent_t start, hipEvent_t stop);
2348 hipError_t hipEventQuery(hipEvent_t event);
2349 // end doxygen Events
2376 hipError_t hipPointerGetAttributes(hipPointerAttribute_t* attributes, const void* ptr);
2391 hipError_t hipPointerGetAttribute(void* data, hipPointer_attribute attribute,
2392  hipDeviceptr_t ptr);
2409 hipError_t hipDrvPointerGetAttributes(unsigned int numAttributes, hipPointer_attribute* attributes,
2410  void** data, hipDeviceptr_t ptr);
2421 hipError_t hipImportExternalSemaphore(hipExternalSemaphore_t* extSem_out,
2422  const hipExternalSemaphoreHandleDesc* semHandleDesc);
2435 hipError_t hipSignalExternalSemaphoresAsync(const hipExternalSemaphore_t* extSemArray,
2436  const hipExternalSemaphoreSignalParams* paramsArray,
2437  unsigned int numExtSems, hipStream_t stream);
2450 hipError_t hipWaitExternalSemaphoresAsync(const hipExternalSemaphore_t* extSemArray,
2451  const hipExternalSemaphoreWaitParams* paramsArray,
2452  unsigned int numExtSems, hipStream_t stream);
2462 hipError_t hipDestroyExternalSemaphore(hipExternalSemaphore_t extSem);
2463 
2474 hipError_t hipImportExternalMemory(hipExternalMemory_t* extMem_out, const hipExternalMemoryHandleDesc* memHandleDesc);
2486 hipError_t hipExternalMemoryGetMappedBuffer(void **devPtr, hipExternalMemory_t extMem, const hipExternalMemoryBufferDesc *bufferDesc);
2496 hipError_t hipDestroyExternalMemory(hipExternalMemory_t extMem);
2510 hipError_t hipMalloc(void** ptr, size_t size);
2525 hipError_t hipExtMallocWithFlags(void** ptr, size_t sizeBytes, unsigned int flags);
2538 DEPRECATED("use hipHostMalloc instead")
2539 hipError_t hipMallocHost(void** ptr, size_t size);
2552 DEPRECATED("use hipHostMalloc instead")
2553 hipError_t hipMemAllocHost(void** ptr, size_t size);
2567 hipError_t hipHostMalloc(void** ptr, size_t size, unsigned int flags);
2587 hipError_t hipMallocManaged(void** dev_ptr,
2588  size_t size,
2589  unsigned int flags __dparm(hipMemAttachGlobal));
2600 hipError_t hipMemPrefetchAsync(const void* dev_ptr,
2601  size_t count,
2602  int device,
2603  hipStream_t stream __dparm(0));
2614 hipError_t hipMemAdvise(const void* dev_ptr,
2615  size_t count,
2616  hipMemoryAdvise advice,
2617  int device);
2630 hipError_t hipMemRangeGetAttribute(void* data,
2631  size_t data_size,
2632  hipMemRangeAttribute attribute,
2633  const void* dev_ptr,
2634  size_t count);
2649 hipError_t hipMemRangeGetAttributes(void** data,
2650  size_t* data_sizes,
2651  hipMemRangeAttribute* attributes,
2652  size_t num_attributes,
2653  const void* dev_ptr,
2654  size_t count);
2667 hipError_t hipStreamAttachMemAsync(hipStream_t stream,
2668  void* dev_ptr,
2669  size_t length __dparm(0),
2670  unsigned int flags __dparm(hipMemAttachSingle));
2671 // end doxygen Managed Memory
2727 hipError_t hipMallocAsync(void** dev_ptr, size_t size, hipStream_t stream);
2750 hipError_t hipFreeAsync(void* dev_ptr, hipStream_t stream);
2776 hipError_t hipMemPoolTrimTo(hipMemPool_t mem_pool, size_t min_bytes_to_hold);
2813 hipError_t hipMemPoolSetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void* value);
2850 hipError_t hipMemPoolGetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void* value);
2866 hipError_t hipMemPoolSetAccess(hipMemPool_t mem_pool, const hipMemAccessDesc* desc_list, size_t count);
2884 hipError_t hipMemPoolGetAccess(hipMemAccessFlags* flags, hipMemPool_t mem_pool, hipMemLocation* location);
2906 hipError_t hipMemPoolCreate(hipMemPool_t* mem_pool, const hipMemPoolProps* pool_props);
2931 hipError_t hipMemPoolDestroy(hipMemPool_t mem_pool);
2963 hipError_t hipMallocFromPoolAsync(void** dev_ptr, size_t size, hipMemPool_t mem_pool, hipStream_t stream);
2989  void* shared_handle,
2990  hipMemPool_t mem_pool,
2991  hipMemAllocationHandleType handle_type,
2992  unsigned int flags);
3015  hipMemPool_t* mem_pool,
3016  void* shared_handle,
3017  hipMemAllocationHandleType handle_type,
3018  unsigned int flags);
3036 hipError_t hipMemPoolExportPointer(hipMemPoolPtrExportData* export_data, void* dev_ptr);
3064  void** dev_ptr,
3065  hipMemPool_t mem_pool,
3066  hipMemPoolPtrExportData* export_data);
3084 DEPRECATED("use hipHostMalloc instead")
3085 hipError_t hipHostAlloc(void** ptr, size_t size, unsigned int flags);
3097 hipError_t hipHostGetDevicePointer(void** devPtr, void* hstPtr, unsigned int flags);
3107 hipError_t hipHostGetFlags(unsigned int* flagsPtr, void* hostPtr);
3144 hipError_t hipHostRegister(void* hostPtr, size_t sizeBytes, unsigned int flags);
3153 hipError_t hipHostUnregister(void* hostPtr);
3172 hipError_t hipMallocPitch(void** ptr, size_t* pitch, size_t width, size_t height);
3194 hipError_t hipMemAllocPitch(hipDeviceptr_t* dptr, size_t* pitch, size_t widthInBytes, size_t height, unsigned int elementSizeBytes);
3208 hipError_t hipFree(void* ptr);
3218 DEPRECATED("use hipHostFree instead")
3219 hipError_t hipFreeHost(void* ptr);
3233 hipError_t hipHostFree(void* ptr);
3263 hipError_t hipMemcpy(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind);
3264 // TODO: Add description
3265 hipError_t hipMemcpyWithStream(void* dst, const void* src, size_t sizeBytes,
3266  hipMemcpyKind kind, hipStream_t stream);
3284 hipError_t hipMemcpyHtoD(hipDeviceptr_t dst, void* src, size_t sizeBytes);
3302 hipError_t hipMemcpyDtoH(void* dst, hipDeviceptr_t src, size_t sizeBytes);
3320 hipError_t hipMemcpyDtoD(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes);
3338 hipError_t hipMemcpyHtoDAsync(hipDeviceptr_t dst, void* src, size_t sizeBytes, hipStream_t stream);
3356 hipError_t hipMemcpyDtoHAsync(void* dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream);
3374 hipError_t hipMemcpyDtoDAsync(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes,
3375  hipStream_t stream);
3376 
3391 hipError_t hipModuleGetGlobal(hipDeviceptr_t* dptr, size_t* bytes,
3392  hipModule_t hmod, const char* name);
3393 
3403 hipError_t hipGetSymbolAddress(void** devPtr, const void* symbol);
3404 
3414 hipError_t hipGetSymbolSize(size_t* size, const void* symbol);
3415 
3434 hipError_t hipMemcpyToSymbol(const void* symbol, const void* src,
3435  size_t sizeBytes, size_t offset __dparm(0),
3436  hipMemcpyKind kind __dparm(hipMemcpyHostToDevice));
3437 
3451 hipError_t hipMemcpyToSymbolAsync(const void* symbol, const void* src,
3452  size_t sizeBytes, size_t offset,
3453  hipMemcpyKind kind, hipStream_t stream __dparm(0));
3454 
3467 hipError_t hipMemcpyFromSymbol(void* dst, const void* symbol,
3468  size_t sizeBytes, size_t offset __dparm(0),
3469  hipMemcpyKind kind __dparm(hipMemcpyDeviceToHost));
3470 
3484 hipError_t hipMemcpyFromSymbolAsync(void* dst, const void* symbol,
3485  size_t sizeBytes, size_t offset,
3486  hipMemcpyKind kind,
3487  hipStream_t stream __dparm(0));
3516 hipError_t hipMemcpyAsync(void* dst, const void* src, size_t sizeBytes, hipMemcpyKind kind,
3517  hipStream_t stream __dparm(0));
3527 hipError_t hipMemset(void* dst, int value, size_t sizeBytes);
3537 hipError_t hipMemsetD8(hipDeviceptr_t dest, unsigned char value, size_t count);
3553 hipError_t hipMemsetD8Async(hipDeviceptr_t dest, unsigned char value, size_t count, hipStream_t stream __dparm(0));
3563 hipError_t hipMemsetD16(hipDeviceptr_t dest, unsigned short value, size_t count);
3579 hipError_t hipMemsetD16Async(hipDeviceptr_t dest, unsigned short value, size_t count, hipStream_t stream __dparm(0));
3589 hipError_t hipMemsetD32(hipDeviceptr_t dest, int value, size_t count);
3605 hipError_t hipMemsetAsync(void* dst, int value, size_t sizeBytes, hipStream_t stream __dparm(0));
3621 hipError_t hipMemsetD32Async(hipDeviceptr_t dst, int value, size_t count,
3622  hipStream_t stream __dparm(0));
3633 hipError_t hipMemset2D(void* dst, size_t pitch, int value, size_t width, size_t height);
3645 hipError_t hipMemset2DAsync(void* dst, size_t pitch, int value, size_t width, size_t height,hipStream_t stream __dparm(0));
3654 hipError_t hipMemset3D(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent );
3664 hipError_t hipMemset3DAsync(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent ,hipStream_t stream __dparm(0));
3674 hipError_t hipMemGetInfo(size_t* free, size_t* total);
3675 hipError_t hipMemPtrGetInfo(void* ptr, size_t* size);
3688 hipError_t hipMallocArray(hipArray** array, const hipChannelFormatDesc* desc, size_t width,
3689  size_t height __dparm(0), unsigned int flags __dparm(hipArrayDefault));
3690 hipError_t hipArrayCreate(hipArray** pHandle, const HIP_ARRAY_DESCRIPTOR* pAllocateArray);
3691 hipError_t hipArrayDestroy(hipArray* array);
3692 hipError_t hipArray3DCreate(hipArray** array, const HIP_ARRAY3D_DESCRIPTOR* pAllocateArray);
3693 hipError_t hipMalloc3D(hipPitchedPtr* pitchedDevPtr, hipExtent extent);
3702 hipError_t hipFreeArray(hipArray* array);
3710 hipError_t hipFreeMipmappedArray(hipMipmappedArray_t mipmappedArray);
3722 hipError_t hipMalloc3DArray(hipArray** array, const struct hipChannelFormatDesc* desc,
3723  struct hipExtent extent, unsigned int flags);
3736  hipMipmappedArray_t *mipmappedArray,
3737  const struct hipChannelFormatDesc* desc,
3738  struct hipExtent extent,
3739  unsigned int numLevels,
3740  unsigned int flags __dparm(0));
3751  hipArray_t *levelArray,
3752  hipMipmappedArray_const_t mipmappedArray,
3753  unsigned int level);
3770 hipError_t hipMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width,
3771  size_t height, hipMemcpyKind kind);
3781 hipError_t hipMemcpyParam2D(const hip_Memcpy2D* pCopy);
3792 hipError_t hipMemcpyParam2DAsync(const hip_Memcpy2D* pCopy, hipStream_t stream __dparm(0));
3810 hipError_t hipMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width,
3811  size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0));
3829 hipError_t hipMemcpy2DToArray(hipArray* dst, size_t wOffset, size_t hOffset, const void* src,
3830  size_t spitch, size_t width, size_t height, hipMemcpyKind kind);
3849 hipError_t hipMemcpy2DToArrayAsync(hipArray* dst, size_t wOffset, size_t hOffset, const void* src,
3850  size_t spitch, size_t width, size_t height, hipMemcpyKind kind,
3851  hipStream_t stream __dparm(0));
3867 DEPRECATED(DEPRECATED_MSG)
3868 hipError_t hipMemcpyToArray(hipArray* dst, size_t wOffset, size_t hOffset, const void* src,
3869  size_t count, hipMemcpyKind kind);
3885 DEPRECATED(DEPRECATED_MSG)
3886 hipError_t hipMemcpyFromArray(void* dst, hipArray_const_t srcArray, size_t wOffset, size_t hOffset,
3887  size_t count, hipMemcpyKind kind);
3905 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);
3924 hipError_t hipMemcpy2DFromArrayAsync( void* dst, size_t dpitch, hipArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0));
3938 hipError_t hipMemcpyAtoH(void* dst, hipArray* srcArray, size_t srcOffset, size_t count);
3952 hipError_t hipMemcpyHtoA(hipArray* dstArray, size_t dstOffset, const void* srcHost, size_t count);
3963 hipError_t hipMemcpy3D(const struct hipMemcpy3DParms* p);
3975 hipError_t hipMemcpy3DAsync(const struct hipMemcpy3DParms* p, hipStream_t stream __dparm(0));
3986 hipError_t hipDrvMemcpy3D(const HIP_MEMCPY3D* pCopy);
3998 hipError_t hipDrvMemcpy3DAsync(const HIP_MEMCPY3D* pCopy, hipStream_t stream);
3999 // doxygen end Memory
4027 hipError_t hipDeviceCanAccessPeer(int* canAccessPeer, int deviceId, int peerDeviceId);
4044 hipError_t hipDeviceEnablePeerAccess(int peerDeviceId, unsigned int flags);
4056 hipError_t hipDeviceDisablePeerAccess(int peerDeviceId);
4069 hipError_t hipMemGetAddressRange(hipDeviceptr_t* pbase, size_t* psize, hipDeviceptr_t dptr);
4070 #ifndef USE_PEER_NON_UNIFIED
4071 #define USE_PEER_NON_UNIFIED 1
4072 #endif
4073 #if USE_PEER_NON_UNIFIED == 1
4074 
4085 hipError_t hipMemcpyPeer(void* dst, int dstDeviceId, const void* src, int srcDeviceId,
4086  size_t sizeBytes);
4099 hipError_t hipMemcpyPeerAsync(void* dst, int dstDeviceId, const void* src, int srcDevice,
4100  size_t sizeBytes, hipStream_t stream __dparm(0));
4101 #endif
4102 // doxygen end PeerToPeer
4132 DEPRECATED(DEPRECATED_MSG)
4133 hipError_t hipCtxCreate(hipCtx_t* ctx, unsigned int flags, hipDevice_t device);
4144 DEPRECATED(DEPRECATED_MSG)
4145 hipError_t hipCtxDestroy(hipCtx_t ctx);
4156 DEPRECATED(DEPRECATED_MSG)
4157 hipError_t hipCtxPopCurrent(hipCtx_t* ctx);
4168 DEPRECATED(DEPRECATED_MSG)
4169 hipError_t hipCtxPushCurrent(hipCtx_t ctx);
4180 DEPRECATED(DEPRECATED_MSG)
4181 hipError_t hipCtxSetCurrent(hipCtx_t ctx);
4192 DEPRECATED(DEPRECATED_MSG)
4193 hipError_t hipCtxGetCurrent(hipCtx_t* ctx);
4204 DEPRECATED(DEPRECATED_MSG)
4205 hipError_t hipCtxGetDevice(hipDevice_t* device);
4223 DEPRECATED(DEPRECATED_MSG)
4224 hipError_t hipCtxGetApiVersion(hipCtx_t ctx, int* apiVersion);
4238 DEPRECATED(DEPRECATED_MSG)
4239 hipError_t hipCtxGetCacheConfig(hipFuncCache_t* cacheConfig);
4253 DEPRECATED(DEPRECATED_MSG)
4254 hipError_t hipCtxSetCacheConfig(hipFuncCache_t cacheConfig);
4268 DEPRECATED(DEPRECATED_MSG)
4283 DEPRECATED(DEPRECATED_MSG)
4296 DEPRECATED(DEPRECATED_MSG)
4297 hipError_t hipCtxSynchronize(void);
4308 DEPRECATED(DEPRECATED_MSG)
4309 hipError_t hipCtxGetFlags(unsigned int* flags);
4329 DEPRECATED(DEPRECATED_MSG)
4330 hipError_t hipCtxEnablePeerAccess(hipCtx_t peerCtx, unsigned int flags);
4347 DEPRECATED(DEPRECATED_MSG)
4348 hipError_t hipCtxDisablePeerAccess(hipCtx_t peerCtx);
4349 // doxygen end Context deprecated
4365 hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int* flags, int* active);
4378 hipError_t hipDevicePrimaryCtxRelease(hipDevice_t dev);
4390 hipError_t hipDevicePrimaryCtxRetain(hipCtx_t* pctx, hipDevice_t dev);
4401 hipError_t hipDevicePrimaryCtxReset(hipDevice_t dev);
4413 hipError_t hipDevicePrimaryCtxSetFlags(hipDevice_t dev, unsigned int flags);
4414 // doxygen end Context Management
4436 hipError_t hipModuleLoad(hipModule_t* module, const char* fname);
4446 hipError_t hipModuleUnload(hipModule_t module);
4457 hipError_t hipModuleGetFunction(hipFunction_t* function, hipModule_t module, const char* kname);
4466 hipError_t hipFuncGetAttributes(struct hipFuncAttributes* attr, const void* func);
4476 hipError_t hipFuncGetAttribute(int* value, hipFunction_attribute attrib, hipFunction_t hfunc);
4486 hipError_t hipModuleGetTexRef(textureReference** texRef, hipModule_t hmod, const char* name);
4496 hipError_t hipModuleLoadData(hipModule_t* module, const void* image);
4509 hipError_t hipModuleLoadDataEx(hipModule_t* module, const void* image, unsigned int numOptions,
4510  hipJitOption* options, void** optionValues);
4539 hipError_t hipModuleLaunchKernel(hipFunction_t f, unsigned int gridDimX, unsigned int gridDimY,
4540  unsigned int gridDimZ, unsigned int blockDimX,
4541  unsigned int blockDimY, unsigned int blockDimZ,
4542  unsigned int sharedMemBytes, hipStream_t stream,
4543  void** kernelParams, void** extra);
4562 hipError_t hipLaunchCooperativeKernel(const void* f, dim3 gridDim, dim3 blockDimX,
4563  void** kernelParams, unsigned int sharedMemBytes,
4564  hipStream_t stream);
4576  int numDevices, unsigned int flags);
4589  int numDevices, unsigned int flags);
4590 // doxygen end Module
4615 //TODO - Match CUoccupancyB2DSize
4616 hipError_t hipModuleOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
4617  hipFunction_t f, size_t dynSharedMemPerBlk,
4618  int blockSizeLimit);
4634 //TODO - Match CUoccupancyB2DSize
4635 hipError_t hipModuleOccupancyMaxPotentialBlockSizeWithFlags(int* gridSize, int* blockSize,
4636  hipFunction_t f, size_t dynSharedMemPerBlk,
4637  int blockSizeLimit, unsigned int flags);
4647  int* numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk);
4658  int* numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags);
4668  int* numBlocks, const void* f, int blockSize, size_t dynSharedMemPerBlk);
4679  int* numBlocks, const void* f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags __dparm(hipOccupancyDefault));
4694 hipError_t hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
4695  const void* f, size_t dynSharedMemPerBlk,
4696  int blockSizeLimit);
4697 // doxygen end Occupancy
4711 // TODO - expand descriptions:
4717 DEPRECATED("use roctracer/rocTX instead")
4718 hipError_t hipProfilerStart();
4724 DEPRECATED("use roctracer/rocTX instead")
4725 hipError_t hipProfilerStop();
4726 // doxygen end profiler
4753 hipError_t hipConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0));
4764 hipError_t hipSetupArgument(const void* arg, size_t size, size_t offset);
4773 hipError_t hipLaunchByPtr(const void* func);
4791  dim3 blockDim,
4792  size_t sharedMem __dparm(0),
4793  hipStream_t stream __dparm(0));
4813 hipError_t __hipPopCallConfiguration(dim3 *gridDim,
4814  dim3 *blockDim,
4815  size_t *sharedMem,
4816  hipStream_t *stream);
4832 hipError_t hipLaunchKernel(const void* function_address,
4833  dim3 numBlocks,
4834  dim3 dimBlocks,
4835  void** args,
4836  size_t sharedMemBytes __dparm(0),
4837  hipStream_t stream __dparm(0));
4845 hipError_t hipDrvMemcpy2DUnaligned(const hip_Memcpy2D* pCopy);
4846 //TODO: Move this to hip_ext.h
4867 hipError_t hipExtLaunchKernel(const void* function_address, dim3 numBlocks, dim3 dimBlocks,
4868  void** args, size_t sharedMemBytes, hipStream_t stream,
4869  hipEvent_t startEvent, hipEvent_t stopEvent, int flags);
4870 // doxygen end Clang launch
4893  const textureReference* tex,
4894  hipMipmappedArray_const_t mipmappedArray,
4895  const hipChannelFormatDesc* desc);
4896 
4907  const textureReference** texref,
4908  const void* symbol);
4909 
4922  hipTextureObject_t* pTexObject,
4923  const hipResourceDesc* pResDesc,
4924  const hipTextureDesc* pTexDesc,
4925  const struct hipResourceViewDesc* pResViewDesc);
4926 
4935 hipError_t hipDestroyTextureObject(hipTextureObject_t textureObject);
4936 
4947  hipChannelFormatDesc* desc,
4948  hipArray_const_t array);
4949 
4960  hipResourceDesc* pResDesc,
4961  hipTextureObject_t textureObject);
4962 
4973  struct hipResourceViewDesc* pResViewDesc,
4974  hipTextureObject_t textureObject);
4975 
4986  hipTextureDesc* pTexDesc,
4987  hipTextureObject_t textureObject);
4988 
4992 hipError_t hipTexRefSetAddressMode(
4993  textureReference* texRef,
4994  int dim,
4995  enum hipTextureAddressMode am);
4996 hipError_t hipTexRefSetArray(
4997  textureReference* tex,
4998  hipArray_const_t array,
4999  unsigned int flags);
5000 hipError_t hipTexRefSetFilterMode(
5001  textureReference* texRef,
5002  enum hipTextureFilterMode fm);
5003 hipError_t hipTexRefSetFlags(
5004  textureReference* texRef,
5005  unsigned int Flags);
5006 hipError_t hipTexRefSetFormat(
5007  textureReference* texRef,
5008  hipArray_Format fmt,
5009  int NumPackedComponents);
5010 hipError_t hipTexObjectCreate(
5011  hipTextureObject_t* pTexObject,
5012  const HIP_RESOURCE_DESC* pResDesc,
5013  const HIP_TEXTURE_DESC* pTexDesc,
5014  const HIP_RESOURCE_VIEW_DESC* pResViewDesc);
5015 hipError_t hipTexObjectDestroy(
5016  hipTextureObject_t texObject);
5017 hipError_t hipTexObjectGetResourceDesc(
5018  HIP_RESOURCE_DESC* pResDesc,
5019  hipTextureObject_t texObject);
5020 hipError_t hipTexObjectGetResourceViewDesc(
5021  HIP_RESOURCE_VIEW_DESC* pResViewDesc,
5022  hipTextureObject_t texObject);
5023 hipError_t hipTexObjectGetTextureDesc(
5024  HIP_TEXTURE_DESC* pTexDesc,
5025  hipTextureObject_t texObject);
5026 
5034 DEPRECATED(DEPRECATED_MSG)
5035 hipError_t hipBindTexture(
5036  size_t* offset,
5037  const textureReference* tex,
5038  const void* devPtr,
5039  const hipChannelFormatDesc* desc,
5040  size_t size __dparm(UINT_MAX));
5041 DEPRECATED(DEPRECATED_MSG)
5042 hipError_t hipBindTexture2D(
5043  size_t* offset,
5044  const textureReference* tex,
5045  const void* devPtr,
5046  const hipChannelFormatDesc* desc,
5047  size_t width,
5048  size_t height,
5049  size_t pitch);
5050 DEPRECATED(DEPRECATED_MSG)
5051 hipError_t hipBindTextureToArray(
5052  const textureReference* tex,
5053  hipArray_const_t array,
5054  const hipChannelFormatDesc* desc);
5055 DEPRECATED(DEPRECATED_MSG)
5056 hipError_t hipGetTextureAlignmentOffset(
5057  size_t* offset,
5058  const textureReference* texref);
5059 DEPRECATED(DEPRECATED_MSG)
5060 hipError_t hipUnbindTexture(const textureReference* tex);
5061 DEPRECATED(DEPRECATED_MSG)
5062 hipError_t hipTexRefGetAddress(
5063  hipDeviceptr_t* dev_ptr,
5064  const textureReference* texRef);
5065 DEPRECATED(DEPRECATED_MSG)
5066 hipError_t hipTexRefGetAddressMode(
5067  enum hipTextureAddressMode* pam,
5068  const textureReference* texRef,
5069  int dim);
5070 DEPRECATED(DEPRECATED_MSG)
5071 hipError_t hipTexRefGetFilterMode(
5072  enum hipTextureFilterMode* pfm,
5073  const textureReference* texRef);
5074 DEPRECATED(DEPRECATED_MSG)
5075 hipError_t hipTexRefGetFlags(
5076  unsigned int* pFlags,
5077  const textureReference* texRef);
5078 DEPRECATED(DEPRECATED_MSG)
5079 hipError_t hipTexRefGetFormat(
5080  hipArray_Format* pFormat,
5081  int* pNumChannels,
5082  const textureReference* texRef);
5083 DEPRECATED(DEPRECATED_MSG)
5084 hipError_t hipTexRefGetMaxAnisotropy(
5085  int* pmaxAnsio,
5086  const textureReference* texRef);
5087 DEPRECATED(DEPRECATED_MSG)
5088 hipError_t hipTexRefGetMipmapFilterMode(
5089  enum hipTextureFilterMode* pfm,
5090  const textureReference* texRef);
5091 DEPRECATED(DEPRECATED_MSG)
5092 hipError_t hipTexRefGetMipmapLevelBias(
5093  float* pbias,
5094  const textureReference* texRef);
5095 DEPRECATED(DEPRECATED_MSG)
5096 hipError_t hipTexRefGetMipmapLevelClamp(
5097  float* pminMipmapLevelClamp,
5098  float* pmaxMipmapLevelClamp,
5099  const textureReference* texRef);
5100 DEPRECATED(DEPRECATED_MSG)
5101 hipError_t hipTexRefGetMipMappedArray(
5102  hipMipmappedArray_t* pArray,
5103  const textureReference* texRef);
5104 DEPRECATED(DEPRECATED_MSG)
5105 hipError_t hipTexRefSetAddress(
5106  size_t* ByteOffset,
5107  textureReference* texRef,
5108  hipDeviceptr_t dptr,
5109  size_t bytes);
5110 DEPRECATED(DEPRECATED_MSG)
5111 hipError_t hipTexRefSetAddress2D(
5112  textureReference* texRef,
5113  const HIP_ARRAY_DESCRIPTOR* desc,
5114  hipDeviceptr_t dptr,
5115  size_t Pitch);
5116 DEPRECATED(DEPRECATED_MSG)
5117 hipError_t hipTexRefSetMaxAnisotropy(
5118  textureReference* texRef,
5119  unsigned int maxAniso);
5120 // doxygen end deprecated texture management
5126 // The following are not supported.
5134 DEPRECATED(DEPRECATED_MSG)
5135 hipError_t hipTexRefSetBorderColor(
5136  textureReference* texRef,
5137  float* pBorderColor);
5138 hipError_t hipTexRefSetMipmapFilterMode(
5139  textureReference* texRef,
5140  enum hipTextureFilterMode fm);
5141 hipError_t hipTexRefSetMipmapLevelBias(
5142  textureReference* texRef,
5143  float bias);
5144 hipError_t hipTexRefSetMipmapLevelClamp(
5145  textureReference* texRef,
5146  float minMipMapLevelClamp,
5147  float maxMipMapLevelClamp);
5148 hipError_t hipTexRefSetMipmappedArray(
5149  textureReference* texRef,
5150  struct hipMipmappedArray* mipmappedArray,
5151  unsigned int Flags);
5152 hipError_t hipMipmappedArrayCreate(
5153  hipMipmappedArray_t* pHandle,
5154  HIP_ARRAY3D_DESCRIPTOR* pMipmappedArrayDesc,
5155  unsigned int numMipmapLevels);
5156 hipError_t hipMipmappedArrayDestroy(
5157  hipMipmappedArray_t hMipmappedArray);
5158 hipError_t hipMipmappedArrayGetLevel(
5159  hipArray_t* pLevelArray,
5160  hipMipmappedArray_t hMipMappedArray,
5161  unsigned int level);
5162 // doxygen end unsuppported texture management
5167 // doxygen end Texture management
5179 // This group is for HIPrtc
5180 
5181 // doxygen end Runtime
5192 hipError_t hipRegisterApiCallback(uint32_t id, void* fun, void* arg);
5193 hipError_t hipRemoveApiCallback(uint32_t id);
5194 hipError_t hipRegisterActivityCallback(uint32_t id, void* fun, void* arg);
5195 hipError_t hipRemoveActivityCallback(uint32_t id);
5196 const char* hipApiName(uint32_t id);
5197 const char* hipKernelNameRef(const hipFunction_t f);
5198 const char* hipKernelNameRefByPtr(const void* hostFunction, hipStream_t stream);
5199 int hipGetStreamDeviceId(hipStream_t stream);
5200 
5201 // doxygen end Callback
5226 hipError_t hipStreamBeginCapture(hipStream_t stream, hipStreamCaptureMode mode);
5227 
5240 hipError_t hipStreamEndCapture(hipStream_t stream, hipGraph_t* pGraph);
5241 
5255 hipError_t hipStreamGetCaptureInfo(hipStream_t stream, hipStreamCaptureStatus* pCaptureStatus,
5256  unsigned long long* pId);
5257 
5274 hipError_t hipStreamGetCaptureInfo_v2(hipStream_t stream, hipStreamCaptureStatus* captureStatus_out,
5275  unsigned long long* id_out __dparm(0),
5276  hipGraph_t* graph_out __dparm(0),
5277  const hipGraphNode_t** dependencies_out __dparm(0),
5278  size_t* numDependencies_out __dparm(0));
5279 
5292 hipError_t hipStreamIsCapturing(hipStream_t stream, hipStreamCaptureStatus* pCaptureStatus);
5293 
5306 hipError_t hipStreamUpdateCaptureDependencies(hipStream_t stream, hipGraphNode_t* dependencies,
5307  size_t numDependencies,
5308  unsigned int flags __dparm(0));
5309 
5321 hipError_t hipLaunchHostFunc(hipStream_t stream, hipHostFn_t fn, void* userData);
5322 
5333 hipError_t hipThreadExchangeStreamCaptureMode(hipStreamCaptureMode* mode);
5334 
5347 hipError_t hipGraphCreate(hipGraph_t* pGraph, unsigned int flags);
5348 
5360 hipError_t hipGraphDestroy(hipGraph_t graph);
5361 
5375 hipError_t hipGraphAddDependencies(hipGraph_t graph, const hipGraphNode_t* from,
5376  const hipGraphNode_t* to, size_t numDependencies);
5377 
5392  const hipGraphNode_t* to, size_t numDependencies);
5393 
5412  size_t* numEdges);
5413 
5430 hipError_t hipGraphGetNodes(hipGraph_t graph, hipGraphNode_t* nodes, size_t* numNodes);
5431 
5448 hipError_t hipGraphGetRootNodes(hipGraph_t graph, hipGraphNode_t* pRootNodes,
5449  size_t* pNumRootNodes);
5450 
5468  size_t* pNumDependencies);
5469 
5488  size_t* pNumDependentNodes);
5489 
5502 
5514 
5526 hipError_t hipGraphClone(hipGraph_t* pGraphClone, hipGraph_t originalGraph);
5527 
5541  hipGraph_t clonedGraph);
5542 
5559 hipError_t hipGraphInstantiate(hipGraphExec_t* pGraphExec, hipGraph_t graph,
5560  hipGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize);
5561 
5575  unsigned long long flags);
5576 
5587 hipError_t hipGraphLaunch(hipGraphExec_t graphExec, hipStream_t stream);
5588 
5599 hipError_t hipGraphExecDestroy(hipGraphExec_t graphExec);
5600 
5601 // Check whether an executable graph can be updated with a graph and perform the update if possible.
5615 hipError_t hipGraphExecUpdate(hipGraphExec_t hGraphExec, hipGraph_t hGraph,
5616  hipGraphNode_t* hErrorNode_out,
5617  hipGraphExecUpdateResult* updateResult_out);
5618 
5631 hipError_t hipGraphAddKernelNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
5632  const hipGraphNode_t* pDependencies, size_t numDependencies,
5633  const hipKernelNodeParams* pNodeParams);
5634 
5645 
5656 
5668  const hipKernelNodeParams* pNodeParams);
5669 
5682 hipError_t hipGraphAddMemcpyNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
5683  const hipGraphNode_t* pDependencies, size_t numDependencies,
5684  const hipMemcpy3DParms* pCopyParams);
5695 
5705 hipError_t hipGraphMemcpyNodeSetParams(hipGraphNode_t node, const hipMemcpy3DParms* pNodeParams);
5706 
5717 hipError_t hipGraphKernelNodeSetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr,
5718  const hipKernelNodeAttrValue* value);
5729 hipError_t hipGraphKernelNodeGetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr,
5730  hipKernelNodeAttrValue* value);
5742  hipMemcpy3DParms* pNodeParams);
5743 
5759 hipError_t hipGraphAddMemcpyNode1D(hipGraphNode_t* pGraphNode, hipGraph_t graph,
5760  const hipGraphNode_t* pDependencies, size_t numDependencies,
5761  void* dst, const void* src, size_t count, hipMemcpyKind kind);
5762 
5775 hipError_t hipGraphMemcpyNodeSetParams1D(hipGraphNode_t node, void* dst, const void* src,
5776  size_t count, hipMemcpyKind kind);
5777 
5793  void* dst, const void* src, size_t count,
5794  hipMemcpyKind kind);
5795 
5813  const hipGraphNode_t* pDependencies,
5814  size_t numDependencies, void* dst, const void* symbol,
5815  size_t count, size_t offset, hipMemcpyKind kind);
5816 
5830 hipError_t hipGraphMemcpyNodeSetParamsFromSymbol(hipGraphNode_t node, void* dst, const void* symbol,
5831  size_t count, size_t offset, hipMemcpyKind kind);
5832 
5849  void* dst, const void* symbol, size_t count,
5850  size_t offset, hipMemcpyKind kind);
5851 
5869  const hipGraphNode_t* pDependencies,
5870  size_t numDependencies, const void* symbol,
5871  const void* src, size_t count, size_t offset,
5872  hipMemcpyKind kind);
5873 
5887 hipError_t hipGraphMemcpyNodeSetParamsToSymbol(hipGraphNode_t node, const void* symbol,
5888  const void* src, size_t count, size_t offset,
5889  hipMemcpyKind kind);
5890 
5891 
5907  const void* symbol, const void* src,
5908  size_t count, size_t offset, hipMemcpyKind kind);
5909 
5922 hipError_t hipGraphAddMemsetNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
5923  const hipGraphNode_t* pDependencies, size_t numDependencies,
5924  const hipMemsetParams* pMemsetParams);
5925 
5936 
5946 hipError_t hipGraphMemsetNodeSetParams(hipGraphNode_t node, const hipMemsetParams* pNodeParams);
5947 
5959  const hipMemsetParams* pNodeParams);
5960 
5973 hipError_t hipGraphAddHostNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
5974  const hipGraphNode_t* pDependencies, size_t numDependencies,
5975  const hipHostNodeParams* pNodeParams);
5976 
5987 
5997 hipError_t hipGraphHostNodeSetParams(hipGraphNode_t node, const hipHostNodeParams* pNodeParams);
5998 
6010  const hipHostNodeParams* pNodeParams);
6011 
6025  const hipGraphNode_t* pDependencies, size_t numDependencies,
6026  hipGraph_t childGraph);
6027 
6038 
6050  hipGraph_t childGraph);
6051 
6063 hipError_t hipGraphAddEmptyNode(hipGraphNode_t* pGraphNode, hipGraph_t graph,
6064  const hipGraphNode_t* pDependencies, size_t numDependencies);
6065 
6066 
6080  const hipGraphNode_t* pDependencies, size_t numDependencies,
6081  hipEvent_t event);
6082 
6092 hipError_t hipGraphEventRecordNodeGetEvent(hipGraphNode_t node, hipEvent_t* event_out);
6093 
6103 hipError_t hipGraphEventRecordNodeSetEvent(hipGraphNode_t node, hipEvent_t event);
6104 
6116  hipEvent_t event);
6117 
6131  const hipGraphNode_t* pDependencies, size_t numDependencies,
6132  hipEvent_t event);
6133 
6134 
6144 hipError_t hipGraphEventWaitNodeGetEvent(hipGraphNode_t node, hipEvent_t* event_out);
6145 
6155 hipError_t hipGraphEventWaitNodeSetEvent(hipGraphNode_t node, hipEvent_t event);
6156 
6168  hipEvent_t event);
6169 
6170 // doxygen end graph API
6179 typedef struct hipMemAllocationProp {
6180  unsigned char compressionType;
6184  unsigned short usage;
6187 
6191 typedef struct ihipMemGenericAllocationHandle* hipMemGenericAllocationHandle_t;
6192 
6202 
6208 typedef enum hipMemHandleType {
6211 
6217 typedef enum hipMemOperationType {
6221 
6231 
6235 typedef struct hipArrayMapInfo {
6236  hipResourceType resourceType;
6237  union {
6238  hipMipmappedArray mipmap;
6239  hipArray_t array;
6240  } resource;
6242  union {
6243  struct {
6244  unsigned int level;
6245  unsigned int layer;
6246  unsigned int offsetX;
6247  unsigned int offsetY;
6248  unsigned int offsetZ;
6249  unsigned int extentWidth;
6250  unsigned int extentHeight;
6251  unsigned int extentDepth;
6252  } sparseLevel;
6253  struct {
6254  unsigned int layer;
6255  unsigned long long offset;
6256  unsigned long long size;
6257  } miptail;
6258  } subresource;
6261  union {
6263  } memHandle;
6264  unsigned long long offset;
6265  unsigned int deviceBitMask;
6266  unsigned int flags;
6267  unsigned int reserved[2];
6269 
6287 hipError_t hipMemAddressFree(void* devPtr, size_t size);
6288 
6301 hipError_t hipMemAddressReserve(void** ptr, size_t size, size_t alignment, void* addr, unsigned long long flags);
6302 
6314 hipError_t hipMemCreate(hipMemGenericAllocationHandle_t* handle, size_t size, const hipMemAllocationProp* prop, unsigned long long flags);
6315 
6327 hipError_t hipMemExportToShareableHandle(void* shareableHandle, hipMemGenericAllocationHandle_t handle, hipMemAllocationHandleType handleType, unsigned long long flags);
6328 
6339 hipError_t hipMemGetAccess(unsigned long long* flags, const hipMemLocation* location, void* ptr);
6340 
6352 
6363 
6375 
6388 hipError_t hipMemMap(void* ptr, size_t size, size_t offset, hipMemGenericAllocationHandle_t handle, unsigned long long flags);
6389 
6400 hipError_t hipMemMapArrayAsync(hipArrayMapInfo* mapInfoList, unsigned int count, hipStream_t stream);
6401 
6411 
6422 
6434 hipError_t hipMemSetAccess(void* ptr, size_t size, const hipMemAccessDesc* desc, size_t count);
6435 
6445 hipError_t hipMemUnmap(void* ptr, size_t size);
6446 
6447 // doxygen end virtual memory management API
6459 typedef unsigned int GLuint;
6460 typedef unsigned int GLenum;
6461 
6462 // Queries devices associated with GL Context.
6463 hipError_t hipGLGetDevices(unsigned int* pHipDeviceCount, int* pHipDevices,
6464  unsigned int hipDeviceCount, hipGLDeviceList deviceList);
6465 // Registers a GL Buffer for interop and returns corresponding graphics resource.
6466 hipError_t hipGraphicsGLRegisterBuffer(hipGraphicsResource** resource, GLuint buffer,
6467  unsigned int flags);
6468 // Register a GL Image for interop and returns the corresponding graphic resource
6469 hipError_t hipGraphicsGLRegisterImage(hipGraphicsResource** resource, GLuint image,
6470  GLenum target, unsigned int flags);
6471 // Maps a graphics resource for hip access.
6472 hipError_t hipGraphicsMapResources(int count, hipGraphicsResource_t* resources,
6473  hipStream_t stream __dparm(0) );
6474 // Get an array through which to access a subresource of a mapped graphics resource.
6475 hipError_t hipGraphicsSubResourceGetMappedArray(hipArray_t* array, hipGraphicsResource_t resource,
6476  unsigned int arrayIndex, unsigned int mipLevel);
6477 // Gets device accessible address of a graphics resource.
6478 hipError_t hipGraphicsResourceGetMappedPointer(void** devPtr, size_t* size,
6479  hipGraphicsResource_t resource);
6480 // Unmaps a graphics resource for hip access.
6481 hipError_t hipGraphicsUnmapResources(int count, hipGraphicsResource_t* resources,
6482  hipStream_t stream __dparm(0));
6483 // Unregisters a graphics resource.
6484 hipError_t hipGraphicsUnregisterResource(hipGraphicsResource_t resource);
6485 // doxygen end GL Interop
6491 #ifdef __cplusplus
6492 } /* extern "c" */
6493 #endif
6494 #ifdef __cplusplus
6495 #if defined(__clang__) && defined(__HIP__)
6496 template <typename T>
6497 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
6498  T f, size_t dynSharedMemPerBlk = 0, int blockSizeLimit = 0) {
6499  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, reinterpret_cast<const void*>(f),dynSharedMemPerBlk,blockSizeLimit);
6500 }
6501 template <typename T>
6502 static hipError_t __host__ inline hipOccupancyMaxPotentialBlockSizeWithFlags(int* gridSize, int* blockSize,
6503  T f, size_t dynSharedMemPerBlk = 0, int blockSizeLimit = 0, unsigned int flags = 0 ) {
6504  return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize, reinterpret_cast<const void*>(f),dynSharedMemPerBlk,blockSizeLimit);
6505 }
6506 #endif // defined(__clang__) && defined(__HIP__)
6507 template <typename T>
6508 hipError_t hipGetSymbolAddress(void** devPtr, const T &symbol) {
6509  return ::hipGetSymbolAddress(devPtr, (const void *)&symbol);
6510 }
6511 template <typename T>
6512 hipError_t hipGetSymbolSize(size_t* size, const T &symbol) {
6513  return ::hipGetSymbolSize(size, (const void *)&symbol);
6514 }
6515 template <typename T>
6516 hipError_t hipMemcpyToSymbol(const T& symbol, const void* src, size_t sizeBytes,
6517  size_t offset __dparm(0),
6518  hipMemcpyKind kind __dparm(hipMemcpyHostToDevice)) {
6519  return ::hipMemcpyToSymbol((const void*)&symbol, src, sizeBytes, offset, kind);
6520 }
6521 template <typename T>
6522 hipError_t hipMemcpyToSymbolAsync(const T& symbol, const void* src, size_t sizeBytes, size_t offset,
6523  hipMemcpyKind kind, hipStream_t stream __dparm(0)) {
6524  return ::hipMemcpyToSymbolAsync((const void*)&symbol, src, sizeBytes, offset, kind, stream);
6525 }
6526 template <typename T>
6527 hipError_t hipMemcpyFromSymbol(void* dst, const T &symbol,
6528  size_t sizeBytes, size_t offset __dparm(0),
6529  hipMemcpyKind kind __dparm(hipMemcpyDeviceToHost)) {
6530  return ::hipMemcpyFromSymbol(dst, (const void*)&symbol, sizeBytes, offset, kind);
6531 }
6532 template <typename T>
6533 hipError_t hipMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t sizeBytes, size_t offset,
6534  hipMemcpyKind kind, hipStream_t stream __dparm(0)) {
6535  return ::hipMemcpyFromSymbolAsync(dst, (const void*)&symbol, sizeBytes, offset, kind, stream);
6536 }
6537 template <class T>
6539  int* numBlocks, T f, int blockSize, size_t dynSharedMemPerBlk) {
6541  numBlocks, reinterpret_cast<const void*>(f), blockSize, dynSharedMemPerBlk);
6542 }
6543 template <class T>
6545  int* numBlocks, T f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags) {
6547  numBlocks, reinterpret_cast<const void*>(f), blockSize, dynSharedMemPerBlk, flags);
6548 }
6549 template <typename F>
6550 inline hipError_t hipOccupancyMaxPotentialBlockSize(int* gridSize, int* blockSize,
6551  F kernel, size_t dynSharedMemPerBlk, uint32_t blockSizeLimit) {
6552 return hipOccupancyMaxPotentialBlockSize(gridSize, blockSize,(hipFunction_t)kernel, dynSharedMemPerBlk, blockSizeLimit);
6553 }
6554 template <class T>
6555 inline hipError_t hipLaunchCooperativeKernel(T f, dim3 gridDim, dim3 blockDim,
6556  void** kernelParams, unsigned int sharedMemBytes, hipStream_t stream) {
6557  return hipLaunchCooperativeKernel(reinterpret_cast<const void*>(f), gridDim,
6558  blockDim, kernelParams, sharedMemBytes, stream);
6559 }
6560 template <class T>
6561 inline hipError_t hipLaunchCooperativeKernelMultiDevice(hipLaunchParams* launchParamsList,
6562  unsigned int numDevices, unsigned int flags = 0) {
6563  return hipLaunchCooperativeKernelMultiDevice(launchParamsList, numDevices, flags);
6564 }
6565 template <class T>
6566 inline hipError_t hipExtLaunchMultiKernelMultiDevice(hipLaunchParams* launchParamsList,
6567  unsigned int numDevices, unsigned int flags = 0) {
6568  return hipExtLaunchMultiKernelMultiDevice(launchParamsList, numDevices, flags);
6569 }
6570 hipError_t hipCreateSurfaceObject(hipSurfaceObject_t* pSurfObject, const hipResourceDesc* pResDesc);
6571 hipError_t hipDestroySurfaceObject(hipSurfaceObject_t surfaceObject);
6572 template <class T, int dim, enum hipTextureReadMode readMode>
6573 DEPRECATED(DEPRECATED_MSG)
6574 static inline hipError_t hipBindTexture(size_t* offset, const struct texture<T, dim, readMode>& tex,
6575  const void* devPtr, size_t size = UINT_MAX) {
6576  return hipBindTexture(offset, &tex, devPtr, &tex.channelDesc, size);
6577 }
6578 template <class T, int dim, enum hipTextureReadMode readMode>
6579 DEPRECATED(DEPRECATED_MSG)
6580 static inline hipError_t
6581  hipBindTexture(size_t* offset, const struct texture<T, dim, readMode>& tex, const void* devPtr,
6582  const struct hipChannelFormatDesc& desc, size_t size = UINT_MAX) {
6583  return hipBindTexture(offset, &tex, devPtr, &desc, size);
6584 }
6585 template<class T, int dim, enum hipTextureReadMode readMode>
6586 DEPRECATED(DEPRECATED_MSG)
6587 static inline hipError_t hipBindTexture2D(
6588  size_t *offset,
6589  const struct texture<T, dim, readMode> &tex,
6590  const void *devPtr,
6591  size_t width,
6592  size_t height,
6593  size_t pitch)
6594 {
6595  return hipBindTexture2D(offset, &tex, devPtr, &tex.channelDesc, width, height, pitch);
6596 }
6597 template<class T, int dim, enum hipTextureReadMode readMode>
6598 DEPRECATED(DEPRECATED_MSG)
6599 static inline hipError_t hipBindTexture2D(
6600  size_t *offset,
6601  const struct texture<T, dim, readMode> &tex,
6602  const void *devPtr,
6603  const struct hipChannelFormatDesc &desc,
6604  size_t width,
6605  size_t height,
6606  size_t pitch)
6607 {
6608  return hipBindTexture2D(offset, &tex, devPtr, &desc, width, height, pitch);
6609 }
6610 template<class T, int dim, enum hipTextureReadMode readMode>
6611 DEPRECATED(DEPRECATED_MSG)
6612 static inline hipError_t hipBindTextureToArray(
6613  const struct texture<T, dim, readMode> &tex,
6614  hipArray_const_t array)
6615 {
6616  struct hipChannelFormatDesc desc;
6617  hipError_t err = hipGetChannelDesc(&desc, array);
6618  return (err == hipSuccess) ? hipBindTextureToArray(&tex, array, &desc) : err;
6619 }
6620 template<class T, int dim, enum hipTextureReadMode readMode>
6621 DEPRECATED(DEPRECATED_MSG)
6622 static inline hipError_t hipBindTextureToArray(
6623  const struct texture<T, dim, readMode> &tex,
6624  hipArray_const_t array,
6625  const struct hipChannelFormatDesc &desc)
6626 {
6627  return hipBindTextureToArray(&tex, array, &desc);
6628 }
6629 template<class T, int dim, enum hipTextureReadMode readMode>
6630 static inline hipError_t hipBindTextureToMipmappedArray(
6631  const struct texture<T, dim, readMode> &tex,
6632  hipMipmappedArray_const_t mipmappedArray)
6633 {
6634  struct hipChannelFormatDesc desc;
6635  hipArray_t levelArray;
6636  hipError_t err = hipGetMipmappedArrayLevel(&levelArray, mipmappedArray, 0);
6637  if (err != hipSuccess) {
6638  return err;
6639  }
6640  err = hipGetChannelDesc(&desc, levelArray);
6641  return (err == hipSuccess) ? hipBindTextureToMipmappedArray(&tex, mipmappedArray, &desc) : err;
6642 }
6643 template<class T, int dim, enum hipTextureReadMode readMode>
6644 static inline hipError_t hipBindTextureToMipmappedArray(
6645  const struct texture<T, dim, readMode> &tex,
6646  hipMipmappedArray_const_t mipmappedArray,
6647  const struct hipChannelFormatDesc &desc)
6648 {
6649  return hipBindTextureToMipmappedArray(&tex, mipmappedArray, &desc);
6650 }
6651 template<class T, int dim, enum hipTextureReadMode readMode>
6652 DEPRECATED(DEPRECATED_MSG)
6653 static inline hipError_t hipUnbindTexture(
6654  const struct texture<T, dim, readMode> &tex)
6655 {
6656  return hipUnbindTexture(&tex);
6657 }
6665 static inline hipError_t hipMallocAsync(
6666  void** dev_ptr,
6667  size_t size,
6668  hipMemPool_t mem_pool,
6669  hipStream_t stream) {
6670  return hipMallocFromPoolAsync(dev_ptr, size, mem_pool, stream);
6671 }
6672 
6673 template<class T>
6674 static inline hipError_t hipMallocAsync(
6675  T** dev_ptr,
6676  size_t size,
6677  hipMemPool_t mem_pool,
6678  hipStream_t stream) {
6679  return hipMallocFromPoolAsync(reinterpret_cast<void**>(dev_ptr), size, mem_pool, stream);
6680 }
6681 
6682 template<class T>
6683 static inline hipError_t hipMallocAsync(
6684  T** dev_ptr,
6685  size_t size,
6686  hipStream_t stream) {
6687  return hipMallocAsync(reinterpret_cast<void**>(dev_ptr), size, stream);
6688 }
6689 
6690 template<class T>
6691 static inline hipError_t hipMallocFromPoolAsync(
6692  T** dev_ptr,
6693  size_t size,
6694  hipMemPool_t mem_pool,
6695  hipStream_t stream) {
6696  return hipMallocFromPoolAsync(reinterpret_cast<void**>(dev_ptr), size, mem_pool, stream);
6697 }
6698 #endif // __cplusplus
6699 
6700 #ifdef __GNUC__
6701 #pragma GCC visibility pop
6702 #endif
6703 // doxygen end HIP API
6708 #elif !(defined(__HIP_PLATFORM_HCC__) || defined(__HIP_PLATFORM_AMD__)) && (defined(__HIP_PLATFORM_NVCC__) || defined(__HIP_PLATFORM_NVIDIA__))
6709 #include "hip/nvidia_detail/nvidia_hip_runtime_api.h"
6710 #else
6711 #error("Must define exactly one of __HIP_PLATFORM_AMD__ or __HIP_PLATFORM_NVIDIA__");
6712 #endif
6713 
6714 
6726 #if defined(__cplusplus) && !defined(__HIP_DISABLE_CPP_FUNCTIONS__)
6727 template <class T>
6728 static inline hipError_t hipMalloc(T** devPtr, size_t size) {
6729  return hipMalloc((void**)devPtr, size);
6730 }
6731 
6732 // Provide an override to automatically typecast the pointer type from void**, and also provide a
6733 // default for the flags.
6734 template <class T>
6735 static inline hipError_t hipHostMalloc(T** ptr, size_t size,
6736  unsigned int flags = hipHostMallocDefault) {
6737  return hipHostMalloc((void**)ptr, size, flags);
6738 }
6739 
6740 template <class T>
6741 static inline hipError_t hipMallocManaged(T** devPtr, size_t size,
6742  unsigned int flags = hipMemAttachGlobal) {
6743  return hipMallocManaged((void**)devPtr, size, flags);
6744 }
6745 
6746 #endif
6747 #endif
6748 
6749 #if USE_PROF_API
6750 #include <hip/amd_detail/hip_prof_str.h>
6751 #endif
hipGraphExecMemcpyNodeSetParams
hipError_t hipGraphExecMemcpyNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, hipMemcpy3DParms *pNodeParams)
Sets the parameters for a memcpy node in the given graphExec.
hipKernelNodeAttrValue
Definition: hip_runtime_api.h:189
hipGraphNodeTypeMemcpy1D
@ hipGraphNodeTypeMemcpy1D
Memcpy 1D node.
Definition: hip_runtime_api.h:1115
hipArrayMapInfo::deviceBitMask
unsigned int deviceBitMask
Device ordinal bit mask.
Definition: hip_runtime_api.h:6265
hipMemAllocationProp
struct hipMemAllocationProp hipMemAllocationProp
hipFuncAttributes
Definition: hip_runtime_api.h:561
hipMemPoolProps::allocType
hipMemAllocationType allocType
Allocation type. Currently must be specified as hipMemAllocationTypePinned.
Definition: hip_runtime_api.h:883
hipMemPoolImportPointer
hipError_t hipMemPoolImportPointer(void **dev_ptr, hipMemPool_t mem_pool, hipMemPoolPtrExportData *export_data)
Import a memory pool allocation from another process.
hipExternalMemoryBufferDesc_st
Definition: hip_runtime_api.h:992
hipPointerGetAttributes
hipError_t hipPointerGetAttributes(hipPointerAttribute_t *attributes, const void *ptr)
Return attributes for the specified pointer.
hipDeviceAttributeMaxPitch
@ hipDeviceAttributeMaxPitch
Maximum pitch in bytes allowed by memory copies.
Definition: hip_runtime_api.h:419
hipMemset3DAsync
hipError_t hipMemset3DAsync(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent, hipStream_t stream __dparm(0))
Fills asynchronously the memory area pointed to by pitchedDevPtr with the constant value.
hipMemAccessDesc::flags
hipMemAccessFlags flags
Accessibility flags to set.
Definition: hip_runtime_api.h:853
hipDeviceAttributeAsyncEngineCount
@ hipDeviceAttributeAsyncEngineCount
Cuda only. Asynchronous engines number.
Definition: hip_runtime_api.h:359
hipMemAllocationGranularityMinimum
@ hipMemAllocationGranularityMinimum
Minimum granularity.
Definition: hip_runtime_api.h:6199
hipMemcpy3D
hipError_t hipMemcpy3D(const struct hipMemcpy3DParms *p)
Copies data between host and device.
hipErrorStreamCaptureImplicit
hipErrorStreamCaptureImplicit
Definition: hip_runtime_api.h:325
hipIpcOpenMemHandle
hipError_t hipIpcOpenMemHandle(void **devPtr, hipIpcMemHandle_t handle, unsigned int flags)
Opens an interprocess memory handle exported from another process and returns a device pointer usable...
hipCtxEnablePeerAccess
hipError_t hipCtxEnablePeerAccess(hipCtx_t peerCtx, unsigned int flags)
Enables direct access to memory allocations in a peer context.
hipGraphicsRegisterFlags
hipGraphicsRegisterFlags
Definition: hip_runtime_api.h:1074
hipDeviceProp_t::regsPerBlock
int regsPerBlock
Registers per block.
Definition: hip_runtime_api.h:91
hipMemPoolSetAccess
hipError_t hipMemPoolSetAccess(hipMemPool_t mem_pool, const hipMemAccessDesc *desc_list, size_t count)
Controls visibility of the specified pool between devices.
hipMemPoolPtrExportData
Definition: hip_runtime_api.h:895
hipMemSetAccess
hipError_t hipMemSetAccess(void *ptr, size_t size, const hipMemAccessDesc *desc, size_t count)
Set the access flags for each location specified in desc for the given virtual address range.
hipGraphNodeTypeMemcpyToSymbol
@ hipGraphNodeTypeMemcpyToSymbol
MemcpyToSymbol node.
Definition: hip_runtime_api.h:1117
hipMallocPitch
hipError_t hipMallocPitch(void **ptr, size_t *pitch, size_t width, size_t height)
hipFreeAsync
hipError_t hipFreeAsync(void *dev_ptr, hipStream_t stream)
Frees memory with stream ordered semantics.
hipSetDevice
hipError_t hipSetDevice(int deviceId)
Set default device to be used for subsequent hip API calls from this thread.
hipDeviceAttributeManagedMemory
@ hipDeviceAttributeManagedMemory
Device supports allocating managed memory on this system.
Definition: hip_runtime_api.h:384
hipArrayMapInfo::offsetX
unsigned int offsetX
X offset in elements.
Definition: hip_runtime_api.h:6246
hipGetTextureObjectResourceViewDesc
hipError_t hipGetTextureObjectResourceViewDesc(struct hipResourceViewDesc *pResViewDesc, hipTextureObject_t textureObject)
Gets resource view descriptor for the texture object.
hipDeviceGetP2PAttribute
hipError_t hipDeviceGetP2PAttribute(int *value, hipDeviceP2PAttr attr, int srcDevice, int dstDevice)
Returns a value for attr of link between two devices.
hipGraphInstantiateFlagAutoFreeOnLaunch
@ hipGraphInstantiateFlagAutoFreeOnLaunch
Automatically free memory allocated in a graph before relaunching.
Definition: hip_runtime_api.h:1181
hipMemsetD16Async
hipError_t hipMemsetD16Async(hipDeviceptr_t dest, unsigned short value, size_t count, hipStream_t stream __dparm(0))
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant short value v...
hipMemcpy2DFromArrayAsync
hipError_t hipMemcpy2DFromArrayAsync(void *dst, size_t dpitch, hipArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data between host and device asynchronously.
hipDeviceAttributeMemoryBusWidth
@ hipDeviceAttributeMemoryBusWidth
Global memory bus width in bits.
Definition: hip_runtime_api.h:420
hipDeviceAttributePageableMemoryAccessUsesHostPageTables
@ hipDeviceAttributePageableMemoryAccessUsesHostPageTables
Device accesses pageable memory via the host's page tables.
Definition: hip_runtime_api.h:428
hipGraphNodeTypeMemcpyFromSymbol
@ hipGraphNodeTypeMemcpyFromSymbol
MemcpyFromSymbol node.
Definition: hip_runtime_api.h:1116
hipDestroyExternalMemory
hipError_t hipDestroyExternalMemory(hipExternalMemory_t extMem)
Destroys an external memory object.
hipGraphRemoveDependencies
hipError_t hipGraphRemoveDependencies(hipGraph_t graph, const hipGraphNode_t *from, const hipGraphNode_t *to, size_t numDependencies)
Removes dependency edges from a graph.
hipDeviceAttributeSingleToDoublePrecisionPerfRatio
@ hipDeviceAttributeSingleToDoublePrecisionPerfRatio
Cuda only. Performance ratio of single precision to double precision.
Definition: hip_runtime_api.h:440
hipGetErrorString
const char * hipGetErrorString(hipError_t hipError)
Return handy text string message to explain the error which occurred.
hipGraphLaunch
hipError_t hipGraphLaunch(hipGraphExec_t graphExec, hipStream_t stream)
launches an executable graph in a stream
hipGetDeviceFlags
hipError_t hipGetDeviceFlags(unsigned int *flags)
Gets the flags set for current device.
hipGraphInstantiateFlags
hipGraphInstantiateFlags
Definition: hip_runtime_api.h:1180
hipGraphNodeTypeGraph
@ hipGraphNodeTypeGraph
Node which executes an embedded graph.
Definition: hip_runtime_api.h:1111
hipDeviceGetByPCIBusId
hipError_t hipDeviceGetByPCIBusId(int *device, const char *pciBusId)
Returns a handle to a compute device.
hipErrorInvalidMemcpyDirection
hipErrorInvalidMemcpyDirection
Invalid memory copy direction.
Definition: hip_runtime_api.h:250
hipMemcpyToSymbolAsync
hipError_t hipMemcpyToSymbolAsync(const void *symbol, const void *src, size_t sizeBytes, size_t offset, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data to the given symbol on the device asynchronously.
hipMalloc3DArray
hipError_t hipMalloc3DArray(hipArray **array, const struct hipChannelFormatDesc *desc, struct hipExtent extent, unsigned int flags)
Allocate an array on the device.
hipDeviceArch_t::hasGlobalInt64Atomics
unsigned hasGlobalInt64Atomics
64-bit integer atomics for global memory.
Definition: hip_runtime_api.h:54
hipStreamCaptureStatus
hipStreamCaptureStatus
Definition: hip_runtime_api.h:1168
hipMemRetainAllocationHandle
hipError_t hipMemRetainAllocationHandle(hipMemGenericAllocationHandle_t *handle, void *addr)
Returns the allocation handle of the backing memory allocation given the address.
hipDeviceAttributeSharedMemPerMultiprocessor
@ hipDeviceAttributeSharedMemPerMultiprocessor
Cuda only. Shared memory available per multiprocessor.
Definition: hip_runtime_api.h:439
hipDeviceProp_t::minor
int minor
Definition: hip_runtime_api.h:103
hipDeviceAttributeMaxBlockDimX
@ hipDeviceAttributeMaxBlockDimX
Max block size in width.
Definition: hip_runtime_api.h:386
hipErrorInvalidDevicePointer
hipErrorInvalidDevicePointer
Invalid Device Pointer.
Definition: hip_runtime_api.h:249
hipChooseDevice
hipError_t hipChooseDevice(int *device, const hipDeviceProp_t *prop)
Device which matches hipDeviceProp_t is returned.
hipGraphGetRootNodes
hipError_t hipGraphGetRootNodes(hipGraph_t graph, hipGraphNode_t *pRootNodes, size_t *pNumRootNodes)
Returns graph's root nodes.
hipGraphClone
hipError_t hipGraphClone(hipGraph_t *pGraphClone, hipGraph_t originalGraph)
Clones a graph.
hipMemRangeGetAttribute
hipError_t hipMemRangeGetAttribute(void *data, size_t data_size, hipMemRangeAttribute attribute, const void *dev_ptr, size_t count)
Query an attribute of a given memory range in HIP.
hipStreamBeginCapture
hipError_t hipStreamBeginCapture(hipStream_t stream, hipStreamCaptureMode mode)
Begins graph capture on a stream.
hipMemcpy2DAsync
hipError_t hipMemcpy2DAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data between host and device.
hipMemAccessFlagsProtRead
@ hipMemAccessFlagsProtRead
Set the address range read accessible.
Definition: hip_runtime_api.h:845
hipLaunchKernel
hipError_t hipLaunchKernel(const void *function_address, dim3 numBlocks, dim3 dimBlocks, void **args, size_t sharedMemBytes __dparm(0), hipStream_t stream __dparm(0))
C compliant kernel launch API.
hipMemsetD32
hipError_t hipMemsetD32(hipDeviceptr_t dest, int value, size_t count)
Fills the memory area pointed to by dest with the constant integer value for specified number of time...
hipArrayMapInfo::memOperationType
hipMemOperationType memOperationType
Memory operation type.
Definition: hip_runtime_api.h:6259
hipGLDeviceList
hipGLDeviceList
Definition: hip_runtime_api.h:1061
hipGraphCreate
hipError_t hipGraphCreate(hipGraph_t *pGraph, unsigned int flags)
Creates a graph.
hipGraphExecUpdateErrorTopologyChanged
@ hipGraphExecUpdateErrorTopologyChanged
The update failed because the topology changed.
Definition: hip_runtime_api.h:1152
hipErrorMapBufferObjectFailed
hipErrorMapBufferObjectFailed
Produced when the IPC memory attach failed from ROCr.
Definition: hip_runtime_api.h:262
hipDeviceProp_t::texturePitchAlignment
size_t texturePitchAlignment
Pitch alignment requirement for texture references bound to pitched memory.
Definition: hip_runtime_api.h:133
hipDeviceAttributeMaxGridDimX
@ hipDeviceAttributeMaxGridDimX
Max grid size in width.
Definition: hip_runtime_api.h:389
hipGraphExecHostNodeSetParams
hipError_t hipGraphExecHostNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipHostNodeParams *pNodeParams)
Sets the parameters for a host node in the given graphExec.
hipDeviceArch_t::hasThreadFenceSystem
unsigned hasThreadFenceSystem
__threadfence_system.
Definition: hip_runtime_api.h:67
hipStreamCreate
hipError_t hipStreamCreate(hipStream_t *stream)
Create an asynchronous stream.
hipGraphAddMemcpyNode1D
hipError_t hipGraphAddMemcpyNode1D(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, void *dst, const void *src, size_t count, hipMemcpyKind kind)
Creates a 1D memcpy node and adds it to a graph.
hipMemPoolAttrReleaseThreshold
@ hipMemPoolAttrReleaseThreshold
Definition: hip_runtime_api.h:796
hipDeviceProp_t::pageableMemoryAccessUsesHostPageTables
int pageableMemoryAccessUsesHostPageTables
Device accesses pageable memory via the host's page tables.
Definition: hip_runtime_api.h:152
hipDeviceGetStreamPriorityRange
hipError_t hipDeviceGetStreamPriorityRange(int *leastPriority, int *greatestPriority)
Returns numerical values that correspond to the least and greatest stream priority.
hipMemAllocationGranularityRecommended
@ hipMemAllocationGranularityRecommended
Recommended granularity for performance.
Definition: hip_runtime_api.h:6200
hipGraphAddKernelNode
hipError_t hipGraphAddKernelNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipKernelNodeParams *pNodeParams)
Creates a kernel execution node and adds it to a graph.
hipWaitExternalSemaphoresAsync
hipError_t hipWaitExternalSemaphoresAsync(const hipExternalSemaphore_t *extSemArray, const hipExternalSemaphoreWaitParams *paramsArray, unsigned int numExtSems, hipStream_t stream)
Waits on a set of external semaphore objects.
hipGraphHostNodeGetParams
hipError_t hipGraphHostNodeGetParams(hipGraphNode_t node, hipHostNodeParams *pNodeParams)
Returns a host node's parameters.
hipArrayMapInfo::offsetZ
unsigned int offsetZ
Z offset in elements.
Definition: hip_runtime_api.h:6248
hipDeviceAttributeMaxThreadsDim
@ hipDeviceAttributeMaxThreadsDim
Maximum dimension of a block.
Definition: hip_runtime_api.h:416
hipIpcEventHandle_st
Definition: hip_runtime_api.h:551
hipStreamGetCaptureInfo
hipError_t hipStreamGetCaptureInfo(hipStream_t stream, hipStreamCaptureStatus *pCaptureStatus, unsigned long long *pId)
Get capture status of a stream.
hipDeviceAttributeImageSupport
@ hipDeviceAttributeImageSupport
'1' if Device supports image, '0' otherwise.
Definition: hip_runtime_api.h:475
hipDeviceAttributeLuid
@ hipDeviceAttributeLuid
Cuda only. 8-byte locally unique identifier in 8 bytes. Undefined on TCC and non-Windows platforms.
Definition: hip_runtime_api.h:381
hipMemAdviseSetPreferredLocation
@ hipMemAdviseSetPreferredLocation
Definition: hip_runtime_api.h:714
hipMemLocation
Definition: hip_runtime_api.h:834
hipDeviceProp_t::maxTexture3D
int maxTexture3D[3]
Maximum dimensions (width, height, depth) of 3D images, in image elements.
Definition: hip_runtime_api.h:128
hipGetTextureObjectTextureDesc
hipError_t hipGetTextureObjectTextureDesc(hipTextureDesc *pTexDesc, hipTextureObject_t textureObject)
Gets texture descriptor for the texture object.
hipGraphNodeGetDependencies
hipError_t hipGraphNodeGetDependencies(hipGraphNode_t node, hipGraphNode_t *pDependencies, size_t *pNumDependencies)
Returns a node's dependencies.
hipStreamCreateWithPriority
hipError_t hipStreamCreateWithPriority(hipStream_t *stream, unsigned int flags, int priority)
Create an asynchronous stream with the specified priority.
hipMemRangeAttributeCoherencyMode
@ hipMemRangeAttributeCoherencyMode
Definition: hip_runtime_api.h:755
hipMemOperationTypeUnmap
@ hipMemOperationTypeUnmap
Unmap operation.
Definition: hip_runtime_api.h:6219
hipFuncCache_t
hipFuncCache_t
Definition: hip_runtime_api.h:935
hipGraphAddDependencies
hipError_t hipGraphAddDependencies(hipGraph_t graph, const hipGraphNode_t *from, const hipGraphNode_t *to, size_t numDependencies)
Adds dependency edges to a graph.
hipDeviceProp_t::cooperativeMultiDeviceUnmatchedBlockDim
int cooperativeMultiDeviceUnmatchedBlockDim
Definition: hip_runtime_api.h:141
hipMemImportFromShareableHandle
hipError_t hipMemImportFromShareableHandle(hipMemGenericAllocationHandle_t *handle, void *osHandle, hipMemAllocationHandleType shHandleType)
Imports an allocation from a requested shareable handle type.
hipPeekAtLastError
hipError_t hipPeekAtLastError(void)
Return last error returned by any HIP runtime API call.
hipDeviceAttributeMaxSurfaceCubemapLayered
@ hipDeviceAttributeMaxSurfaceCubemapLayered
Cuda only. Maximum dimension of Cubemap layered surface.
Definition: hip_runtime_api.h:398
hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
hipError_t hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, const void *f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags __dparm(hipOccupancyDefault))
Returns occupancy for a device function.
hipModuleGetTexRef
hipError_t hipModuleGetTexRef(textureReference **texRef, hipModule_t hmod, const char *name)
returns the handle of the texture reference with the name from the module.
hipMemcpy3DAsync
hipError_t hipMemcpy3DAsync(const struct hipMemcpy3DParms *p, hipStream_t stream __dparm(0))
Copies data between host and device asynchronously.
hipDeviceGetPCIBusId
hipError_t hipDeviceGetPCIBusId(char *pciBusId, int len, int device)
Returns a PCI Bus Id string for the device, overloaded to take int device ID.
hipGraphDestroy
hipError_t hipGraphDestroy(hipGraph_t graph)
Destroys a graph.
hipHostGetFlags
hipError_t hipHostGetFlags(unsigned int *flagsPtr, void *hostPtr)
Return flags associated with host pointer.
hipGraphExecUpdateErrorParametersChanged
@ hipGraphExecUpdateErrorParametersChanged
The update failed because the parameters changed in a way that is not supported.
Definition: hip_runtime_api.h:1156
hipErrorHostMemoryNotRegistered
hipErrorHostMemoryNotRegistered
Produced when trying to unlock a non-page-locked memory.
Definition: hip_runtime_api.h:303
hipMemPoolGetAttribute
hipError_t hipMemPoolGetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void *value)
Gets attributes of a memory pool.
hipMemPoolAttrReservedMemCurrent
@ hipMemPoolAttrReservedMemCurrent
Definition: hip_runtime_api.h:801
hipErrorRuntimeOther
hipErrorRuntimeOther
Definition: hip_runtime_api.h:342
hipDeviceAttributeClockRate
@ hipDeviceAttributeClockRate
Peak clock frequency in kilohertz.
Definition: hip_runtime_api.h:363
hipMemGetAddressRange
hipError_t hipMemGetAddressRange(hipDeviceptr_t *pbase, size_t *psize, hipDeviceptr_t dptr)
Get information on memory allocations.
hipDeviceProp_t::asicRevision
int asicRevision
Revision of the GPU in this device.
Definition: hip_runtime_api.h:146
hipDeviceAttributeDirectManagedMemAccessFromHost
@ hipDeviceAttributeDirectManagedMemAccessFromHost
Definition: hip_runtime_api.h:372
hipMemAllocationProp::location
hipMemLocation location
Memory location.
Definition: hip_runtime_api.h:6181
hipDestroyExternalSemaphore
hipError_t hipDestroyExternalSemaphore(hipExternalSemaphore_t extSem)
Destroys an external semaphore object and releases any references to the underlying resource....
hipMemHandleTypeWin32Kmt
@ hipMemHandleTypeWin32Kmt
Allows a Win32 KMT handle for exporting. (D3DKMT_HANDLE)
Definition: hip_runtime_api.h:877
hipGraphNodeTypeHost
@ hipGraphNodeTypeHost
Host (executable) node.
Definition: hip_runtime_api.h:1110
hipStreamWaitEvent
hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags)
Make the specified compute stream wait for an event.
hipFuncCachePreferEqual
@ hipFuncCachePreferEqual
prefer equal size L1 cache and shared memory
Definition: hip_runtime_api.h:939
hipMemPoolProps::location
hipMemLocation location
Location where allocations should reside.
Definition: hip_runtime_api.h:885
hipGraphInstantiate
hipError_t hipGraphInstantiate(hipGraphExec_t *pGraphExec, hipGraph_t graph, hipGraphNode_t *pErrorNode, char *pLogBuffer, size_t bufferSize)
Creates an executable graph from a graph.
hipDeviceAttributeMaxGridDimZ
@ hipDeviceAttributeMaxGridDimZ
Max grid size in depth.
Definition: hip_runtime_api.h:391
hipMemPoolGetAccess
hipError_t hipMemPoolGetAccess(hipMemAccessFlags *flags, hipMemPool_t mem_pool, hipMemLocation *location)
Returns the accessibility of a pool from a device.
hipGetDevice
hipError_t hipGetDevice(int *deviceId)
Return the default device id for the calling host thread.
hipMemcpyFromSymbolAsync
hipError_t hipMemcpyFromSymbolAsync(void *dst, const void *symbol, size_t sizeBytes, size_t offset, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data from the given symbol on the device asynchronously.
hipMemLocation::id
int id
Identifier for the provided location type hipMemLocationType.
Definition: hip_runtime_api.h:836
hipGraphExecUpdateResult
hipGraphExecUpdateResult
Definition: hip_runtime_api.h:1148
hipMallocArray
hipError_t hipMallocArray(hipArray **array, const hipChannelFormatDesc *desc, size_t width, size_t height __dparm(0), unsigned int flags __dparm(hipArrayDefault))
Allocate an array on the device.
hipGraphExecKernelNodeSetParams
hipError_t hipGraphExecKernelNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipKernelNodeParams *pNodeParams)
Sets the parameters for a kernel node in the given graphExec.
hipCtxSetCurrent
hipError_t hipCtxSetCurrent(hipCtx_t ctx)
Set the passed context as current/default.
hipGraphExecDestroy
hipError_t hipGraphExecDestroy(hipGraphExec_t graphExec)
Destroys an executable graph.
hipMemRangeCoherencyModeCoarseGrain
@ hipMemRangeCoherencyModeCoarseGrain
Definition: hip_runtime_api.h:736
hipMemcpyToArray
hipError_t hipMemcpyToArray(hipArray *dst, size_t wOffset, size_t hOffset, const void *src, size_t count, hipMemcpyKind kind)
Copies data between host and device.
HIP_MEMCPY3D
Definition: driver_types.h:379
hipMemoryTypeDevice
@ hipMemoryTypeDevice
Definition: hip_runtime_api.h:161
hipMemGetAccess
hipError_t hipMemGetAccess(unsigned long long *flags, const hipMemLocation *location, void *ptr)
Get the access flags set for the given location and ptr.
hipDeviceAttributeMaxRegistersPerBlock
@ hipDeviceAttributeMaxRegistersPerBlock
Definition: hip_runtime_api.h:433
hipGraphExecChildGraphNodeSetParams
hipError_t hipGraphExecChildGraphNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, hipGraph_t childGraph)
Updates node parameters in the child graph node in the given graphExec.
hipMemcpyDtoDAsync
hipError_t hipMemcpyDtoDAsync(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream)
Copy data from Device to Device asynchronously.
hipErrorNoDevice
hipErrorNoDevice
Call to hipGetDeviceCount returned 0 devices.
Definition: hip_runtime_api.h:255
hipDeviceProp_t::isLargeBar
int isLargeBar
1: if it is a large PCI bar device, else 0
Definition: hip_runtime_api.h:145
hipDeviceAttributeLocalL1CacheSupported
@ hipDeviceAttributeLocalL1CacheSupported
caching locals in L1 is supported
Definition: hip_runtime_api.h:380
hipDeviceAttributeComputeCapabilityMinor
@ hipDeviceAttributeComputeCapabilityMinor
Minor compute capability version number.
Definition: hip_runtime_api.h:422
hipGraphMemcpyNodeSetParams
hipError_t hipGraphMemcpyNodeSetParams(hipGraphNode_t node, const hipMemcpy3DParms *pNodeParams)
Sets a memcpy node's parameters.
hipDeviceAttributeAsicRevision
@ hipDeviceAttributeAsicRevision
Revision of the GPU in this device.
Definition: hip_runtime_api.h:472
hipMemPoolPtrExportData
struct hipMemPoolPtrExportData hipMemPoolPtrExportData
hipGraphEventWaitNodeGetEvent
hipError_t hipGraphEventWaitNodeGetEvent(hipGraphNode_t node, hipEvent_t *event_out)
Returns the event associated with an event wait node.
hipArrayMapInfo::layer
unsigned int layer
For layered arrays must be a valid layer index. Otherwise, must be zero.
Definition: hip_runtime_api.h:6245
hipMemcpy2DFromArray
hipError_t hipMemcpy2DFromArray(void *dst, size_t dpitch, hipArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, hipMemcpyKind kind)
Copies data between host and device.
hipMemHandleTypeNone
@ hipMemHandleTypeNone
Does not allow any export mechanism.
Definition: hip_runtime_api.h:874
hipModuleOccupancyMaxPotentialBlockSizeWithFlags
hipError_t hipModuleOccupancyMaxPotentialBlockSizeWithFlags(int *gridSize, int *blockSize, hipFunction_t f, size_t dynSharedMemPerBlk, int blockSizeLimit, unsigned int flags)
determine the grid and block sizes to achieves maximum occupancy for a kernel
hipDeviceProp_t::concurrentManagedAccess
int concurrentManagedAccess
Device can coherently access managed memory concurrently with the CPU.
Definition: hip_runtime_api.h:149
hipDeviceProp_t::l2CacheSize
int l2CacheSize
L2 cache size.
Definition: hip_runtime_api.h:107
hipDevicePrimaryCtxRelease
hipError_t hipDevicePrimaryCtxRelease(hipDevice_t dev)
Release the primary context on the GPU.
hipDeviceProp_t::textureAlignment
size_t textureAlignment
Alignment requirement for textures.
Definition: hip_runtime_api.h:132
hipGraphExecUpdateError
@ hipGraphExecUpdateError
Definition: hip_runtime_api.h:1150
hipDeviceAttributeMaxTextureCubemap
@ hipDeviceAttributeMaxTextureCubemap
Cuda only. Maximum dimensions of Cubemap texture.
Definition: hip_runtime_api.h:414
hipMemcpyToSymbol
hipError_t hipMemcpyToSymbol(const void *symbol, const void *src, size_t sizeBytes, size_t offset __dparm(0), hipMemcpyKind kind __dparm(hipMemcpyHostToDevice))
Copies data to the given symbol on the device. Symbol HIP APIs allow a kernel to define a device-side...
hipHostMalloc
hipError_t hipHostMalloc(void **ptr, size_t size, unsigned int flags)
Allocate device accessible page locked host memory.
hipDeviceAttributeKernelExecTimeout
@ hipDeviceAttributeKernelExecTimeout
Run time limit for kernels executed on the device.
Definition: hip_runtime_api.h:378
hipGraphNodeTypeEventRecord
@ hipGraphNodeTypeEventRecord
External event record node.
Definition: hip_runtime_api.h:1114
dim3::y
uint32_t y
y
Definition: hip_runtime_api.h:957
hipDeviceAttributeL2CacheSize
@ hipDeviceAttributeL2CacheSize
Size of L2 cache in bytes. 0 if the device doesn't have L2 cache.
Definition: hip_runtime_api.h:379
hipDeviceAttributeCooperativeMultiDeviceUnmatchedGridDim
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedGridDim
Definition: hip_runtime_api.h:465
hipArrayMapInfo::subresourceType
hipArraySparseSubresourceType subresourceType
Sparse subresource type.
Definition: hip_runtime_api.h:6241
hipDeviceGetName
hipError_t hipDeviceGetName(char *name, int len, hipDevice_t device)
Returns an identifer string for the device.
hipDeviceGetDefaultMemPool
hipError_t hipDeviceGetDefaultMemPool(hipMemPool_t *mem_pool, int device)
Returns the default memory pool of the specified device.
hipArraySparseSubresourceTypeSparseLevel
@ hipArraySparseSubresourceTypeSparseLevel
Sparse level.
Definition: hip_runtime_api.h:6228
hipDeviceAttributeMaxTexture3DWidth
@ hipDeviceAttributeMaxTexture3DWidth
Maximum dimension width of 3D texture.
Definition: hip_runtime_api.h:410
hipDeviceArch_t::hasSurfaceFuncs
unsigned hasSurfaceFuncs
Surface functions.
Definition: hip_runtime_api.h:71
hipDeviceAttributeIntegrated
@ hipDeviceAttributeIntegrated
Device is integrated GPU.
Definition: hip_runtime_api.h:376
hipDeviceProp_t::isMultiGpuBoard
int isMultiGpuBoard
1 if device is on a multi-GPU board, 0 if not.
Definition: hip_runtime_api.h:118
hipMemcpyParam2DAsync
hipError_t hipMemcpyParam2DAsync(const hip_Memcpy2D *pCopy, hipStream_t stream __dparm(0))
Copies memory for 2D arrays.
hipMemHandleTypeGeneric
@ hipMemHandleTypeGeneric
Generic handle type.
Definition: hip_runtime_api.h:6209
hipAccessPolicyWindow
Definition: hip_runtime_api.h:182
hipArrayMapInfo::flags
unsigned int flags
flags for future use, must be zero now.
Definition: hip_runtime_api.h:6266
hipMemPoolTrimTo
hipError_t hipMemPoolTrimTo(hipMemPool_t mem_pool, size_t min_bytes_to_hold)
Releases freed memory back to the OS.
hipDeviceAttributeMaxGridDimY
@ hipDeviceAttributeMaxGridDimY
Max grid size in height.
Definition: hip_runtime_api.h:390
hipDeviceAttributeUnifiedAddressing
@ hipDeviceAttributeUnifiedAddressing
Cuda only. An unified address space shared with the host.
Definition: hip_runtime_api.h:448
hipMemAdviseUnsetCoarseGrain
@ hipMemAdviseUnsetCoarseGrain
Restores cache coherency policy back to fine-grain.
Definition: hip_runtime_api.h:726
hipMemoryTypeHost
@ hipMemoryTypeHost
Memory is physically located on host.
Definition: hip_runtime_api.h:160
hipDeviceAttributeSurfaceAlignment
@ hipDeviceAttributeSurfaceAlignment
Cuda only. Alignment requirement for surfaces.
Definition: hip_runtime_api.h:442
hipDeviceEnablePeerAccess
hipError_t hipDeviceEnablePeerAccess(int peerDeviceId, unsigned int flags)
Enable direct access from current device's virtual address space to memory allocations physically loc...
hipCtxSetCacheConfig
hipError_t hipCtxSetCacheConfig(hipFuncCache_t cacheConfig)
Set L1/Shared cache partition.
hipExternalMemoryGetMappedBuffer
hipError_t hipExternalMemoryGetMappedBuffer(void **devPtr, hipExternalMemory_t extMem, const hipExternalMemoryBufferDesc *bufferDesc)
Maps a buffer onto an imported memory object.
hipMemGetAllocationGranularity
hipError_t hipMemGetAllocationGranularity(size_t *granularity, const hipMemAllocationProp *prop, hipMemAllocationGranularity_flags option)
Calculates either the minimal or recommended granularity.
hipErrorInvalidContext
hipErrorInvalidContext
Produced when input context is invalid.
Definition: hip_runtime_api.h:258
hipDeviceArch_t::hasSharedInt64Atomics
unsigned hasSharedInt64Atomics
64-bit integer atomics for shared memory.
Definition: hip_runtime_api.h:55
hipDeviceProp_t::computeMode
int computeMode
Compute mode.
Definition: hip_runtime_api.h:109
hipGraphicsRegisterFlagsReadOnly
@ hipGraphicsRegisterFlagsReadOnly
HIP will not write to this registered resource.
Definition: hip_runtime_api.h:1076
hipMallocMipmappedArray
hipError_t hipMallocMipmappedArray(hipMipmappedArray_t *mipmappedArray, const struct hipChannelFormatDesc *desc, struct hipExtent extent, unsigned int numLevels, unsigned int flags __dparm(0))
Allocate a mipmapped array on the device.
hipExternalSemaphoreHandleDesc_st
Definition: hip_runtime_api.h:1004
hipCtxPushCurrent
hipError_t hipCtxPushCurrent(hipCtx_t ctx)
Push the context to be set as current/ default context.
hipDeviceAttributeIsMultiGpuBoard
@ hipDeviceAttributeIsMultiGpuBoard
Multiple GPU devices.
Definition: hip_runtime_api.h:377
hipSharedMemConfig
hipSharedMemConfig
Definition: hip_runtime_api.h:944
hipGraphGetNodes
hipError_t hipGraphGetNodes(hipGraph_t graph, hipGraphNode_t *nodes, size_t *numNodes)
Returns graph nodes.
hipDeviceAttributeMaxSurfaceCubemap
@ hipDeviceAttributeMaxSurfaceCubemap
Cuda only. Maximum dimensions of Cubemap surface.
Definition: hip_runtime_api.h:397
hipDrvMemcpy3D
hipError_t hipDrvMemcpy3D(const HIP_MEMCPY3D *pCopy)
Copies data between host and device.
hipDeviceAttributeMaxTexture2DMipmap
@ hipDeviceAttributeMaxTexture2DMipmap
Cuda only. Maximum dimensions of 2D mipmapped texture.
Definition: hip_runtime_api.h:409
dim3::x
uint32_t x
x
Definition: hip_runtime_api.h:956
hipGraphNodeTypeMemset
@ hipGraphNodeTypeMemset
Memset 1D node.
Definition: hip_runtime_api.h:1109
hipDeviceAttributeGcnArchName
@ hipDeviceAttributeGcnArchName
Device gcnArch name in 256 bytes.
Definition: hip_runtime_api.h:460
hipDeviceProp_t::clockRate
int clockRate
Max clock frequency of the multiProcessors in khz.
Definition: hip_runtime_api.h:96
hipMemAccessFlagsProtReadWrite
@ hipMemAccessFlagsProtReadWrite
Set the address range read-write accessible.
Definition: hip_runtime_api.h:846
hipDeviceProp_t::hdpRegFlushCntl
unsigned int * hdpRegFlushCntl
Addres of HDP_REG_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:130
hipErrorPeerAccessNotEnabled
hipErrorPeerAccessNotEnabled
Peer access was never enabled from the current device.
Definition: hip_runtime_api.h:296
hipMemAccessDesc
Definition: hip_runtime_api.h:851
hipDeviceComputeCapability
hipError_t hipDeviceComputeCapability(int *major, int *minor, hipDevice_t device)
Returns the compute capability of the device.
hipStreamCaptureStatusNone
@ hipStreamCaptureStatusNone
Stream is not capturing.
Definition: hip_runtime_api.h:1169
hipStreamCallback_t
void(* hipStreamCallback_t)(hipStream_t stream, hipError_t status, void *userData)
Definition: hip_runtime_api.h:2047
hipDeviceProp_t::maxTexture1DLinear
int maxTexture1DLinear
Maximum size for 1D textures bound to linear memory.
Definition: hip_runtime_api.h:125
hipDeviceAttributeComputePreemptionSupported
@ hipDeviceAttributeComputePreemptionSupported
Cuda only. Device supports Compute Preemption.
Definition: hip_runtime_api.h:365
hipGraphKernelNodeSetParams
hipError_t hipGraphKernelNodeSetParams(hipGraphNode_t node, const hipKernelNodeParams *pNodeParams)
Sets a kernel node's parameters.
hipGraphGetEdges
hipError_t hipGraphGetEdges(hipGraph_t graph, hipGraphNode_t *from, hipGraphNode_t *to, size_t *numEdges)
Returns a graph's dependency edges.
hipDeviceArch_t::hasDynamicParallelism
unsigned hasDynamicParallelism
Dynamic parallelism.
Definition: hip_runtime_api.h:73
hipMemoryAdvise
hipMemoryAdvise
Definition: hip_runtime_api.h:710
hip_Memcpy2D
Definition: driver_types.h:95
hipGetMipmappedArrayLevel
hipError_t hipGetMipmappedArrayLevel(hipArray_t *levelArray, hipMipmappedArray_const_t mipmappedArray, unsigned int level)
Gets a mipmap level of a HIP mipmapped array.
hipDestroyTextureObject
hipError_t hipDestroyTextureObject(hipTextureObject_t textureObject)
Destroys a texture object.
hipExternalSemaphoreWaitParams_st
Definition: hip_runtime_api.h:1032
hipDeviceProp_t::canMapHostMemory
int canMapHostMemory
Check whether HIP can map host memory.
Definition: hip_runtime_api.h:119
hipDeviceProp_t::sharedMemPerBlock
size_t sharedMemPerBlock
Size of shared memory region (in bytes).
Definition: hip_runtime_api.h:90
hipModuleOccupancyMaxPotentialBlockSize
hipError_t hipModuleOccupancyMaxPotentialBlockSize(int *gridSize, int *blockSize, hipFunction_t f, size_t dynSharedMemPerBlk, int blockSizeLimit)
determine the grid and block sizes to achieves maximum occupancy for a kernel
hipDeviceAttributeMaxSurface2DLayered
@ hipDeviceAttributeMaxSurface2DLayered
Cuda only. Maximum dimensions of 2D layered surface.
Definition: hip_runtime_api.h:395
__hipPushCallConfiguration
hipError_t __hipPushCallConfiguration(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0))
Push configuration of a kernel launch.
hipIpcCloseMemHandle
hipError_t hipIpcCloseMemHandle(void *devPtr)
Close memory mapped with hipIpcOpenMemHandle.
hipDeviceAttributeConcurrentManagedAccess
@ hipDeviceAttributeConcurrentManagedAccess
Device can coherently access managed memory concurrently with the CPU.
Definition: hip_runtime_api.h:367
hipDevicePrimaryCtxGetState
hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int *flags, int *active)
Get the state of the primary context.
hipGetSymbolSize
hipError_t hipGetSymbolSize(size_t *size, const void *symbol)
Gets the size of the given symbol on the device.
hipDeviceAttributeCooperativeMultiDeviceLaunch
@ hipDeviceAttributeCooperativeMultiDeviceLaunch
Support cooperative launch on multiple devices.
Definition: hip_runtime_api.h:369
hipLaunchCooperativeKernelMultiDevice
hipError_t hipLaunchCooperativeKernelMultiDevice(hipLaunchParams *launchParamsList, int numDevices, unsigned int flags)
Launches kernels on multiple devices where thread blocks can cooperate and synchronize as they execut...
hipMemAllocationProp::requestedHandleType
hipMemAllocationHandleType requestedHandleType
Requested handle type.
Definition: hip_runtime_api.h:6182
hipDeviceProp_t::maxThreadsPerMultiProcessor
int maxThreadsPerMultiProcessor
Maximum resident threads per multi-processor.
Definition: hip_runtime_api.h:108
hipDeviceSetCacheConfig
hipError_t hipDeviceSetCacheConfig(hipFuncCache_t cacheConfig)
Set L1/Shared cache partition.
hipDeviceAttributeMaxSurface2D
@ hipDeviceAttributeMaxSurface2D
Maximum dimension (width, height) of 2D surface.
Definition: hip_runtime_api.h:394
hipDeviceAttributePhysicalMultiProcessorCount
@ hipDeviceAttributePhysicalMultiProcessorCount
Definition: hip_runtime_api.h:476
hipMemExportToShareableHandle
hipError_t hipMemExportToShareableHandle(void *shareableHandle, hipMemGenericAllocationHandle_t handle, hipMemAllocationHandleType handleType, unsigned long long flags)
Exports an allocation to a requested shareable handle type.
hipThreadExchangeStreamCaptureMode
hipError_t hipThreadExchangeStreamCaptureMode(hipStreamCaptureMode *mode)
Swaps the stream capture mode of a thread.
hipDeviceProp_t::major
int major
Definition: hip_runtime_api.h:100
hipDeviceAttributeMaxSharedMemoryPerBlock
@ hipDeviceAttributeMaxSharedMemoryPerBlock
Maximum shared memory available per block in bytes.
Definition: hip_runtime_api.h:437
hipMemcpyAtoH
hipError_t hipMemcpyAtoH(void *dst, hipArray *srcArray, size_t srcOffset, size_t count)
Copies data between host and device.
hipGetDeviceCount
hipError_t hipGetDeviceCount(int *count)
Return number of compute-capable devices.
hipExtLaunchKernel
hipError_t hipExtLaunchKernel(const void *function_address, dim3 numBlocks, dim3 dimBlocks, void **args, size_t sharedMemBytes, hipStream_t stream, hipEvent_t startEvent, hipEvent_t stopEvent, int flags)
Launches kernel from the pointer address, with arguments and shared memory on stream.
hipSuccess
hipSuccess
Successful completion.
Definition: hip_runtime_api.h:232
hipExternalSemaphoreWaitParams
struct hipExternalSemaphoreWaitParams_st hipExternalSemaphoreWaitParams
hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk, unsigned int flags)
Returns occupancy for a device function.
hipSetupArgument
hipError_t hipSetupArgument(const void *arg, size_t size, size_t offset)
Set a kernel argument.
hipArrayMapInfo::extentHeight
unsigned int extentHeight
Height in elements.
Definition: hip_runtime_api.h:6250
hipStreamAttachMemAsync
hipError_t hipStreamAttachMemAsync(hipStream_t stream, void *dev_ptr, size_t length __dparm(0), unsigned int flags __dparm(hipMemAttachSingle))
Attach memory to a stream asynchronously in HIP.
hipHostUnregister
hipError_t hipHostUnregister(void *hostPtr)
Un-register host pointer.
hipErrorStreamCaptureInvalidated
hipErrorStreamCaptureInvalidated
Definition: hip_runtime_api.h:314
hipStreamWriteValue32
hipError_t hipStreamWriteValue32(hipStream_t stream, void *ptr, uint32_t value, unsigned int flags)
Enqueues a write command to the stream.[BETA].
hipDeviceAttributeMaxTexture3DAlt
@ hipDeviceAttributeMaxTexture3DAlt
Cuda only. Maximum dimensions of alternate 3D texture.
Definition: hip_runtime_api.h:413
hipStreamGetFlags
hipError_t hipStreamGetFlags(hipStream_t stream, unsigned int *flags)
Return flags associated with this stream.
hipMemsetD8Async
hipError_t hipMemsetD8Async(hipDeviceptr_t dest, unsigned char value, size_t count, hipStream_t stream __dparm(0))
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant byte value va...
hipDeviceAttributeMaxThreadsPerBlock
@ hipDeviceAttributeMaxThreadsPerBlock
Maximum number of threads per block.
Definition: hip_runtime_api.h:417
hipArrayMapInfo::reserved
unsigned int reserved[2]
Reserved for future use, must be zero now.
Definition: hip_runtime_api.h:6267
hipGraphNodeTypeMemcpy
@ hipGraphNodeTypeMemcpy
Memcpy 3D node.
Definition: hip_runtime_api.h:1108
hipExtStreamCreateWithCUMask
hipError_t hipExtStreamCreateWithCUMask(hipStream_t *stream, uint32_t cuMaskSize, const uint32_t *cuMask)
Create an asynchronous stream with the specified CU mask.
hipDeviceProp_t::gcnArch
int gcnArch
DEPRECATED: use gcnArchName instead.
Definition: hip_runtime_api.h:120
hipGraph_t
struct ihipGraph * hipGraph_t
Definition: hip_runtime_api.h:1091
hipStreamSynchronize
hipError_t hipStreamSynchronize(hipStream_t stream)
Wait for all commands in stream to complete.
hipDeviceArch_t
Definition: hip_runtime_api.h:45
hipMemAddressFree
hipError_t hipMemAddressFree(void *devPtr, size_t size)
Frees an address range reservation made via hipMemAddressReserve.
hipMemUnmap
hipError_t hipMemUnmap(void *ptr, size_t size)
Unmap memory allocation of a given address range.
hipGetErrorName
const char * hipGetErrorName(hipError_t hip_error)
Return name of the specified error code in text form.
hipDeviceProp_t::kernelExecTimeoutEnabled
int kernelExecTimeoutEnabled
Run time limit for kernels executed on the device.
Definition: hip_runtime_api.h:134
dim3
struct dim3 dim3
hipDeviceGet
hipError_t hipDeviceGet(hipDevice_t *device, int ordinal)
Returns a handle to a compute device.
hipStreamWaitValue64
hipError_t hipStreamWaitValue64(hipStream_t stream, void *ptr, uint64_t value, unsigned int flags, uint64_t mask __dparm(0xFFFFFFFFFFFFFFFF))
Enqueues a wait command to the stream.[BETA].
hipArrayMapInfo::offset
unsigned long long offset
Offset within mip tail.
Definition: hip_runtime_api.h:6255
hipMemcpyDtoD
hipError_t hipMemcpyDtoD(hipDeviceptr_t dst, hipDeviceptr_t src, size_t sizeBytes)
Copy data from Device to Device.
hipStreamWaitValue32
hipError_t hipStreamWaitValue32(hipStream_t stream, void *ptr, uint32_t value, unsigned int flags, uint32_t mask __dparm(0xFFFFFFFF))
Enqueues a wait command to the stream.[BETA].
hipDeviceProp_t::maxTexture1D
int maxTexture1D
Maximum number of elements in 1D images.
Definition: hip_runtime_api.h:126
hipMemAllocationProp::compressionType
unsigned char compressionType
Compression type.
Definition: hip_runtime_api.h:6180
hipMemcpy3DParms
Definition: driver_types.h:369
hipDeviceAttributeMaxBlockDimZ
@ hipDeviceAttributeMaxBlockDimZ
Max block size in depth.
Definition: hip_runtime_api.h:388
hipMemPoolAttrReservedMemHigh
@ hipMemPoolAttrReservedMemHigh
Definition: hip_runtime_api.h:807
hipGraphExec_t
struct hipGraphExec * hipGraphExec_t
Definition: hip_runtime_api.h:1099
hipMemcpyFromSymbol
hipError_t hipMemcpyFromSymbol(void *dst, const void *symbol, size_t sizeBytes, size_t offset __dparm(0), hipMemcpyKind kind __dparm(hipMemcpyDeviceToHost))
Copies data from the given symbol on the device.
hipMallocManaged
hipError_t hipMallocManaged(void **dev_ptr, size_t size, unsigned int flags __dparm(hipMemAttachGlobal))
Allocates memory that will be automatically managed by HIP.
hipMemPoolSetAttribute
hipError_t hipMemPoolSetAttribute(hipMemPool_t mem_pool, hipMemPoolAttr attr, void *value)
Sets attributes of a memory pool.
hipIpcGetMemHandle
hipError_t hipIpcGetMemHandle(hipIpcMemHandle_t *handle, void *devPtr)
Gets an interprocess memory handle for an existing device memory allocation.
hipMemPoolProps::reserved
unsigned char reserved[64]
Reserved for future use, must be 0.
Definition: hip_runtime_api.h:890
hipMemcpyHtoD
hipError_t hipMemcpyHtoD(hipDeviceptr_t dst, void *src, size_t sizeBytes)
Copy data from Host to Device.
hipDriverGetVersion
hipError_t hipDriverGetVersion(int *driverVersion)
Returns the approximate HIP driver version.
hipGraphMemcpyNodeGetParams
hipError_t hipGraphMemcpyNodeGetParams(hipGraphNode_t node, hipMemcpy3DParms *pNodeParams)
Gets a memcpy node's parameters.
hipDeviceArch_t::hasDoubles
unsigned hasDoubles
Double-precision floating point.
Definition: hip_runtime_api.h:58
hipErrorInvalidKernelFile
hipErrorInvalidKernelFile
In CUDA DRV, it is CUDA_ERROR_INVALID_PTX.
Definition: hip_runtime_api.h:275
hipStreamCaptureStatusInvalidated
@ hipStreamCaptureStatusInvalidated
Definition: hip_runtime_api.h:1171
hipDeviceProp_t::maxThreadsPerBlock
int maxThreadsPerBlock
Max work items per work group or workgroup max size.
Definition: hip_runtime_api.h:93
hipMemPoolReuseAllowInternalDependencies
@ hipMemPoolReuseAllowInternalDependencies
Definition: hip_runtime_api.h:787
hipCtxGetFlags
hipError_t hipCtxGetFlags(unsigned int *flags)
Return flags used for creating default context.
hipDeviceAttributeMaxTexture1DMipmap
@ hipDeviceAttributeMaxTexture1DMipmap
Cuda only. Maximum size of 1D mipmapped texture.
Definition: hip_runtime_api.h:403
hipDeviceAttributeMaxBlockDimY
@ hipDeviceAttributeMaxBlockDimY
Max block size in height.
Definition: hip_runtime_api.h:387
hipMemcpy2DToArray
hipError_t hipMemcpy2DToArray(hipArray *dst, size_t wOffset, size_t hOffset, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind)
Copies data between host and device.
hipMemAllocPitch
hipError_t hipMemAllocPitch(hipDeviceptr_t *dptr, size_t *pitch, size_t widthInBytes, size_t height, unsigned int elementSizeBytes)
hipDeviceProp_t
Definition: hip_runtime_api.h:87
hipStreamUpdateCaptureDependenciesFlags
hipStreamUpdateCaptureDependenciesFlags
Definition: hip_runtime_api.h:1175
hipDeviceAttributeCooperativeMultiDeviceUnmatchedBlockDim
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedBlockDim
Definition: hip_runtime_api.h:467
hipArrayMapInfo::size
unsigned long long size
Extent in bytes.
Definition: hip_runtime_api.h:6256
hipErrorStreamCaptureUnjoined
hipErrorStreamCaptureUnjoined
Definition: hip_runtime_api.h:319
hipDeviceAttributeMaxTexture2DHeight
@ hipDeviceAttributeMaxTexture2DHeight
Maximum dimension hight of 2D texture.
Definition: hip_runtime_api.h:405
hipGraphNode_t
struct hipGraphNode * hipGraphNode_t
Definition: hip_runtime_api.h:1095
hipDeviceAttributeMaxSurface1D
@ hipDeviceAttributeMaxSurface1D
Maximum size of 1D surface.
Definition: hip_runtime_api.h:392
hipDeviceArch_t::hasSharedInt32Atomics
unsigned hasSharedInt32Atomics
32-bit integer atomics for shared memory.
Definition: hip_runtime_api.h:49
hipGraphExecMemcpyNodeSetParams1D
hipError_t hipGraphExecMemcpyNodeSetParams1D(hipGraphExec_t hGraphExec, hipGraphNode_t node, void *dst, const void *src, size_t count, hipMemcpyKind kind)
Sets the parameters for a memcpy node in the given graphExec to perform a 1-dimensional copy.
hipErrorInvalidValue
hipErrorInvalidValue
Definition: hip_runtime_api.h:233
hipDeviceProp_t::memPitch
size_t memPitch
Maximum pitch in bytes allowed by memory copies.
Definition: hip_runtime_api.h:131
hipDeviceAttributeDeviceOverlap
@ hipDeviceAttributeDeviceOverlap
Definition: hip_runtime_api.h:370
hipMemRelease
hipError_t hipMemRelease(hipMemGenericAllocationHandle_t handle)
Release a memory handle representing a memory allocation which was previously allocated through hipMe...
hipMemsetD32Async
hipError_t hipMemsetD32Async(hipDeviceptr_t dst, int value, size_t count, hipStream_t stream __dparm(0))
Fills the memory area pointed to by dev with the constant integer value for specified number of times...
hipDeviceProp_t::pciBusID
int pciBusID
PCI Bus ID.
Definition: hip_runtime_api.h:115
hipStreamEndCapture
hipError_t hipStreamEndCapture(hipStream_t stream, hipGraph_t *pGraph)
Ends capture on a stream, returning the captured graph.
hipMemAccessDesc
struct hipMemAccessDesc hipMemAccessDesc
hipMemRangeGetAttributes
hipError_t hipMemRangeGetAttributes(void **data, size_t *data_sizes, hipMemRangeAttribute *attributes, size_t num_attributes, const void *dev_ptr, size_t count)
Query attributes of a given memory range in HIP.
hipRuntimeGetVersion
hipError_t hipRuntimeGetVersion(int *runtimeVersion)
Returns the approximate HIP Runtime version.
hipDeviceAttributeComputeCapabilityMajor
@ hipDeviceAttributeComputeCapabilityMajor
Major compute capability version number.
Definition: hip_runtime_api.h:383
hipConfigureCall
hipError_t hipConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem __dparm(0), hipStream_t stream __dparm(0))
Configure a kernel launch.
hipLaunchCooperativeKernel
hipError_t hipLaunchCooperativeKernel(const void *f, dim3 gridDim, dim3 blockDimX, void **kernelParams, unsigned int sharedMemBytes, hipStream_t stream)
launches kernel f with launch parameters and shared memory on stream with arguments passed to kernelp...
hipEventQuery
hipError_t hipEventQuery(hipEvent_t event)
Query event status.
hipGetChannelDesc
hipError_t hipGetChannelDesc(hipChannelFormatDesc *desc, hipArray_const_t array)
Gets the channel descriptor in an array.
hipDeviceAttributeMaxTexture3DDepth
@ hipDeviceAttributeMaxTexture3DDepth
Maximum dimension depth of 3D texture.
Definition: hip_runtime_api.h:412
hipExtLaunchMultiKernelMultiDevice
hipError_t hipExtLaunchMultiKernelMultiDevice(hipLaunchParams *launchParamsList, int numDevices, unsigned int flags)
Launches kernels on multiple devices and guarantees all specified kernels are dispatched on respectiv...
hipGraphEventWaitNodeSetEvent
hipError_t hipGraphEventWaitNodeSetEvent(hipGraphNode_t node, hipEvent_t event)
Sets an event wait node's event.
hipErrorRuntimeMemory
hipErrorRuntimeMemory
Definition: hip_runtime_api.h:340
hipDeviceAttributeMaxThreadsPerMultiProcessor
@ hipDeviceAttributeMaxThreadsPerMultiProcessor
Maximum resident threads per multiprocessor.
Definition: hip_runtime_api.h:418
hipMemPoolDestroy
hipError_t hipMemPoolDestroy(hipMemPool_t mem_pool)
Destroys the specified memory pool.
hipArrayMapInfo::extentWidth
unsigned int extentWidth
Width in elements.
Definition: hip_runtime_api.h:6249
hipGraphAddChildGraphNode
hipError_t hipGraphAddChildGraphNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, hipGraph_t childGraph)
Creates a child graph node and adds it to a graph.
hipStreamGetPriority
hipError_t hipStreamGetPriority(hipStream_t stream, int *priority)
Query the priority of a stream.
hipOccupancyMaxActiveBlocksPerMultiprocessor
hipError_t hipOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, const void *f, int blockSize, size_t dynSharedMemPerBlk)
Returns occupancy for a device function.
hipDeviceProp_t::arch
hipDeviceArch_t arch
Architectural feature flags. New for HIP.
Definition: hip_runtime_api.h:112
hipCtxGetApiVersion
hipError_t hipCtxGetApiVersion(hipCtx_t ctx, int *apiVersion)
Returns the approximate HIP api version.
hipSharedMemBankSizeFourByte
@ hipSharedMemBankSizeFourByte
Definition: hip_runtime_api.h:946
hipMemPool_t
struct ihipMemPoolHandle_t * hipMemPool_t
Definition: hip_runtime_api.h:559
hipEventSynchronize
hipError_t hipEventSynchronize(hipEvent_t event)
Wait for an event to complete.
hipFuncCachePreferNone
@ hipFuncCachePreferNone
no preference for shared memory or L1 (default)
Definition: hip_runtime_api.h:936
hipMemAllocationGranularity_flags
hipMemAllocationGranularity_flags
Definition: hip_runtime_api.h:6198
hipMemPoolExportToShareableHandle
hipError_t hipMemPoolExportToShareableHandle(void *shared_handle, hipMemPool_t mem_pool, hipMemAllocationHandleType handle_type, unsigned int flags)
Exports a memory pool to the requested handle type.
hipMemCreate
hipError_t hipMemCreate(hipMemGenericAllocationHandle_t *handle, size_t size, const hipMemAllocationProp *prop, unsigned long long flags)
Creates a memory allocation described by the properties and size.
hipDeviceAttributeMaxTexture1DLayered
@ hipDeviceAttributeMaxTexture1DLayered
Cuda only. Maximum dimensions of 1D layered texture.
Definition: hip_runtime_api.h:400
hipCtxCreate
hipError_t hipCtxCreate(hipCtx_t *ctx, unsigned int flags, hipDevice_t device)
Create a context and set it as current/ default context.
hipDeviceAttributeHdpRegFlushCntl
@ hipDeviceAttributeHdpRegFlushCntl
Address of the HDP_REG_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:462
hipMemMap
hipError_t hipMemMap(void *ptr, size_t size, size_t offset, hipMemGenericAllocationHandle_t handle, unsigned long long flags)
Maps an allocation handle to a reserved virtual address range.
hipErrorStreamCaptureUnmatched
hipErrorStreamCaptureUnmatched
The capture was not initiated in this stream.
Definition: hip_runtime_api.h:318
hipMemLocationTypeDevice
@ hipMemLocationTypeDevice
Device location, thus it's HIP device ID.
Definition: hip_runtime_api.h:827
hipMemRangeCoherencyModeFineGrain
@ hipMemRangeCoherencyModeFineGrain
Definition: hip_runtime_api.h:734
hipGraphNodeType
hipGraphNodeType
Definition: hip_runtime_api.h:1106
hipHostFree
hipError_t hipHostFree(void *ptr)
Free memory allocated by the hcc hip host memory allocation API This API performs an implicit hipDevi...
hipDeviceAttributePciBusId
@ hipDeviceAttributePciBusId
PCI Bus ID.
Definition: hip_runtime_api.h:429
hipMemsetD16
hipError_t hipMemsetD16(hipDeviceptr_t dest, unsigned short value, size_t count)
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant short value v...
hipDeviceProp_t::tccDriver
int tccDriver
1:If device is Tesla device using TCC driver, else 0
Definition: hip_runtime_api.h:136
hipMipmappedArray
Definition: driver_types.h:117
hipMemAllocationType
hipMemAllocationType
Definition: hip_runtime_api.h:860
hipDeviceAttributePersistingL2CacheMaxSize
@ hipDeviceAttributePersistingL2CacheMaxSize
Cuda11 only. Maximum l2 persisting lines capacity in bytes.
Definition: hip_runtime_api.h:432
hipMemRangeAttributeAccessedBy
@ hipMemRangeAttributeAccessedBy
Definition: hip_runtime_api.h:751
hipDeviceGetLimit
hipError_t hipDeviceGetLimit(size_t *pValue, enum hipLimit_t limit)
Get Resource limits of current device.
hipLaunchParams_t::args
void ** args
Arguments.
Definition: hip_runtime_api.h:967
hipMalloc
hipError_t hipMalloc(void **ptr, size_t size)
Allocate memory on the default accelerator.
hipMemoryTypeUnified
@ hipMemoryTypeUnified
Not used currently.
Definition: hip_runtime_api.h:165
hipMemsetParams
Definition: hip_runtime_api.h:1134
hipGraphNodeTypeKernel
@ hipGraphNodeTypeKernel
GPU kernel node.
Definition: hip_runtime_api.h:1107
hipDeviceAttributeMaxTexture1DLinear
@ hipDeviceAttributeMaxTexture1DLinear
Definition: hip_runtime_api.h:401
hipIpcMemHandle_st
Definition: hip_runtime_api.h:548
hipMemPoolAttrUsedMemCurrent
@ hipMemPoolAttrUsedMemCurrent
Definition: hip_runtime_api.h:812
hipDeviceAttributeMemoryPoolsSupported
@ hipDeviceAttributeMemoryPoolsSupported
Device supports HIP Stream Ordered Memory Allocator.
Definition: hip_runtime_api.h:451
hipEventElapsedTime
hipError_t hipEventElapsedTime(float *ms, hipEvent_t start, hipEvent_t stop)
Return the elapsed time between two events.
hipGraphInstantiateWithFlags
hipError_t hipGraphInstantiateWithFlags(hipGraphExec_t *pGraphExec, hipGraph_t graph, unsigned long long flags)
Creates an executable graph from a graph.
hipGetLastError
hipError_t hipGetLastError(void)
Return last error returned by any HIP runtime API call and resets the stored error code to hipSuccess...
hipInit
hipError_t hipInit(unsigned int flags)
Explicitly initializes the HIP runtime.
hipDeviceAttributeTexturePitchAlignment
@ hipDeviceAttributeTexturePitchAlignment
Pitch alignment requirement for 2D texture references bound to pitched memory;.
Definition: hip_runtime_api.h:445
hipGraphExecUpdateErrorFunctionChanged
@ hipGraphExecUpdateErrorFunctionChanged
The update failed because the function of a kernel node changed.
Definition: hip_runtime_api.h:1154
hipDeviceAttributeWarpSize
@ hipDeviceAttributeWarpSize
Warp size in threads.
Definition: hip_runtime_api.h:450
hipDeviceArch_t::hasGlobalInt32Atomics
unsigned hasGlobalInt32Atomics
32-bit integer atomics for global memory.
Definition: hip_runtime_api.h:47
HIP_TEXTURE_DESC_st
Definition: driver_types.h:165
hipFuncSetCacheConfig
hipError_t hipFuncSetCacheConfig(const void *func, hipFuncCache_t config)
Set Cache configuration for a specific function.
hipGraphAddMemcpyNodeToSymbol
hipError_t hipGraphAddMemcpyNodeToSymbol(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const void *symbol, const void *src, size_t count, size_t offset, hipMemcpyKind kind)
Creates a memcpy node to copy to a symbol on the device and adds it to a graph.
hipCtxPopCurrent
hipError_t hipCtxPopCurrent(hipCtx_t *ctx)
Pop the current/default context and return the popped context.
hipArray
Definition: driver_types.h:82
hipDeviceArch_t::hasSyncThreadsExt
unsigned hasSyncThreadsExt
__syncthreads_count, syncthreads_and, syncthreads_or.
Definition: hip_runtime_api.h:68
hipGraphExecUpdateSuccess
@ hipGraphExecUpdateSuccess
The update succeeded.
Definition: hip_runtime_api.h:1149
hipHostAlloc
hipError_t hipHostAlloc(void **ptr, size_t size, unsigned int flags)
Allocate device accessible page locked host memory [Deprecated].
hipMallocAsync
hipError_t hipMallocAsync(void **dev_ptr, size_t size, hipStream_t stream)
Allocates memory with stream ordered semantics.
hipMemoryTypeArray
@ hipMemoryTypeArray
Definition: hip_runtime_api.h:163
hipMemPoolProps::win32SecurityAttributes
void * win32SecurityAttributes
Definition: hip_runtime_api.h:889
hipGraphNodeTypeWaitEvent
@ hipGraphNodeTypeWaitEvent
External event wait node.
Definition: hip_runtime_api.h:1113
hipErrorInvalidDevice
hipErrorInvalidDevice
DeviceID must be in range 0...#compute-devices.
Definition: hip_runtime_api.h:256
hipDeviceArch_t::hasFunnelShift
unsigned hasFunnelShift
Funnel two words into one with shift&mask caps.
Definition: hip_runtime_api.h:64
hipDeviceAttributeMaxTexture3DHeight
@ hipDeviceAttributeMaxTexture3DHeight
Maximum dimension height of 3D texture.
Definition: hip_runtime_api.h:411
hipDeviceAttributeLuidDeviceNodeMask
@ hipDeviceAttributeLuidDeviceNodeMask
Cuda only. Luid device node mask. Undefined on TCC and non-Windows platforms.
Definition: hip_runtime_api.h:382
hipDeviceAttributeMemoryClockRate
@ hipDeviceAttributeMemoryClockRate
Peak memory clock frequency in kilohertz.
Definition: hip_runtime_api.h:421
hipGraphAddMemcpyNodeFromSymbol
hipError_t hipGraphAddMemcpyNodeFromSymbol(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, void *dst, const void *symbol, size_t count, size_t offset, hipMemcpyKind kind)
Creates a memcpy node to copy from a symbol on the device and adds it to a graph.
hipErrorNotReady
hipErrorNotReady
Definition: hip_runtime_api.h:287
hipDeviceAttributeMaxTexture2DGather
@ hipDeviceAttributeMaxTexture2DGather
Cuda only. Maximum dimensions of 2D texture if gather operations performed.
Definition: hip_runtime_api.h:406
hipHostGetDevicePointer
hipError_t hipHostGetDevicePointer(void **devPtr, void *hstPtr, unsigned int flags)
Get Device pointer from Host Pointer allocated through hipHostMalloc.
hipExternalSemaphoreSignalParams_st
Definition: hip_runtime_api.h:1016
hipMemGetInfo
hipError_t hipMemGetInfo(size_t *free, size_t *total)
Query memory info. Return snapshot of free memory, and total allocatable memory on the device.
hipEventDestroy
hipError_t hipEventDestroy(hipEvent_t event)
Destroy the specified event.
hipDeviceAttributeTccDriver
@ hipDeviceAttributeTccDriver
Cuda only. Whether device is a Tesla device using TCC driver.
Definition: hip_runtime_api.h:443
hipMemAdviseSetCoarseGrain
@ hipMemAdviseSetCoarseGrain
Definition: hip_runtime_api.h:721
hipPointerAttribute_t
struct hipPointerAttribute_t hipPointerAttribute_t
hipDeviceSetSharedMemConfig
hipError_t hipDeviceSetSharedMemConfig(hipSharedMemConfig config)
The bank width of shared memory on current device is set.
hipDeviceAttributeUuid
@ hipDeviceAttributeUuid
Cuda only. Unique ID in 16 byte.
Definition: hip_runtime_api.h:449
hipMemAccessDesc::location
hipMemLocation location
Location on which the accessibility has to change.
Definition: hip_runtime_api.h:852
hipDeviceReset
hipError_t hipDeviceReset(void)
The state of current device is discarded and updated to a fresh state.
hipDeviceProp_t::maxGridSize
int maxGridSize[3]
Max grid dimensions (XYZ).
Definition: hip_runtime_api.h:95
hipDeviceAttributeComputeMode
@ hipDeviceAttributeComputeMode
Compute mode that device is currently in.
Definition: hip_runtime_api.h:364
hipDeviceAttributeName
@ hipDeviceAttributeName
Device name.
Definition: hip_runtime_api.h:425
hipSetDeviceFlags
hipError_t hipSetDeviceFlags(unsigned flags)
The current device behavior is changed according the flags passed.
hipCtxGetCurrent
hipError_t hipCtxGetCurrent(hipCtx_t *ctx)
Get the handle of the current/ default context.
hipErrorStreamCaptureIsolation
hipErrorStreamCaptureIsolation
Definition: hip_runtime_api.h:321
hipGraphAddMemcpyNode
hipError_t hipGraphAddMemcpyNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipMemcpy3DParms *pCopyParams)
Creates a memcpy node and adds it to a graph.
hipDeviceAttributePciDeviceId
@ hipDeviceAttributePciDeviceId
PCI Device ID.
Definition: hip_runtime_api.h:430
hipFuncGetAttributes
hipError_t hipFuncGetAttributes(struct hipFuncAttributes *attr, const void *func)
Find out attributes for a given function.
hipDeviceAttributeAccessPolicyMaxWindowSize
@ hipDeviceAttributeAccessPolicyMaxWindowSize
Cuda only. The maximum size of the window policy in bytes.
Definition: hip_runtime_api.h:358
hipStreamCaptureStatusActive
@ hipStreamCaptureStatusActive
Stream is actively capturing.
Definition: hip_runtime_api.h:1170
hipGraphExecUpdateErrorNotSupported
@ hipGraphExecUpdateErrorNotSupported
The update failed because something about the node is not supported.
Definition: hip_runtime_api.h:1158
hipKernelNodeParams
Definition: hip_runtime_api.h:1126
hipErrorIllegalState
hipErrorIllegalState
Resource required is not in a valid state to perform operation.
Definition: hip_runtime_api.h:285
HIP_ARRAY3D_DESCRIPTOR
Definition: driver_types.h:74
hipFuncGetAttribute
hipError_t hipFuncGetAttribute(int *value, hipFunction_attribute attrib, hipFunction_t hfunc)
Find out a specific attribute for a given function.
hipMemGetAllocationPropertiesFromHandle
hipError_t hipMemGetAllocationPropertiesFromHandle(hipMemAllocationProp *prop, hipMemGenericAllocationHandle_t handle)
Retrieve the property structure of the given handle.
hipMemAdviseUnsetReadMostly
@ hipMemAdviseUnsetReadMostly
Undo the effect of hipMemAdviseSetReadMostly.
Definition: hip_runtime_api.h:713
hipDeviceProp_t::maxSharedMemoryPerMultiProcessor
size_t maxSharedMemoryPerMultiProcessor
Maximum Shared Memory Per Multiprocessor.
Definition: hip_runtime_api.h:117
hipDeviceProp_t::clockInstructionRate
int clockInstructionRate
Definition: hip_runtime_api.h:110
hipIpcOpenEventHandle
hipError_t hipIpcOpenEventHandle(hipEvent_t *event, hipIpcEventHandle_t handle)
Opens an interprocess event handles.
dim3
Definition: hip_runtime_api.h:955
hipStreamQuery
hipError_t hipStreamQuery(hipStream_t stream)
Return hipSuccess if all of the operations in the specified stream have completed,...
hipLaunchByPtr
hipError_t hipLaunchByPtr(const void *func)
Launch a kernel.
hipExtStreamGetCUMask
hipError_t hipExtStreamGetCUMask(hipStream_t stream, uint32_t cuMaskSize, uint32_t *cuMask)
Get CU mask associated with an asynchronous stream.
hipDeviceGetUuid
hipError_t hipDeviceGetUuid(hipUUID *uuid, hipDevice_t device)
Returns an UUID for the device.[BETA].
hipExtMallocWithFlags
hipError_t hipExtMallocWithFlags(void **ptr, size_t sizeBytes, unsigned int flags)
Allocate memory on the default accelerator.
hipStreamUpdateCaptureDependencies
hipError_t hipStreamUpdateCaptureDependencies(hipStream_t stream, hipGraphNode_t *dependencies, size_t numDependencies, unsigned int flags __dparm(0))
Update the set of dependencies in a capturing stream.
hipMemAllocationTypePinned
@ hipMemAllocationTypePinned
Definition: hip_runtime_api.h:865
hipMemcpy2DToArrayAsync
hipError_t hipMemcpy2DToArrayAsync(hipArray *dst, size_t wOffset, size_t hOffset, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copies data between host and device.
hipDeviceProp_t::hdpMemFlushCntl
unsigned int * hdpMemFlushCntl
Addres of HDP_MEM_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:129
hipMemPoolProps::handleTypes
hipMemAllocationHandleType handleTypes
Handle types that will be supported by allocations from the pool.
Definition: hip_runtime_api.h:884
hipDevicePrimaryCtxSetFlags
hipError_t hipDevicePrimaryCtxSetFlags(hipDevice_t dev, unsigned int flags)
Set flags for the primary context.
hipErrorStreamCaptureMerge
hipErrorStreamCaptureMerge
Definition: hip_runtime_api.h:316
hipPointerAttribute_t
Definition: hip_runtime_api.h:197
hipDeviceAttributeTotalConstantMemory
@ hipDeviceAttributeTotalConstantMemory
Constant memory size in bytes.
Definition: hip_runtime_api.h:446
hipFree
hipError_t hipFree(void *ptr)
Free memory allocated by the hcc hip memory allocation API. This API performs an implicit hipDeviceSy...
hipMemMapArrayAsync
hipError_t hipMemMapArrayAsync(hipArrayMapInfo *mapInfoList, unsigned int count, hipStream_t stream)
Maps or unmaps subregions of sparse HIP arrays and sparse HIP mipmapped arrays.
hipGraphMemsetNodeSetParams
hipError_t hipGraphMemsetNodeSetParams(hipGraphNode_t node, const hipMemsetParams *pNodeParams)
Sets a memset node's parameters.
hipDeviceArch_t::hasWarpShuffle
unsigned hasWarpShuffle
Warp shuffle operations. (__shfl_*).
Definition: hip_runtime_api.h:63
hipLaunchParams_t::func
void * func
Device function symbol.
Definition: hip_runtime_api.h:964
hipArrayDefault
#define hipArrayDefault
Definition: hip_runtime_api.h:684
hipGraphExecMemcpyNodeSetParamsToSymbol
hipError_t hipGraphExecMemcpyNodeSetParamsToSymbol(hipGraphExec_t hGraphExec, hipGraphNode_t node, const void *symbol, const void *src, size_t count, size_t offset, hipMemcpyKind kind)
Sets the parameters for a memcpy node in the given graphExec to copy to a symbol on the device.
hipDeviceAttributeGlobalL1CacheSupported
@ hipDeviceAttributeGlobalL1CacheSupported
Cuda only. Device supports caching globals in L1.
Definition: hip_runtime_api.h:374
hipDeviceAttributeTotalGlobalMem
@ hipDeviceAttributeTotalGlobalMem
Global memory available on devicice.
Definition: hip_runtime_api.h:447
hipDevicePrimaryCtxRetain
hipError_t hipDevicePrimaryCtxRetain(hipCtx_t *pctx, hipDevice_t dev)
Retain the primary context on the GPU.
hipGLDeviceListCurrentFrame
@ hipGLDeviceListCurrentFrame
frame
Definition: hip_runtime_api.h:1063
hipGraphEventRecordNodeSetEvent
hipError_t hipGraphEventRecordNodeSetEvent(hipGraphNode_t node, hipEvent_t event)
Sets an event record node's event.
hipCtxSynchronize
hipError_t hipCtxSynchronize(void)
Blocks until the default context has completed all preceding requested tasks.
hipGraphNodeTypeEmpty
@ hipGraphNodeTypeEmpty
Empty (no-op) node.
Definition: hip_runtime_api.h:1112
hipMemcpyHtoA
hipError_t hipMemcpyHtoA(hipArray *dstArray, size_t dstOffset, const void *srcHost, size_t count)
Copies data between host and device.
hipFreeHost
hipError_t hipFreeHost(void *ptr)
Free memory allocated by the hcc hip host memory allocation API. [Deprecated].
surface_types.h
Defines surface types for HIP runtime.
hipLaunchHostFunc
hipError_t hipLaunchHostFunc(hipStream_t stream, hipHostFn_t fn, void *userData)
Enqueues a host function call in a stream.
hipDeviceProp_t::memoryBusWidth
int memoryBusWidth
Global memory bus width in bits.
Definition: hip_runtime_api.h:98
hipStreamAddCallback
hipError_t hipStreamAddCallback(hipStream_t stream, hipStreamCallback_t callback, void *userData, unsigned int flags)
Adds a callback to be called on the host after all currently enqueued items in the stream have comple...
hipDeviceArch_t::hasWarpVote
unsigned hasWarpVote
Warp vote instructions (__any, __all).
Definition: hip_runtime_api.h:61
hipDeviceProp_t::name
char name[256]
Device name.
Definition: hip_runtime_api.h:88
hipDeviceAttributeMaxRegistersPerMultiprocessor
@ hipDeviceAttributeMaxRegistersPerMultiprocessor
32-bit registers available per block.
Definition: hip_runtime_api.h:435
hipMemAllocationProp::win32HandleMetaData
void * win32HandleMetaData
Metadata for Win32 handles.
Definition: hip_runtime_api.h:6185
hipLaunchParams_t::stream
hipStream_t stream
Stream identifier.
Definition: hip_runtime_api.h:969
hipErrorGraphExecUpdateFailure
hipErrorGraphExecUpdateFailure
Definition: hip_runtime_api.h:334
hipMemcpyDtoHAsync
hipError_t hipMemcpyDtoHAsync(void *dst, hipDeviceptr_t src, size_t sizeBytes, hipStream_t stream)
Copy data from Device to Host asynchronously.
hipDeviceArch_t::hasGlobalFloatAtomicExch
unsigned hasGlobalFloatAtomicExch
32-bit float atomic exch for global memory.
Definition: hip_runtime_api.h:48
hipArrayMapInfo::extentDepth
unsigned int extentDepth
Depth in elements.
Definition: hip_runtime_api.h:6251
hipMemRangeCoherencyMode
hipMemRangeCoherencyMode
Definition: hip_runtime_api.h:733
hipErrorStreamCaptureUnsupported
hipErrorStreamCaptureUnsupported
Definition: hip_runtime_api.h:312
hipMemOperationTypeMap
@ hipMemOperationTypeMap
Map operation.
Definition: hip_runtime_api.h:6218
hipDeviceProp_t::concurrentKernels
int concurrentKernels
Device can possibly execute multiple kernels concurrently.
Definition: hip_runtime_api.h:113
hipMemRangeAttributeReadMostly
@ hipMemRangeAttributeReadMostly
Definition: hip_runtime_api.h:748
hipUUID_t
Definition: hip_runtime_api.h:76
hipDeviceArch_t::hasWarpBallot
unsigned hasWarpBallot
Warp ballot instructions (__ballot).
Definition: hip_runtime_api.h:62
hipMemAllocationProp::type
hipMemAllocationType type
Memory allocation type.
Definition: hip_runtime_api.h:6183
hipMemRangeAttributeLastPrefetchLocation
@ hipMemRangeAttributeLastPrefetchLocation
prefetched
Definition: hip_runtime_api.h:753
hipDeviceProp_t::totalGlobalMem
size_t totalGlobalMem
Size of global memory region (in bytes).
Definition: hip_runtime_api.h:89
hipDeviceAttributeTextureAlignment
@ hipDeviceAttributeTextureAlignment
Alignment requirement for textures.
Definition: hip_runtime_api.h:444
hipDrvMemcpy3DAsync
hipError_t hipDrvMemcpy3DAsync(const HIP_MEMCPY3D *pCopy, hipStream_t stream)
Copies data between host and device asynchronously.
hipEventRecord
hipError_t hipEventRecord(hipEvent_t event, hipStream_t stream)
Record an event in the specified stream.
hipExternalMemoryHandleDesc_st
Definition: hip_runtime_api.h:980
hipLaunchParams_t::gridDim
dim3 gridDim
Grid dimentions.
Definition: hip_runtime_api.h:965
hipGraphNodeFindInClone
hipError_t hipGraphNodeFindInClone(hipGraphNode_t *pNode, hipGraphNode_t originalNode, hipGraph_t clonedGraph)
Finds a cloned version of a node.
hipMemAccessFlags
hipMemAccessFlags
Definition: hip_runtime_api.h:843
hipDeviceProp_t::directManagedMemAccessFromHost
int directManagedMemAccessFromHost
Host can directly access managed memory on the device without migration.
Definition: hip_runtime_api.h:148
hipMemcpy2D
hipError_t hipMemcpy2D(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, hipMemcpyKind kind)
Copies data between host and device.
hipMemAllocationProp
Definition: hip_runtime_api.h:6179
hipExtent
Definition: driver_types.h:358
hipArrayMapInfo
struct hipArrayMapInfo hipArrayMapInfo
hipPitchedPtr
Definition: driver_types.h:352
hipHostMallocDefault
#define hipHostMallocDefault
Definition: hip_runtime_api.h:612
hipDeviceProp_t::gcnArchName
char gcnArchName[256]
AMD GCN Arch Name.
Definition: hip_runtime_api.h:121
hipSharedMemBankSizeDefault
@ hipSharedMemBankSizeDefault
The compiler selects a device-specific value for the banking.
Definition: hip_runtime_api.h:945
hipDeviceAttributeMaxTextureCubemapLayered
@ hipDeviceAttributeMaxTextureCubemapLayered
Cuda only. Maximum dimensions of Cubemap layered texture.
Definition: hip_runtime_api.h:415
hipMemset2D
hipError_t hipMemset2D(void *dst, size_t pitch, int value, size_t width, size_t height)
Fills the memory area pointed to by dst with the constant value.
hipMemset3D
hipError_t hipMemset3D(hipPitchedPtr pitchedDevPtr, int value, hipExtent extent)
Fills synchronously the memory area pointed to by pitchedDevPtr with the constant value.
hipStreamCreateWithFlags
hipError_t hipStreamCreateWithFlags(hipStream_t *stream, unsigned int flags)
Create an asynchronous stream.
hipGraphKernelNodeSetAttribute
hipError_t hipGraphKernelNodeSetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr, const hipKernelNodeAttrValue *value)
Sets a node attribute.
hipDeviceAttributeMaxSurface3D
@ hipDeviceAttributeMaxSurface3D
Maximum dimension (width, height, depth) of 3D surface.
Definition: hip_runtime_api.h:396
hipDeviceGetAttribute
hipError_t hipDeviceGetAttribute(int *pi, hipDeviceAttribute_t attr, int deviceId)
Query for a specific device attribute.
hipMemcpyFromArray
hipError_t hipMemcpyFromArray(void *dst, hipArray_const_t srcArray, size_t wOffset, size_t hOffset, size_t count, hipMemcpyKind kind)
Copies data between host and device.
hipDeviceAttributeCanMapHostMemory
@ hipDeviceAttributeCanMapHostMemory
Whether host memory can be mapped into device address space.
Definition: hip_runtime_api.h:360
hipGraphExecUpdate
hipError_t hipGraphExecUpdate(hipGraphExec_t hGraphExec, hipGraph_t hGraph, hipGraphNode_t *hErrorNode_out, hipGraphExecUpdateResult *updateResult_out)
Check whether an executable graph can be updated with a graph and perform the update if * possible.
hipDeviceProp_t::maxThreadsDim
int maxThreadsDim[3]
Max number of threads in each dimension (XYZ) of a block.
Definition: hip_runtime_api.h:94
hipMemAllocationHandleType
hipMemAllocationHandleType
Definition: hip_runtime_api.h:873
hipMemAccessFlagsProtNone
@ hipMemAccessFlagsProtNone
Default, make the address range not accessible.
Definition: hip_runtime_api.h:844
hipMemcpyPeerAsync
hipError_t hipMemcpyPeerAsync(void *dst, int dstDeviceId, const void *src, int srcDevice, size_t sizeBytes, hipStream_t stream __dparm(0))
Copies memory from one device to memory on another device.
hipDrvMemcpy2DUnaligned
hipError_t hipDrvMemcpy2DUnaligned(const hip_Memcpy2D *pCopy)
hipDeviceAttributePciDomainID
@ hipDeviceAttributePciDomainID
PCI Domain ID.
Definition: hip_runtime_api.h:431
hipMemcpyHtoDAsync
hipError_t hipMemcpyHtoDAsync(hipDeviceptr_t dst, void *src, size_t sizeBytes, hipStream_t stream)
Copy data from Host to Device asynchronously.
hipDeviceProp_t::cooperativeMultiDeviceLaunch
int cooperativeMultiDeviceLaunch
HIP device supports cooperative launch on multiple devices.
Definition: hip_runtime_api.h:124
hipSignalExternalSemaphoresAsync
hipError_t hipSignalExternalSemaphoresAsync(const hipExternalSemaphore_t *extSemArray, const hipExternalSemaphoreSignalParams *paramsArray, unsigned int numExtSems, hipStream_t stream)
Signals a set of external semaphore objects.
hipMemcpyDtoH
hipError_t hipMemcpyDtoH(void *dst, hipDeviceptr_t src, size_t sizeBytes)
Copy data from Device to Host.
hipDeviceArch_t::has3dGrid
unsigned has3dGrid
Grid and group dims are 3D (rather than 2D).
Definition: hip_runtime_api.h:72
hipDeviceGetCacheConfig
hipError_t hipDeviceGetCacheConfig(hipFuncCache_t *cacheConfig)
Set Cache configuration for a specific function.
hipModuleGetGlobal
hipError_t hipModuleGetGlobal(hipDeviceptr_t *dptr, size_t *bytes, hipModule_t hmod, const char *name)
Returns a global pointer from a module. Returns in *dptr and *bytes the pointer and size of the globa...
hipGraphAddEventWaitNode
hipError_t hipGraphAddEventWaitNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, hipEvent_t event)
Creates an event wait node and adds it to a graph.
hipMemcpyPeer
hipError_t hipMemcpyPeer(void *dst, int dstDeviceId, const void *src, int srcDeviceId, size_t sizeBytes)
Copies memory from one device to memory on another device.
hipArraySparseSubresourceType
hipArraySparseSubresourceType
Definition: hip_runtime_api.h:6227
hipDeviceAttributeMaxTexture1DWidth
@ hipDeviceAttributeMaxTexture1DWidth
Maximum size of 1D texture.
Definition: hip_runtime_api.h:399
hipMemHandleTypePosixFileDescriptor
@ hipMemHandleTypePosixFileDescriptor
Allows a file descriptor for exporting. Permitted only on POSIX systems.
Definition: hip_runtime_api.h:875
hipDeviceAttributeCooperativeLaunch
@ hipDeviceAttributeCooperativeLaunch
Support cooperative launch.
Definition: hip_runtime_api.h:368
hipImportExternalSemaphore
hipError_t hipImportExternalSemaphore(hipExternalSemaphore_t *extSem_out, const hipExternalSemaphoreHandleDesc *semHandleDesc)
Imports an external semaphore.
hipModuleLoadDataEx
hipError_t hipModuleLoadDataEx(hipModule_t *module, const void *image, unsigned int numOptions, hipJitOption *options, void **optionValues)
builds module from code object which resides in host memory. Image is pointer to that location....
hipFreeMipmappedArray
hipError_t hipFreeMipmappedArray(hipMipmappedArray_t mipmappedArray)
Frees a mipmapped array on the device.
hipGraphNodeGetDependentNodes
hipError_t hipGraphNodeGetDependentNodes(hipGraphNode_t node, hipGraphNode_t *pDependentNodes, size_t *pNumDependentNodes)
Returns a node's dependent nodes.
hipDeviceAttributeMultiprocessorCount
@ hipDeviceAttributeMultiprocessorCount
Number of multiprocessors on the device.
Definition: hip_runtime_api.h:424
hipGraphEventRecordNodeGetEvent
hipError_t hipGraphEventRecordNodeGetEvent(hipGraphNode_t node, hipEvent_t *event_out)
Returns the event associated with an event record node.
hipGLDeviceListAll
@ hipGLDeviceListAll
All hip devices used by current OpenGL context.
Definition: hip_runtime_api.h:1062
hipIpcGetEventHandle
hipError_t hipIpcGetEventHandle(hipIpcEventHandle_t *handle, hipEvent_t event)
Gets an opaque interprocess handle for an event.
hipDeviceProp_t::pciDeviceID
int pciDeviceID
PCI Device ID.
Definition: hip_runtime_api.h:116
hipGetDeviceProperties
hipError_t hipGetDeviceProperties(hipDeviceProp_t *prop, int deviceId)
Returns device properties.
hipGraphAddEmptyNode
hipError_t hipGraphAddEmptyNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies)
Creates an empty node and adds it to a graph.
hipGraphAddHostNode
hipError_t hipGraphAddHostNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipHostNodeParams *pNodeParams)
Creates a host execution node and adds it to a graph.
hipDeviceAttributeArch
@ hipDeviceAttributeArch
Device architecture.
Definition: hip_runtime_api.h:457
hipMemcpy
hipError_t hipMemcpy(void *dst, const void *src, size_t sizeBytes, hipMemcpyKind kind)
Copy data from src to dst.
hipDeviceAttributeIsLargeBar
@ hipDeviceAttributeIsLargeBar
Whether it is LargeBar.
Definition: hip_runtime_api.h:471
hipDeviceProp_t::memoryClockRate
int memoryClockRate
Max global memory clock frequency in khz.
Definition: hip_runtime_api.h:97
hipEventCreateWithFlags
hipError_t hipEventCreateWithFlags(hipEvent_t *event, unsigned flags)
Create an event with the specified flags.
hipMemAdviseUnsetAccessedBy
@ hipMemAdviseUnsetAccessedBy
Definition: hip_runtime_api.h:719
hipErrorCooperativeLaunchTooLarge
hipErrorCooperativeLaunchTooLarge
Definition: hip_runtime_api.h:307
hipGraphExecMemcpyNodeSetParamsFromSymbol
hipError_t hipGraphExecMemcpyNodeSetParamsFromSymbol(hipGraphExec_t hGraphExec, hipGraphNode_t node, void *dst, const void *symbol, size_t count, size_t offset, hipMemcpyKind kind)
Sets the parameters for a memcpy node in the given graphExec to copy from a symbol on the.
hipBindTextureToMipmappedArray
hipError_t hipBindTextureToMipmappedArray(const textureReference *tex, hipMipmappedArray_const_t mipmappedArray, const hipChannelFormatDesc *desc)
Binds a mipmapped array to a texture.
hipDeviceProp_t::pageableMemoryAccess
int pageableMemoryAccess
Definition: hip_runtime_api.h:150
hipMemPoolReuseFollowEventDependencies
@ hipMemPoolReuseFollowEventDependencies
Definition: hip_runtime_api.h:774
hipGraphNodeGetType
hipError_t hipGraphNodeGetType(hipGraphNode_t node, hipGraphNodeType *pType)
Returns a node's type.
hipDeviceProp_t::warpSize
int warpSize
Warp size.
Definition: hip_runtime_api.h:92
hipDeviceTotalMem
hipError_t hipDeviceTotalMem(size_t *bytes, hipDevice_t device)
Returns the total amount of memory on the device.
hipDeviceAttributeReservedSharedMemPerBlock
@ hipDeviceAttributeReservedSharedMemPerBlock
Cuda11 only. Shared memory reserved by CUDA driver per block.
Definition: hip_runtime_api.h:436
hipFreeArray
hipError_t hipFreeArray(hipArray *array)
Frees an array on the device.
hipErrorAssert
hipErrorAssert
Produced when the kernel calls assert.
Definition: hip_runtime_api.h:300
hipGraphHostNodeSetParams
hipError_t hipGraphHostNodeSetParams(hipGraphNode_t node, const hipHostNodeParams *pNodeParams)
Sets a host node's parameters.
textureReference
Definition: texture_types.h:88
hipDeviceAttributeStreamPrioritiesSupported
@ hipDeviceAttributeStreamPrioritiesSupported
Cuda only. Whether to support stream priorities.
Definition: hip_runtime_api.h:441
hipErrorCapturedEvent
hipErrorCapturedEvent
Definition: hip_runtime_api.h:328
hipMemPoolAttr
hipMemPoolAttr
Definition: hip_runtime_api.h:765
hipMemPoolExportPointer
hipError_t hipMemPoolExportPointer(hipMemPoolPtrExportData *export_data, void *dev_ptr)
Export data to share a memory pool allocation between processes.
hipArrayMapInfo::memHandleType
hipMemHandleType memHandleType
Memory handle type.
Definition: hip_runtime_api.h:6260
hipDeviceProp_t::cooperativeMultiDeviceUnmatchedFunc
int cooperativeMultiDeviceUnmatchedFunc
Definition: hip_runtime_api.h:137
hipCtxGetSharedMemConfig
hipError_t hipCtxGetSharedMemConfig(hipSharedMemConfig *pConfig)
Get Shared memory bank configuration.
hipGetSymbolAddress
hipError_t hipGetSymbolAddress(void **devPtr, const void *symbol)
Gets device pointer associated with symbol on the device.
hipDeviceProp_t::cooperativeMultiDeviceUnmatchedGridDim
int cooperativeMultiDeviceUnmatchedGridDim
Definition: hip_runtime_api.h:139
hipDeviceCanAccessPeer
hipError_t hipDeviceCanAccessPeer(int *canAccessPeer, int deviceId, int peerDeviceId)
Determine if a device can access a peer's memory.
hipMemAdviseUnsetPreferredLocation
@ hipMemAdviseUnsetPreferredLocation
Clear the preferred location for the data.
Definition: hip_runtime_api.h:716
hipModuleGetFunction
hipError_t hipModuleGetFunction(hipFunction_t *function, hipModule_t module, const char *kname)
Function with kname will be extracted if present in module.
hipErrorStreamCaptureWrongThread
hipErrorStreamCaptureWrongThread
Definition: hip_runtime_api.h:330
hipMemPoolCreate
hipError_t hipMemPoolCreate(hipMemPool_t *mem_pool, const hipMemPoolProps *pool_props)
Creates a memory pool.
hipDeviceAttributeMultiGpuBoardGroupID
@ hipDeviceAttributeMultiGpuBoardGroupID
Cuda only. Unique ID of device group on the same multi-GPU board.
Definition: hip_runtime_api.h:423
hipDeviceArch_t::hasFloatAtomicAdd
unsigned hasFloatAtomicAdd
32-bit float atomic add in global and shared memory.
Definition: hip_runtime_api.h:51
hipStreamIsCapturing
hipError_t hipStreamIsCapturing(hipStream_t stream, hipStreamCaptureStatus *pCaptureStatus)
Get stream's capture state.
hipDeviceGetMemPool
hipError_t hipDeviceGetMemPool(hipMemPool_t *mem_pool, int device)
Gets the current memory pool for the specified device.
hipDeviceAttributeClockInstructionRate
@ hipDeviceAttributeClockInstructionRate
Frequency in khz of the timer used by the device-side "clock*".
Definition: hip_runtime_api.h:456
hipStreamGetCaptureInfo_v2
hipError_t hipStreamGetCaptureInfo_v2(hipStream_t stream, hipStreamCaptureStatus *captureStatus_out, unsigned long long *id_out __dparm(0), hipGraph_t *graph_out __dparm(0), const hipGraphNode_t **dependencies_out __dparm(0), size_t *numDependencies_out __dparm(0))
Get stream's capture state.
hipMemLocation
struct hipMemLocation hipMemLocation
hipMemRangeCoherencyModeIndeterminate
@ hipMemRangeCoherencyModeIndeterminate
Definition: hip_runtime_api.h:738
hipArraySparseSubresourceTypeMiptail
@ hipArraySparseSubresourceTypeMiptail
Miptail.
Definition: hip_runtime_api.h:6229
hipGraphExecMemsetNodeSetParams
hipError_t hipGraphExecMemsetNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t node, const hipMemsetParams *pNodeParams)
Sets the parameters for a memset node in the given graphExec.
hipGraphExecEventRecordNodeSetEvent
hipError_t hipGraphExecEventRecordNodeSetEvent(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, hipEvent_t event)
Sets the event for an event record node in the given graphExec.
hipCtxDisablePeerAccess
hipError_t hipCtxDisablePeerAccess(hipCtx_t peerCtx)
Disable direct access from current context's virtual address space to memory allocations physically l...
hipDeviceProp_t::cooperativeLaunch
int cooperativeLaunch
HIP device supports cooperative launch.
Definition: hip_runtime_api.h:123
hipMemAddressReserve
hipError_t hipMemAddressReserve(void **ptr, size_t size, size_t alignment, void *addr, unsigned long long flags)
Reserves an address range.
hipArrayMapInfo::offsetY
unsigned int offsetY
Y offset in elements.
Definition: hip_runtime_api.h:6247
hipDeviceArch_t::hasSharedFloatAtomicExch
unsigned hasSharedFloatAtomicExch
32-bit float atomic exch for shared memory.
Definition: hip_runtime_api.h:50
hipDeviceAttributeCooperativeMultiDeviceUnmatchedSharedMem
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedSharedMem
Definition: hip_runtime_api.h:469
HIP_RESOURCE_DESC_st
Definition: driver_types.h:282
hipTextureDesc
Definition: texture_types.h:109
hipResourceViewDesc
Definition: driver_types.h:314
hipDeviceProp_t::multiProcessorCount
int multiProcessorCount
Number of multi-processors (compute units).
Definition: hip_runtime_api.h:106
hipGraphDestroyNode
hipError_t hipGraphDestroyNode(hipGraphNode_t node)
Remove a node from the graph.
hipDeviceAttributeHostNativeAtomicSupported
@ hipDeviceAttributeHostNativeAtomicSupported
Cuda only. Link between the device and the host supports native atomic operations.
Definition: hip_runtime_api.h:375
hipMallocFromPoolAsync
hipError_t hipMallocFromPoolAsync(void **dev_ptr, size_t size, hipMemPool_t mem_pool, hipStream_t stream)
Allocates memory from a specified pool with stream ordered semantics.
dim3::z
uint32_t z
z
Definition: hip_runtime_api.h:958
hipGetTextureReference
hipError_t hipGetTextureReference(const textureReference **texref, const void *symbol)
Gets the texture reference related with the symbol.
hipGraphKernelNodeGetAttribute
hipError_t hipGraphKernelNodeGetAttribute(hipGraphNode_t hNode, hipKernelNodeAttrID attr, hipKernelNodeAttrValue *value)
Gets a node attribute.
hipArrayMapInfo::level
unsigned int level
For mipmapped arrays must be a valid mipmap level. For arrays must be zero.
Definition: hip_runtime_api.h:6244
hipCtxSetSharedMemConfig
hipError_t hipCtxSetSharedMemConfig(hipSharedMemConfig config)
Set Shared memory bank configuration.
hipDeviceProp_t::integrated
int integrated
APU vs dGPU.
Definition: hip_runtime_api.h:122
hipMemsetD8
hipError_t hipMemsetD8(hipDeviceptr_t dest, unsigned char value, size_t count)
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant byte value va...
hipMemset2DAsync
hipError_t hipMemset2DAsync(void *dst, size_t pitch, int value, size_t width, size_t height, hipStream_t stream __dparm(0))
Fills asynchronously the memory area pointed to by dst with the constant value.
hipHostNodeParams
Definition: hip_runtime_api.h:1122
hipDeviceProp_t::ECCEnabled
int ECCEnabled
Device has ECC support enabled.
Definition: hip_runtime_api.h:135
HIP_ARRAY_DESCRIPTOR
Definition: driver_types.h:68
hipArrayMapInfo::resourceType
hipResourceType resourceType
Resource type.
Definition: hip_runtime_api.h:6236
hipGraphMemcpyNodeSetParams1D
hipError_t hipGraphMemcpyNodeSetParams1D(hipGraphNode_t node, void *dst, const void *src, size_t count, hipMemcpyKind kind)
Sets a memcpy node's parameters to perform a 1-dimensional copy.
hipCtxGetDevice
hipError_t hipCtxGetDevice(hipDevice_t *device)
Get the handle of the device associated with current/default context.
hipDeviceAttributeCanUseStreamWaitValue
@ hipDeviceAttributeCanUseStreamWaitValue
Definition: hip_runtime_api.h:473
hipLaunchParams_t::blockDim
dim3 blockDim
Block dimentions.
Definition: hip_runtime_api.h:966
hipDeviceProp_t::totalConstMem
size_t totalConstMem
Size of shared memory region (in bytes).
Definition: hip_runtime_api.h:99
hipDeviceProp_t::maxTexture2D
int maxTexture2D[2]
Maximum dimensions (width, height) of 2D images, in image elements.
Definition: hip_runtime_api.h:127
hipMemAllocHost
hipError_t hipMemAllocHost(void **ptr, size_t size)
Allocate pinned host memory [Deprecated].
hipDeviceAttributeCanUseHostPointerForRegisteredMem
@ hipDeviceAttributeCanUseHostPointerForRegisteredMem
Definition: hip_runtime_api.h:361
hipMemAttachGlobal
#define hipMemAttachGlobal
Definition: hip_runtime_api.h:636
hipCreateTextureObject
hipError_t hipCreateTextureObject(hipTextureObject_t *pTexObject, const hipResourceDesc *pResDesc, const hipTextureDesc *pTexDesc, const struct hipResourceViewDesc *pResViewDesc)
Creates a texture object.
hipLaunchParams_t
Definition: hip_runtime_api.h:963
hipFuncCachePreferShared
@ hipFuncCachePreferShared
prefer larger shared memory and smaller L1 cache
Definition: hip_runtime_api.h:937
hipStreamWriteValue64
hipError_t hipStreamWriteValue64(hipStream_t stream, void *ptr, uint64_t value, unsigned int flags)
Enqueues a write command to the stream.[BETA].
hipMemRangeAttributePreferredLocation
@ hipMemRangeAttributePreferredLocation
The preferred location of the range.
Definition: hip_runtime_api.h:750
hipErrorHostMemoryAlreadyRegistered
hipErrorHostMemoryAlreadyRegistered
Produced when trying to lock a page-locked memory.
Definition: hip_runtime_api.h:301
hipDeviceAttributeMaxSurface1DLayered
@ hipDeviceAttributeMaxSurface1DLayered
Cuda only. Maximum dimensions of 1D layered surface.
Definition: hip_runtime_api.h:393
hipMemAdviseSetReadMostly
@ hipMemAdviseSetReadMostly
Definition: hip_runtime_api.h:711
hipFuncAttribute
hipFuncAttribute
Definition: hip_runtime_api.h:927
hipMemLocation::type
hipMemLocationType type
Specifies the location type, which describes the meaning of id.
Definition: hip_runtime_api.h:835
hipMemOperationType
hipMemOperationType
Definition: hip_runtime_api.h:6217
hipMemLocationType
hipMemLocationType
Definition: hip_runtime_api.h:825
hipGraphMemsetNodeGetParams
hipError_t hipGraphMemsetNodeGetParams(hipGraphNode_t node, hipMemsetParams *pNodeParams)
Gets a memset node's parameters.
hipMemPoolReuseAllowOpportunistic
@ hipMemPoolReuseAllowOpportunistic
Definition: hip_runtime_api.h:780
hipSharedMemBankSizeEightByte
@ hipSharedMemBankSizeEightByte
Definition: hip_runtime_api.h:948
hipDeviceAttribute_t
hipDeviceAttribute_t
Definition: hip_runtime_api.h:354
hipMemHandleType
hipMemHandleType
Definition: hip_runtime_api.h:6208
hipGraphChildGraphNodeGetGraph
hipError_t hipGraphChildGraphNodeGetGraph(hipGraphNode_t node, hipGraph_t *pGraph)
Gets a handle to the embedded graph of a child graph node.
hipFuncSetSharedMemConfig
hipError_t hipFuncSetSharedMemConfig(const void *func, hipSharedMemConfig config)
Set shared memory configuation for a specific function.
hipExtGetLinkTypeAndHopCount
hipError_t hipExtGetLinkTypeAndHopCount(int device1, int device2, uint32_t *linktype, uint32_t *hopcount)
Returns the link type and hop count between two devices.
hipMemGenericAllocationHandle_t
struct ihipMemGenericAllocationHandle * hipMemGenericAllocationHandle_t
Definition: hip_runtime_api.h:6191
hipMemPoolAttrUsedMemHigh
@ hipMemPoolAttrUsedMemHigh
Definition: hip_runtime_api.h:818
hipMemAdviseSetAccessedBy
@ hipMemAdviseSetAccessedBy
Definition: hip_runtime_api.h:717
hipGraphicsRegisterFlagsWriteDiscard
@ hipGraphicsRegisterFlagsWriteDiscard
HIP will only write and will not read from this registered resource.
Definition: hip_runtime_api.h:1077
hipResourceDesc
Definition: driver_types.h:258
hipErrorMemoryAllocation
hipErrorMemoryAllocation
Memory allocation error.
Definition: hip_runtime_api.h:237
hipErrorLaunchFailure
hipErrorLaunchFailure
An exception occurred on the device while executing a kernel.
Definition: hip_runtime_api.h:305
hipGraphicsRegisterFlagsSurfaceLoadStore
@ hipGraphicsRegisterFlagsSurfaceLoadStore
HIP will bind this resource to a surface.
Definition: hip_runtime_api.h:1079
hipDeviceSynchronize
hipError_t hipDeviceSynchronize(void)
Waits on all active streams on current device.
hipCtxGetCacheConfig
hipError_t hipCtxGetCacheConfig(hipFuncCache_t *cacheConfig)
Set Cache configuration for a specific function.
hipLaunchParams_t::sharedMem
size_t sharedMem
Shared memory.
Definition: hip_runtime_api.h:968
hipStreamAddCaptureDependencies
@ hipStreamAddCaptureDependencies
Add new nodes to the dependency set.
Definition: hip_runtime_api.h:1176
hipDeviceAttributeMaxBlocksPerMultiProcessor
@ hipDeviceAttributeMaxBlocksPerMultiProcessor
Cuda only. Max block size per multiprocessor.
Definition: hip_runtime_api.h:385
hipCtxDestroy
hipError_t hipCtxDestroy(hipCtx_t ctx)
Destroy a HIP context.
hipDeviceAttributeGcnArch
@ hipDeviceAttributeGcnArch
Device gcn architecture.
Definition: hip_runtime_api.h:459
hipModuleLaunchKernel
hipError_t hipModuleLaunchKernel(hipFunction_t f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, hipStream_t stream, void **kernelParams, void **extra)
launches kernel f with launch parameters and shared memory on stream with arguments passed to kernelp...
hipDeviceAttributeConcurrentKernels
@ hipDeviceAttributeConcurrentKernels
Device can possibly execute multiple kernels concurrently.
Definition: hip_runtime_api.h:366
hipGraphKernelNodeGetParams
hipError_t hipGraphKernelNodeGetParams(hipGraphNode_t node, hipKernelNodeParams *pNodeParams)
Gets kernel node's parameters.
hipDeviceAttributeMaxTexture2DLayered
@ hipDeviceAttributeMaxTexture2DLayered
Cuda only. Maximum dimensions of 2D layered texture.
Definition: hip_runtime_api.h:407
hipDeviceProp_t::cooperativeMultiDeviceUnmatchedSharedMem
int cooperativeMultiDeviceUnmatchedSharedMem
Definition: hip_runtime_api.h:143
hipMemAllocationProp::usage
unsigned short usage
Usage.
Definition: hip_runtime_api.h:6184
hipProfilerStart
hipError_t hipProfilerStart()
Start recording of profiling information When using this API, start the profiler with profiling disab...
hipDeviceGetSharedMemConfig
hipError_t hipDeviceGetSharedMemConfig(hipSharedMemConfig *pConfig)
Returns bank width of shared memory for current device.
hipErrorNotSupported
hipErrorNotSupported
Produced when the hip API is not supported/implemented.
Definition: hip_runtime_api.h:311
hipMemcpyAsync
hipError_t hipMemcpyAsync(void *dst, const void *src, size_t sizeBytes, hipMemcpyKind kind, hipStream_t stream __dparm(0))
Copy data from src to dst asynchronously.
hipErrorLaunchOutOfResources
hipErrorLaunchOutOfResources
Out of resources error.
Definition: hip_runtime_api.h:292
hipOccupancyMaxPotentialBlockSize
hipError_t hipOccupancyMaxPotentialBlockSize(int *gridSize, int *blockSize, const void *f, size_t dynSharedMemPerBlk, int blockSizeLimit)
determine the grid and block sizes to achieves maximum occupancy for a kernel
hipStreamDestroy
hipError_t hipStreamDestroy(hipStream_t stream)
Destroys the specified stream.
hipHostRegister
hipError_t hipHostRegister(void *hostPtr, size_t sizeBytes, unsigned int flags)
Register host memory so it can be accessed from the current device.
hipStreamSetCaptureDependencies
@ hipStreamSetCaptureDependencies
Replace the dependency set with the new nodes.
Definition: hip_runtime_api.h:1177
hipGraphMemcpyNodeSetParamsToSymbol
hipError_t hipGraphMemcpyNodeSetParamsToSymbol(hipGraphNode_t node, const void *symbol, const void *src, size_t count, size_t offset, hipMemcpyKind kind)
Sets a memcpy node's parameters to copy to a symbol on the device.
hipModuleLoad
hipError_t hipModuleLoad(hipModule_t *module, const char *fname)
Loads code object from file into a hipModule_t.
hipProfilerStop
hipError_t hipProfilerStop()
Stop recording of profiling information. When using this API, start the profiler with profiling disab...
hipGetTextureObjectResourceDesc
hipError_t hipGetTextureObjectResourceDesc(hipResourceDesc *pResDesc, hipTextureObject_t textureObject)
Gets resource descriptor for the texture object.
hipErrorInvalidResourceHandle
hipErrorInvalidResourceHandle
Resource handle (hipEvent_t or hipStream_t) invalid.
Definition: hip_runtime_api.h:284
hipEventCreate
hipError_t hipEventCreate(hipEvent_t *event)
hipDeviceAttributePageableMemoryAccess
@ hipDeviceAttributePageableMemoryAccess
Definition: hip_runtime_api.h:426
hipGraphExecEventWaitNodeSetEvent
hipError_t hipGraphExecEventWaitNodeSetEvent(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, hipEvent_t event)
Sets the event for an event record node in the given graphExec.
hipGraphAddMemsetNode
hipError_t hipGraphAddMemsetNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, const hipMemsetParams *pMemsetParams)
Creates a memset node and adds it to a graph.
HIP_RESOURCE_VIEW_DESC_st
Definition: driver_types.h:328
hipMemoryType
hipMemoryType
Definition: hip_runtime_api.h:159
hipDeviceAttributeSharedMemPerBlockOptin
@ hipDeviceAttributeSharedMemPerBlockOptin
Cuda only. Maximum shared memory per block usable by special opt in.
Definition: hip_runtime_api.h:438
hipGraphicsRegisterFlagsTextureGather
@ hipGraphicsRegisterFlagsTextureGather
HIP will perform texture gather operations on this registered resource.
Definition: hip_runtime_api.h:1080
hipDeviceSetMemPool
hipError_t hipDeviceSetMemPool(int device, hipMemPool_t mem_pool)
Sets the current memory pool of a device.
hipGLDeviceListNextFrame
@ hipGLDeviceListNextFrame
frame.
Definition: hip_runtime_api.h:1065
hipMemsetAsync
hipError_t hipMemsetAsync(void *dst, int value, size_t sizeBytes, hipStream_t stream __dparm(0))
Fills the first sizeBytes bytes of the memory area pointed to by dev with the constant byte value val...
hipMallocHost
hipError_t hipMallocHost(void **ptr, size_t size)
Allocate pinned host memory [Deprecated].
hipDrvPointerGetAttributes
hipError_t hipDrvPointerGetAttributes(unsigned int numAttributes, hipPointer_attribute *attributes, void **data, hipDeviceptr_t ptr)
Returns information about the specified pointer.[BETA].
hipDeviceAttributeMaxTexture2DWidth
@ hipDeviceAttributeMaxTexture2DWidth
Maximum dimension width of 2D texture.
Definition: hip_runtime_api.h:404
hipDeviceProp_t::pciDomainID
int pciDomainID
PCI Domain ID.
Definition: hip_runtime_api.h:114
hipDeviceAttributeCooperativeMultiDeviceUnmatchedFunc
@ hipDeviceAttributeCooperativeMultiDeviceUnmatchedFunc
Definition: hip_runtime_api.h:463
hipGraphExecUpdateErrorNodeTypeChanged
@ hipGraphExecUpdateErrorNodeTypeChanged
The update failed because a node type changed.
Definition: hip_runtime_api.h:1153
hipGraphMemcpyNodeSetParamsFromSymbol
hipError_t hipGraphMemcpyNodeSetParamsFromSymbol(hipGraphNode_t node, void *dst, const void *symbol, size_t count, size_t offset, hipMemcpyKind kind)
Sets a memcpy node's parameters to copy from a symbol on the device.
hipModuleLoadData
hipError_t hipModuleLoadData(hipModule_t *module, const void *image)
builds module from code object which resides in host memory. Image is pointer to that location.
hipFuncCachePreferL1
@ hipFuncCachePreferL1
prefer larger L1 cache and smaller shared memory
Definition: hip_runtime_api.h:938
hipMemAttachSingle
#define hipMemAttachSingle
Definition: hip_runtime_api.h:642
hipMemcpyParam2D
hipError_t hipMemcpyParam2D(const hip_Memcpy2D *pCopy)
Copies memory for 2D arrays.
hipDeviceAttributeMaxTexture2DLinear
@ hipDeviceAttributeMaxTexture2DLinear
Cuda only. Maximum dimensions (width, height, pitch) of 2D textures bound to pitched memory.
Definition: hip_runtime_api.h:408
hipArrayMapInfo
Definition: hip_runtime_api.h:6235
hipGraphAddEventRecordNode
hipError_t hipGraphAddEventRecordNode(hipGraphNode_t *pGraphNode, hipGraph_t graph, const hipGraphNode_t *pDependencies, size_t numDependencies, hipEvent_t event)
Creates an event record node and adds it to a graph.
hipMemPrefetchAsync
hipError_t hipMemPrefetchAsync(const void *dev_ptr, size_t count, int device, hipStream_t stream __dparm(0))
Prefetches memory to the specified destination device using HIP.
hipDeviceProp_t::managedMemory
int managedMemory
Device supports allocating managed memory on this system.
Definition: hip_runtime_api.h:147
hipDeviceAttributeHdpMemFlushCntl
@ hipDeviceAttributeHdpMemFlushCntl
Address of the HDP_MEM_COHERENCY_FLUSH_CNTL register.
Definition: hip_runtime_api.h:461
hipMemset
hipError_t hipMemset(void *dst, int value, size_t sizeBytes)
Fills the first sizeBytes bytes of the memory area pointed to by dest with the constant byte value va...
hipDeviceDisablePeerAccess
hipError_t hipDeviceDisablePeerAccess(int peerDeviceId)
Disable direct access from current device's virtual address space to memory allocations physically lo...
hipDeviceAttributeFineGrainSupport
@ hipDeviceAttributeFineGrainSupport
'1' if Device supports fine grain, '0' otherwise
Definition: hip_runtime_api.h:478
hipModuleOccupancyMaxActiveBlocksPerMultiprocessor
hipError_t hipModuleOccupancyMaxActiveBlocksPerMultiprocessor(int *numBlocks, hipFunction_t f, int blockSize, size_t dynSharedMemPerBlk)
Returns occupancy for a device function.
hipFuncSetAttribute
hipError_t hipFuncSetAttribute(const void *func, hipFuncAttribute attr, int value)
Set attribute for a specific function.
hipDeviceAttributeEccEnabled
@ hipDeviceAttributeEccEnabled
Whether ECC support is enabled.
Definition: hip_runtime_api.h:357
__hipPopCallConfiguration
hipError_t __hipPopCallConfiguration(dim3 *gridDim, dim3 *blockDim, size_t *sharedMem, hipStream_t *stream)
Pop configuration of a kernel launch.
hipDeviceProp_t
struct hipDeviceProp_t hipDeviceProp_t
hipDeviceAttributeMaxSharedMemoryPerMultiprocessor
@ hipDeviceAttributeMaxSharedMemoryPerMultiprocessor
Maximum Shared Memory PerMultiprocessor.
Definition: hip_runtime_api.h:458
hipDevicePrimaryCtxReset
hipError_t hipDevicePrimaryCtxReset(hipDevice_t dev)
Resets the primary context on the GPU.
hipChannelFormatDesc
Definition: driver_types.h:47
hipModuleUnload
hipError_t hipModuleUnload(hipModule_t module)
Frees the module.
hipMemRangeAttribute
hipMemRangeAttribute
Definition: hip_runtime_api.h:747
hipMemAdvise
hipError_t hipMemAdvise(const void *dev_ptr, size_t count, hipMemoryAdvise advice, int device)
Advise about the usage of a given memory range to HIP.
hipErrorPeerAccessAlreadyEnabled
hipErrorPeerAccessAlreadyEnabled
Peer access was already enabled from the current device.
Definition: hip_runtime_api.h:294
hipMemPoolProps
struct hipMemPoolProps hipMemPoolProps
hipMemHandleTypeWin32
@ hipMemHandleTypeWin32
Allows a Win32 NT handle for exporting. (HANDLE)
Definition: hip_runtime_api.h:876
hipPointerGetAttribute
hipError_t hipPointerGetAttribute(void *data, hipPointer_attribute attribute, hipDeviceptr_t ptr)
Returns information about the specified pointer.[BETA].
hipImportExternalMemory
hipError_t hipImportExternalMemory(hipExternalMemory_t *extMem_out, const hipExternalMemoryHandleDesc *memHandleDesc)
Imports an external memory object.
hipMemPoolProps
Definition: hip_runtime_api.h:882
hipMemPoolImportFromShareableHandle
hipError_t hipMemPoolImportFromShareableHandle(hipMemPool_t *mem_pool, void *shared_handle, hipMemAllocationHandleType handle_type, unsigned int flags)
Imports a memory pool from a shared handle.