Commit Graph

1459 Commits

Author SHA1 Message Date
Tao Sang 1a9a5f9bfc SWDEV-319818 - Release restriction on hipResourceViewDesc
Let more types support hipResourceViewDesc.
Add missing symbols to fix cuda build failing.

Change-Id: Ife694cc6491427093863252e257e820b0bb4fa0f


[ROCm/clr commit: a19b767e8a]
2022-05-10 15:57:31 -04:00
Joseph Greathouse 693fa73f53 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


[ROCm/clr commit: f68149eafd]
2022-04-29 07:19:58 -04:00
Sarbojit Sarkar e22f2e1714 SWDEV-323441 - support for default stream per thread
Change-Id: I0032da0357f5cffbf5e4ec4a02435d2a128a262b


[ROCm/clr commit: fc1f02bbed]
2022-04-18 23:19:55 -04:00
Christophe Paquot c6ae81b2f2 SWDEV-322620 - Virtual Memory Management APIs
Adding skeletons.
Implemented:
- hipMemGetAllocationGranularity with basic granularity
- hipMemGetAllocationPropertiesFromHandle
- hipMemCreate

Change-Id: I4bd2c75fae45d6a057efcad19d1d3c9715e9ae67


[ROCm/clr commit: cd447a5aaa]
2022-04-08 11:38:51 -04:00
Rakesh Roy 2a3f5a5321 SWDEV-326789 - Mark texture reference APIs as deprecated
Change-Id: I7a39cc1f036cd185ac3aab6c5f44730f16225f69


[ROCm/clr commit: 5f0f7ffe92]
2022-04-05 00:04:34 -04:00
German Andryeyev e7d2493402 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


[ROCm/clr commit: 539d264eb0]
2022-03-31 09:21:37 -04:00
Rakesh Roy 9372361b04 SWDEV-326789 - Add Missing HIP API Functions For Nvidia Platform
Change-Id: I828028c5d893ca1487f33017a6902c3b7f786762


[ROCm/clr commit: 1e77357c7f]
2022-03-25 01:34:57 -04:00
Satyanvesh Dittakavi 8524ca54bf SWDEV-317716 - Add hipDeviceGetUuid API
Change-Id: I320c7bc11ddd7617e0246f6faf19135ad7363e73


[ROCm/clr commit: 2fd90ec7a4]
2022-03-16 00:23:44 -04:00
Satyanvesh Dittakavi 0b4e48441e SWDEV-321656 - Address incorrect warp size with hiprtc
Change-Id: I97051d4e2cf27cb073c39663c62e43d5c19b1a12


[ROCm/clr commit: 3cc0a3fcaf]
2022-03-15 06:52:21 -04:00
Sarbojit Sarkar 81f8f73d00 SWDEV-323441 - New header for per-thread-default-stream
Change-Id: If74ea1464117abd2bfeadd543b94d26f9e934cbb


[ROCm/clr commit: 2b86f24fda]
2022-03-14 01:13:01 -04:00
haoyuan2 d85cb3b81d SWDEV-316128 - HIP surface API support
align with CUDA to support surf1DLayeredread/write,
surf2DLayeredread/write, surfCubemapread/write functions.

Change-Id: Ie3f6ca75e23accd97cb35cdc8362d88a1e5dbd54


[ROCm/clr commit: bed3995147]
2022-03-09 21:19:48 -05:00
Satyanvesh Dittakavi ba72e59817 SWDEV-315118 - Add version check for hipGraphInstantiateWithFlags on nvidia path
Change-Id: I672b4a5287348bddf6eb8955decc9cce786275a2


[ROCm/clr commit: 1524c9515e]
2022-03-09 02:10:08 -05:00
Shadi Dashmiz fc67e37d9a Revert "SWDEV-321698 - hipGraphNodeTypeMemcpy1D NVDIA build failure"
This reverts commit 42be9301d1.

Reason for revert: hip changes not in yet

Change-Id: I89e35d171cf01fb82d361279998efcc90e54ef33


[ROCm/clr commit: 1965dd5795]
2022-03-08 15:08:31 -05:00
sdashmiz 42be9301d1 SWDEV-321698 - hipGraphNodeTypeMemcpy1D NVDIA build failure
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I7aea11bf14adbeb7fea68eb862df74fcf6f13d75


[ROCm/clr commit: 74beb4583c]
2022-03-07 16:26:11 -05:00
Christophe Paquot 7052f1f5de SWDEV-323472 - Add hipThreadExchangeStreamCaptureMode
Also fix an issue in hip_prof_gen.py with GLenum.

Change-Id: Ib03fe9dae87b850c53b7d8aeb78b8dbdd01f794c


[ROCm/clr commit: 27f102b167]
2022-02-24 15:24:22 -05:00
Satyanvesh Dittakavi 17f228dcef EXSWCPHIPT-13 - Fix Segfault on Nvidia Platform
Change-Id: Ib85bb0b0e91b7703afc4858c4a5ada0115ad68f4


[ROCm/clr commit: f3f11f4c7d]
2022-02-19 12:53:46 +00:00
Satyanvesh Dittakavi 0d4a2c78c2 SWDEV-315981 - make nvidia hiprtc functions static
Change-Id: I945426c155ed9ce21c308745f384bbf8669d73c4


