Commit Graph

53 Commits

Author SHA1 Message Date
Sarbojit Sarkar 5bd8f8dbe6 SWDEV-341174 - fixed warning on cuda
Change-Id: I5d017bcc154a2985e23893c0d933438bf0fc1958
2022-06-27 04:49:53 -04:00
Maneesh Gupta 2bd0cb523e SWDEV-340918 - make hip_runtime.h work with g++
Change-Id: Ief3e6dc075837dfccae3defad7da696130ed05bd
2022-06-20 23:32:58 -04:00
jaypatel 8d464a2e83 SWDEV-322688 - Added hip math constants header.
Change-Id: I9363f82159a53c6822e943c4950fc7f6c350b326
2022-06-16 23:56:45 -04:00
Satyanvesh Dittakavi f7d0850eb8 SWDEV-336532 - Convert Managed Memory in hipPointerGetAttributes on Nvidia platform
Change-Id: I3bc6180040b6ad48f06ffdc7d01ca6fd9fe32c0e
2022-06-16 00:43:15 -04:00
Jaydeep Patel ab8583b4d5 SWDEV-338376 - Added hipMemGetAllocationGranularity, hipMemCreate and hipMemRelease for CUDA
Change-Id: If8c6a00958bb39752eb202c30a7960d13de225ae
2022-06-15 23:59:56 -04:00
sdashmiz e8194dca76 SWDEV-325711 - add Graph memory APIs skeleton
- hipDeviceGet/SetGraphMemAttr

- hipDeviceGraphMemTrim

- there is no memory pool for graphs currently

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I11db76ea7ea1c7732175fc93264448052357e8dc
2022-06-15 14:47:16 -04:00
sdashmiz 13c875eaf0 SWDEV-321698 - remove Memcpy1D type
- Memcpy1D node type is not complying with cuda

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: If8113f5e699de0c62d98effc4580a2e0fee9a950
2022-06-13 08:31:02 -04:00
sdashmiz efd2d55e9d SWDEV-318833 - Get and Set attribute for kernel nodes
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ie51aa4b56661cbb8c5b4eb1dbaad327377084ffb
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
2022-06-09 09:47:05 -04:00
Tao Sang a19b767e8a SWDEV-319818 - Release restriction on hipResourceViewDesc
Let more types support hipResourceViewDesc.
Add missing symbols to fix cuda build failing.

Change-Id: Ife694cc6491427093863252e257e820b0bb4fa0f
2022-05-10 15:57:31 -04:00
Joseph Greathouse f68149eafd SWDEV-332811 - Clean up and extend HIP unsafe atomic add
Update HIP's unsafeAtomicAdd to:
 - Compile properly even when not compiling for gfx90a
 - Fall back to safe atomic add on non-gfx90a architectures
 - use flat atomic add for FP64 on gfx90a, instead of dynamically
   checking memory spaces.

In addition, when the compiler is passed -munsafe-fp-atomics, it
will define __AMDGCN_UNSAFE_FP_ATOMICS__. When this happens, the
compiler is requesting that the HIP headers force all HIP
atomicAdd() calls on floats or doubles to use their unsafe versions.

This patch thus causes unsafeAtomicAdd() calls when that define
is seen. This call to unsafeAtomicAdd() is also done for atomicSub(),
since that calls atomicAdd underneath. This is not done for
system-scope atomicAdd because, on gfx90a, system-scope atomic FP
add instructions would need to target fine-grained memory, which is
always unsafe.

This patch also creates safeAtomicAdd() functions for float and double.
These functions will create a standalone safe atomic, even when the
application is compiled with -munsafe-fp-atomics.

Finally, this patch adds wrappers in the Nvidia path of HIP so that
these HIP functions call through to atomicAdd there as well.

Change-Id: I8af0621d3d28ea30c9278bfeea7393d03bbdac6d
2022-04-29 07:19:58 -04:00
Rakesh Roy 5f0f7ffe92 SWDEV-326789 - Mark texture reference APIs as deprecated
Change-Id: I7a39cc1f036cd185ac3aab6c5f44730f16225f69
2022-04-05 00:04:34 -04:00
German Andryeyev 539d264eb0 SWDEV-311271 - Initial mempool implementation
HIP_MEM_POOL_SUPPORT controls memory pool support in runtime.
Currently it's disabled by default. The initial change doesn't
include: IPC, MGPU, virtual memory alloc, suballoc, defragmentation,
internal dependencies.

Change-Id: Ibed8528ebec698b045ebb247e49c0ecd6e587ed7
2022-03-31 09:21:37 -04:00
Rakesh Roy 1e77357c7f SWDEV-326789 - Add Missing HIP API Functions For Nvidia Platform
Change-Id: I828028c5d893ca1487f33017a6902c3b7f786762
2022-03-25 01:34:57 -04:00
Satyanvesh Dittakavi 2fd90ec7a4 SWDEV-317716 - Add hipDeviceGetUuid API
Change-Id: I320c7bc11ddd7617e0246f6faf19135ad7363e73
2022-03-16 00:23:44 -04:00
Satyanvesh Dittakavi 1524c9515e SWDEV-315118 - Add version check for hipGraphInstantiateWithFlags on nvidia path
Change-Id: I672b4a5287348bddf6eb8955decc9cce786275a2
2022-03-09 02:10:08 -05:00
Shadi Dashmiz 1965dd5795 Revert "SWDEV-321698 - hipGraphNodeTypeMemcpy1D NVDIA build failure"
This reverts commit 74beb4583c.

Reason for revert: hip changes not in yet

Change-Id: I89e35d171cf01fb82d361279998efcc90e54ef33
2022-03-08 15:08:31 -05:00
sdashmiz 74beb4583c SWDEV-321698 - hipGraphNodeTypeMemcpy1D NVDIA build failure
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I7aea11bf14adbeb7fea68eb862df74fcf6f13d75
2022-03-07 16:26:11 -05:00
Satyanvesh Dittakavi f3f11f4c7d EXSWCPHIPT-13 - Fix Segfault on Nvidia Platform
Change-Id: Ib85bb0b0e91b7703afc4858c4a5ada0115ad68f4
2022-02-19 12:53:46 +00:00
Satyanvesh Dittakavi aee5c48848 SWDEV-315981 - make nvidia hiprtc functions static
Change-Id: I945426c155ed9ce21c308745f384bbf8669d73c4
2022-02-15 23:38:19 -05:00
Satyanvesh Dittakavi 087c0c25b2 SWDEV-315118 - Add version checks for few graph APIs on Nvidia path
HIP apps running on CUDA 11.0 are failing due to some graph APIs/enums
added only in CUDA 11.1 or CUDA 11.3

Change-Id: I0d32b412cb76c42c7b3a9c612d750990f9e89908
2022-02-15 02:03:49 -05:00
Satyanvesh Dittakavi f371300933 SWDEV-315017 - Add missing graph error strings
Change-Id: I11b5a623756c5bef88cbc93e49c124d0caf62bd1
2022-02-15 01:41:44 -05:00
Satyanvesh Dittakavi 9c31a738c2 SWDEV-317135 - Fix mapping of hipStreamUpdateCaptureDependencies on cuda path
Change-Id: Ibbcf8136fa527a20684a377311bc76182345d17b
2022-02-14 09:10:46 -05:00
Satyanvesh Dittakavi 0759f4ff81 SWDEV-314661 - Add hipGraphInstantiateWithFlags API mapping in nvidia path
Change-Id: Ibbf54ef18978448e92571f0535124844154726b6
2022-02-09 00:02:55 -05:00
Satyanvesh Dittakavi 760f275861 SWDEV-292714 - Added support for hipPointerGetAttribute and
hipDrvPointerGetAttributes