[ROCm/clr commit: aee5c48848]
2022-02-15 23:38:19 -05:00
Satyanvesh Dittakavi 97325ff303 SWDEV-314485 - Remove the older implementation of device-side malloc/free
Change-Id: I9ba3c6030a6dd7a5e064073d5c21223041282f61


[ROCm/clr commit: e5496b3159]
2022-02-15 07:49:56 -05:00
Satyanvesh Dittakavi 454021543d 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


[ROCm/clr commit: 087c0c25b2]
2022-02-15 02:03:49 -05:00
Satyanvesh Dittakavi ff620caa02 SWDEV-315017 - Add missing graph error strings
Change-Id: I11b5a623756c5bef88cbc93e49c124d0caf62bd1


[ROCm/clr commit: f371300933]
2022-02-15 01:41:44 -05:00
Satyanvesh Dittakavi f6ebe30931 SWDEV-317135 - Fix mapping of hipStreamUpdateCaptureDependencies on cuda path
Change-Id: Ibbcf8136fa527a20684a377311bc76182345d17b


[ROCm/clr commit: 9c31a738c2]
2022-02-14 09:10:46 -05:00
Sourabh Betigeri fc0eb2d8cd SWDEV-294375 - Declares fns() functions static
Change-Id: Ife0150b8d6b9531522e61a82df6b88af3282f437


[ROCm/clr commit: 7d8c63cc34]
2022-02-13 23:35:46 -05:00
haoyuan2 5a49e6a8d9 SWDEV-316128 - HIP surface API support
Change-Id: I5b98f86168e64b36588f5d7efb82191d895e27d7


[ROCm/clr commit: d7beddbfee]
2022-02-11 11:07:04 -05:00
Satyanvesh Dittakavi 556b1bbc69 SWDEV-314661 - Add hipGraphInstantiateWithFlags API mapping in nvidia path
Change-Id: Ibbf54ef18978448e92571f0535124844154726b6


[ROCm/clr commit: 0759f4ff81]
2022-02-09 00:02:55 -05:00
Sourabh Betigeri 40e2603bd0 SWDEV-294375 - Adding coalesced_groups to ROCm CG
Change-Id: I4098e1970ae2c388171fa73deb5bc023ed1b7a68


[ROCm/clr commit: 523e5a007c]
2022-02-07 11:29:46 -05:00
Satyanvesh Dittakavi 6bbcf08fc8 SWDEV-292714 - Added support for hipPointerGetAttribute and
hipDrvPointerGetAttributes

Change-Id: I44a0b5c5d9eb5a9a63406b11e8de83e5cb245a59


[ROCm/clr commit: 760f275861]
2022-02-02 05:33:07 -05:00
pghafari 2ee642823d SWDEV-245531 - GLInterop adding register image
Change-Id: I075bec49b7ad5f78336586b9d55e259717c4c000


[ROCm/clr commit: 44e0c246f8]
2022-01-23 14:59:18 -05:00
Payam 3ba48819a1 SWDEV-245531 - GLInterop adding register image
Change-Id: Ib16b647e2a1b8f3c578a9689d3987121c984250b


[ROCm/clr commit: 5f9d779324]
2022-01-14 15:57:24 -05:00
Nick Curtis 925805d186 Fix missing system-scope for CAS in atomic[Min|Max]_system
Change-Id: Ieb0ca79eaeba3a0ae56739246e08135a25a8d6dd


[ROCm/clr commit: c8103470d5]
2022-01-12 22:53:11 -05:00
haoyuan2 3bdc78b813 SWDEV-315924 - align with CUDA to define vector3 data type
Change-Id: I7654fb757b4c387a762f384ccdd3f2c8555d149f


[ROCm/clr commit: 0f94653447]
2022-01-06 17:35:56 -05:00
Tao Sang 8929cc4544 SWDEV-315590 - Fix texture vector issue
Apply mapFrom() to related texture device functions.

Change-Id: Ifed918c87373b784780b2180320ccb746845daff


[ROCm/clr commit: 78de8cd672]
2022-01-04 19:26:14 -05:00
Tao Sang 77bb6fd205 SWDEV-315590 - Fix texture fetch issue
Add mapFrom() to map "float __attribute__((ext_vector_type(4)))"
of output of low-level device function to right vector.

Change-Id: Ifed915c87273b784780b2180320ccb746845dafb


[ROCm/clr commit: 7de480760b]
2022-01-04 13:38:57 -05:00
haoyuan2 abbb7b9bc5 SWDEV-316052 - fix HIP_Directed tests build error
Change-Id: I782c68859f77934f2cf672ee53378e51b1cb1ddd


[ROCm/clr commit: 8a8581edf5]
2021-12-21 03:21:53 -05:00
haoyuan2 96a8e4e234 SWDEV-303956 - add make_int2/3/4 and make_float2/3/4 function support
Change-Id: I0260d1a9d2ac66e84dc31a80b0995616ef78b0fe