Change-Id: I44a0b5c5d9eb5a9a63406b11e8de83e5cb245a59
2022-02-02 05:33:07 -05:00
haoyuan2 69117705c8 SWDEV-309292 - add hipPos definition in CUDA path
Change-Id: Ia81d5db77d7403cafb583fda8083d0f4dbe33835
2021-12-04 04:40:34 -05:00
anusha GodavarthySurya a6bf18791e SWDEV-240808 - Added nvidia handling for few graph APIs
Change-Id: I8edee87ea75d80152418f76cc8a521b2ba58f139
2021-11-22 07:17:34 -08:00
Tao Sang 17cc99c05d SWDEV-306947 Enable hipAddressModeBorder
Enable hipAddressModeBorder.
Fix default of height of hipMallocArray().
Some code improvement.

Change-Id: I57045118e7adf915074c547cbe76349a4cfd72d8
2021-10-27 10:05:53 -04:00
anusha GodavarthySurya 1c51d82dd5 SWDEV-240806 - Added few Graph API Implementation
hipGraph APIs clone, childGraph, RemoveDependencies, GetEdges,GetDependencies, GetDependentNodes, GetType and DestroyNode
hipStream APIs GetCaptureInfo, GetCaptureInfo_v2, UpdateCaptureDependencies.

Change-Id: Ib0f4cb8ea335698eecdd6d744ffab1e954153673
2021-10-05 07:44:54 -07:00
Jatin Chaudhary 4cd4d2d280 SWDEV-304552 - Add default to return the last error value
Change-Id: Ia399033e30aaa454a454067f5afc6f7d1e5ff8dd
2021-10-04 07:23:10 -04:00
Sarbojit Sarkar 70e1fb6a5b SWDEV-304076 - Fix for Cuda build error
Change-Id: Ibca63a08b8d6d1235b51a06c0bc024cd284cee97
2021-09-27 23:55:52 -04:00
Sarbojit Sarkar 7aaad05910 SWDEV-298667 - fix stream operation for Cuda
Change-Id: Ida91712e678e324b54293ba48dfca442be390783
2021-09-21 15:07:15 -04:00
Satyanvesh Dittakavi b25e6d3716 SWDEV-301330 - Remove the hard coded driver version on HIP CUDA platform
Change-Id: I0eb10781acc7524174c7ae6fc552c824b7c94b0a
2021-09-02 09:03:04 +00:00
Anusha GodavarthySurya a71f54d9e9 SWDEV-240806 - Added API hipGraphAddMemcpyNode1D, hipGraphAddEmptyNode, hipGraphExecKernelNodeSetParams
Change-Id: I0d7ec8c0ea1abc3fc0f1e10fa7865f355d9cf2ad
2021-07-28 00:09:16 -04:00
Sarbojit Sarkar c3ca1faee7 SWDEV-292547 - hipStreamPerThread support
Change-Id: Id621ce073b0fee9eac03c59ffb78b197fda4ddb5
2021-07-26 20:51:51 -04:00
Tao Sang 203c4b9b35 SWDEV-294594 - Fix hipPointerGetAttributes test on NV
Replace return value of hipPointerGetAttributes() on NV from
hipErrorUnknown to hipErrorInvalidValue if memory has been freed.

Change-Id: I3fe6dbc35a7a14aa9109df297b7885df83d28149
2021-07-26 11:30:22 -04:00
Tao Sang e0ae326f4a SWDEV-294588 - Enable NV printf DTests
Add hipLimitPrintfFifoSize.
Add hipDeviceSetLimit(hipLimit_t limit, size_t value) for NV.