[ROCm/clr commit: a8b30291c3]
2021-12-15 14:57:36 -08:00
haoyuan2 7301a84351 SWDEV-303956 - align with CUDA to define float4 data type
Change-Id: I9ad1315e5899a8c0cf1812302b27010d88015f88


[ROCm/clr commit: 937415141c]
2021-12-14 15:22:43 -05:00
Satyanvesh Dittakavi a8fde39f74 SWDEV-311744 - Update floating point max/min atomic implementation
Clang builtins doesnt yet support max/min atomics with float/double
parameters, Hence modify atomicMax/Min to use compare and swap
implementation

Change-Id: Ia351f9b136129fe25f0eddcbbb17549553247182


[ROCm/clr commit: f3c5f12d26]
2021-12-07 13:29:44 -05:00
Tao Sang 68c75c9fb7 SWDEV-303204 - Disable texture/image Apis on some devices
If the target device doesn't support image,
compiler will send out unavailable error if device texture apis
are called; and host texture apis will return hipErrorNotSupported.
Remove useless include/hip/amd_detail/texture_functions.h.
Add hipDeviceAttributeImageSupport attribute to check image
support in runtime.
Add __HIP_NO_IMAGE_SUPPORT(=1) macro in device code to indicate
texture apis not supported.
Change-Id: Ia891493e681a61980a2444859a90e046a9ebea39


[ROCm/clr commit: 5acc8b5102]
2021-12-04 08:14:08 -05:00
haoyuan2 6c68d56c17 SWDEV-309292 - add hipPos definition in CUDA path
Change-Id: Ia81d5db77d7403cafb583fda8083d0f4dbe33835


[ROCm/clr commit: 69117705c8]
2021-12-04 04:40:34 -05:00
cjatin 2982b73c91 SWDEV-307407 - Add hiprtc's type traits function to match implementation of libcxx
Change-Id: I0a10eca329f817bbe31bdc47869b2de104d12d38


[ROCm/clr commit: 5b08779b25]
2021-12-02 23:32:23 -05:00
anusha GodavarthySurya 7cac13e36e SWDEV-305766 - Added new debug APIs to get build information
Change-Id: Ibbf0c010cd8f7e6e659f2c4ba932cc8436574431


[ROCm/clr commit: e90cb3b07b]
2021-12-02 12:20:51 -05:00
anusha GodavarthySurya 1d922d6d57 SWDEV-240808 - Added nvidia handling for few graph APIs
Change-Id: I8edee87ea75d80152418f76cc8a521b2ba58f139


[ROCm/clr commit: a6bf18791e]
2021-11-22 07:17:34 -08:00
Tao Sang f970a1be0f SWDEV-306947 Enable hipAddressModeBorder
Enable hipAddressModeBorder.
Fix default of height of hipMallocArray().
Some code improvement.

Change-Id: I57045118e7adf915074c547cbe76349a4cfd72d8


[ROCm/clr commit: 17cc99c05d]
2021-10-27 10:05:53 -04:00
anusha GodavarthySurya 78f89618cb 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


[ROCm/clr commit: 1c51d82dd5]
2021-10-05 07:44:54 -07:00
anusha GodavarthySurya ea786b1810 SWDEV-240806 - Added few more Graph APIs
Change-Id: I028a1fdf30232b0c47443685e03d7ca410d2a0d0


[ROCm/clr commit: 1111468b49]
2021-10-05 07:37:11 -04:00
Jatin Chaudhary 257bb9d2fc SWDEV-304552 - Add default to return the last error value
Change-Id: Ia399033e30aaa454a454067f5afc6f7d1e5ff8dd


[ROCm/clr commit: 4cd4d2d280]
2021-10-04 07:23:10 -04:00
Sarbojit Sarkar 2e1449e9af SWDEV-304076 - Fix for Cuda build error
Change-Id: Ibca63a08b8d6d1235b51a06c0bc024cd284cee97


[ROCm/clr commit: 70e1fb6a5b]
2021-09-27 23:55:52 -04:00
Sarbojit Sarkar b97595d514 SWDEV-298667 - fix stream operation for Cuda
Change-Id: Ida91712e678e324b54293ba48dfca442be390783


[ROCm/clr commit: 7aaad05910]
2021-09-21 15:07:15 -04:00
Satyanvesh Dittakavi e7a40bf6f6 SWDEV-302147 - fix __hip_ds_permutef device function to return float
Change-Id: Ie452e90a7f7410401df4a66de468ad850403953c


[ROCm/clr commit: 673c2deed1]
2021-09-14 02:15:53 -04:00
Satyanvesh Dittakavi 5bfa893ac8 SWDEV-301330 - Remove the hard coded driver version on HIP CUDA platform
Change-Id: I0eb10781acc7524174c7ae6fc552c824b7c94b0a


[ROCm/clr commit: b25e6d3716]
2021-09-02 09:03:04 +00:00
Jatin Chaudhary 7b095ace14 SWDEV-293749 - Add cast before calling the builtin
Change-Id: I6224a3693f91a5b4e040bd76918ab04a56a6454b


[ROCm/clr commit: feed2de479]
2021-08-24 10:35:52 -04:00