Change-Id: Ife884e0c3081b317bdadc8bec7814d1d7c60153a
2021-07-15 11:02:13 -04:00
Anusha GodavarthySurya e5cbfa8ca9 SWDEV-240807 - Added Implementation for few more graph APIs
Change-Id: I76336a22233a208a3f54ff9e90f0c5bf4a1bddb4
2021-07-14 20:56:36 -07:00
agunashe d9d9e81acb SWDEV-293742 - Update copyrights end year for hipamd
Change-Id: I08f620f84563a9214b59f1b943ed091b67229eab
2021-07-09 12:08:39 -04:00
Anusha GodavarthySurya 52bc5d7d1f SWDEV-240806 - hipGraph support for nvidia path
Change-Id: Idb51b3ed7ca65474afac0dc714c9097294d46bd2
2021-07-07 06:51:21 -04:00
Jatin 19a30de0a6 SWDEV-245414 - fix nvcc CI breakage
Change-Id: I34ff533f34cfc2f60abefc0d8f6c6d8266d30f61
2021-06-26 13:31:10 +05:30
Sarbojit Sarkar 7e3c17c023 SWDEV-284435 - StreamOps mapping with cuda drv API
Change-Id: I6ed9196cfe59d9004338206f6dd8d6fb367b3ffa
2021-06-25 12:20:40 -04:00
Rahul Garg 19c84bc604 ROCMOPS-1956 - Push restructured code to hipamd
hipamd will have AMD's ROCCLR based HIP backend implementation

Change-Id: Id7de9634519b4ce46fca71a1b61f3d5b1e3fc459
2021-06-07 21:42:44 +00:00
Rahul Garg 260a1fed06 SWDEV-288707 - Merge HIP refactored code to staging
These changes move-
- rocclr based implementation inside src/hipamd/src
- platform specific (both nvidia and amd) headers inside
src/hipamd/include/hip

Change-Id: Ia29791a727244952591fe1d813dcef0303b73a9e
2021-06-07 00:07:24 +00:00
Satyanvesh Dittakavi cc39ceab25 SWDEV-283388 - Fix hipMemRangeGetAttributes on Nvidia Platform
Change-Id: I5daeacd9dd5c6ce7f914d6e6e45dd41fb2a675a5
hipMemRangeGetAttributes was returning hipErrorInvalidValue due to improper
mapping of the arguments to cudaMemRangeGetAttributes.
2021-04-29 06:06:03 -04:00
Satyanvesh Dittakavi 120436423c SWDEV-281789 - Add missing HMM attributes on CUDA path
Change-Id: I11167eea006301e01a1f91708bf6d0ac832d8b7f
2021-04-26 13:54:01 -04:00
Anusha GodavarthySurya c23586440b SWDEV-282361 - HIP support for NVRTC
Change-Id: I82869af8194b595f9a2fb64ad034630786189335
2021-04-20 09:28:58 -07:00
Tao Sang 20fd6b8a66 SWDEV-279657 - Fix hipMallocManaged-N256M failure
Add concurrentManagedAccess detection in hipMallocManaged test.
Skip test when device doesn't support concurrentManagedAccess.

Change-Id: Ie54046feef3baba857a7068972ec1fc1a60c2dfd
2021-04-20 09:07:31 -04:00
Satyanvesh Dittakavi 37d4677aba SWDEV-274404 - Add hipDrvMemcpy3D* and hipMemcpy2DFromArray* APIs on HIP CUDA
Change-Id: I4aba2bff60a7bae6b01b6e471968227b0df8e192
2021-03-08 13:14:25 -05:00
Satyanvesh Dittakavi c2a767a66e SWDEV-271491 - Fix flags for hipSetDeviceFlags on HIP-CUDA path
Change-Id: I29446d5cc5a26a4b83fa45175ccdf1d8f3a9ea40
2021-02-25 12:06:33 -05:00
Maneesh Gupta 42ab466904 SWDEV-271416 - Keep HIP_DYNAMIC_SHARED macro for compat with existing HIP apps
Change-Id: I536e0c65d6e8696cbc369082350834abd710abca
2021-02-16 00:09:48 -05:00