Commit Graph

1489 Commits

Author SHA1 Message Date
Laurent Morichetti 8ac20e5e38 SWDEV-351980 - Fix hip_prof_str.h generation
Fixed an error in the CMakeLists.txt USE_PERF_API option declaration
that was making it always disabled. Fixing this exposed an issue with
the hip_prof_gen.py script's handling of function variants (for example,
_spt functions) and new HIP_INIT_API_* macros.

Also switched the python interpreter to python3 as python2 may not be
available by default on the build system.

Change-Id: I971fc9edcc746ca63a2bdf4f540e755f9a80fe69
2022-08-18 23:15:27 -07:00
sdashmiz 2c010dec17 SWDEV-325711: Add userobject functions for graph
- add user obj APIs for creating release and retain of user onbjects

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I0bf2999c77e44269565b27c31c7c1461f8a160a2
2022-08-17 14:31:43 -04:00
Satyanvesh Dittakavi d12f205fd1 SWDEV-341992 - Add hipRefTex data types mapping on nvidia path
Change-Id: Icec2ec110f2647bfb4c571ff16dd3852cfc9fe4a
2022-08-10 02:45:25 -04:00
Jaydeep Patel 638f9a7c0e SWDEV-348565 - Support for += operator.
Change-Id: I29045733de3906849e68b89c22e01badc9bd2b24
2022-08-05 02:59:39 -04:00
Sarbojit Sarkar e1f1e38d79 SWDEV-1 - cleanup
Change-Id: Ib50424c87cfc76317eb0c114b5dd3553d8ebd9eb
2022-08-01 00:05:58 -04:00
Tao Sang 9f9fd859db SWDEV-286739 - Support hipDeviceAttributeWallClockRate
Part 3: Add missing declaration of wall_clock64() to fix
compiling issue in device code.
Add querying hipDeviceAttributeWallClockRate.

Change-Id: Ie54771c2f58eeaacdc0248bc116ef193f99eb9b9
2022-07-28 13:02:42 -04:00
Jaydeep Patel fa786c606a SWDEV-338376 - CUDA VMM API mappings
Change-Id: I47595dbf57fcce352d23842dbbc2b98b4ec97fb5
2022-07-27 02:35:13 -04:00
sdashmiz fefb9ae466 SWDEV-347345 - add missing func for nvdia
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ie2a70778d01948083d724a9d20e1f17541178ec5
2022-07-24 21:38:14 -04:00
haoyuan2 b96ff76989 SWDEV-342896 - fix incorrect format setting
Change-Id: I1fa72eefa3b550d41db6a4cc0812771fb0035bdc
2022-07-22 11:17:50 -04:00
Rakesh Roy 9f4214b587 SWDEV-344135 - Enable stream ordered memory and mempool tests
- Implement CUDA mappings for stream ordered memory allocator and memory pool APIs

Change-Id: I2434118ff043527ec7c3389cd5175e1e21d032bf
2022-07-21 00:05:39 -04:00
sdashmiz 4bac774783 SWDEV-346448 - fix the missing defines
for nvdi compile

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ifd0e50a6f8636609fa61680cc719a2f82fb1320c
2022-07-20 11:31:50 -04:00
Ajay 9b18e404ae SWDEV-327563 - catch2 deviceLib build failure
Change-Id: I82f95d61f64018a761e45dc8f424af032953fc51
2022-07-15 21:11:20 -04:00
Brian Sumner a47887aa0d SWDEV-343278 - fix conversion functions
Change-Id: Ib93f886363314e980462ef562c998981bb958569
2022-07-15 16:00:58 -04:00
Brian Sumner 4375b9f5b9 SWDEV-333033 - add safe and unsafe atomic min and max including gfx940 and add missing nvidia support
Change-Id: I829a0a5fd49c510e77eabbcb92d1a415ef6b5a4c
2022-07-14 10:22:42 -04:00
sdashmiz 39dbf65782 SWDEV-321698 - add new enum entries to match cuda
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: If0a17b3234fd90b1f553a075e02280258000d36a
2022-07-13 10:22:06 -04:00
Ajay 9eb45dd1e0 SWDEV-345188 - hipamd: warnings treated as errors for catch tests
Change-Id: I8981a530da2e0213c60f7a81b09d9c36e27e9025
2022-07-12 15:34:39 -04:00
Sarbojit Sarkar 7d9dd78613 SWDEV-341174 - Fixed typo
Change-Id: Ib605390bd17d014539d57488f0633db44d7c1fad
2022-07-11 12:24:18 -04:00
Sarbojit Sarkar 2531854626 SWDEV-345723 - Fixed test build issue
Change-Id: Id9545c9523bfad6b5afefcdc1f705d6043094ae4
2022-07-11 12:23:34 -04:00
Sarbojit Sarkar e9961fedd8 SWDEV-323441 - Phase-II : per thread default stream
Change-Id: I3c796ddaebcf0223d7faf50c425c1674de215f9d
2022-07-11 12:22:23 -04:00
Sarbojit Sarkar 5bd8f8dbe6 SWDEV-341174 - fixed warning on cuda
Change-Id: I5d017bcc154a2985e23893c0d933438bf0fc1958
2022-06-27 04:49:53 -04:00
Sarbojit Sarkar 1074b22c48 SWDEV-333073 - HIP_INIT_API to handle no return case
Change-Id: I78d43e88cc196047a4cb5d6fcf756339c0e46e80
2022-06-24 12:53:18 -04:00
Sarbojit Sarkar 7f92a98a3c SWDEV-331066- Added hipDeviceSetLimit
Change-Id: I4de099387ad34ca7c195588274b546649038e2aa
2022-06-21 06:06:05 +00: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
Satyanvesh Dittakavi 8dfa7e7f98 SWDEV-334908 - Guard the __noinline__ macro as it is also supported as keyword by clang
Change-Id: I314b3ac463ea63132a5107f4f24ce769d8112b9b
2022-05-18 05:51:32 -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
Sarbojit Sarkar fc1f02bbed SWDEV-323441 - support for default stream per thread
Change-Id: I0032da0357f5cffbf5e4ec4a02435d2a128a262b
2022-04-18 23:19:55 -04:00
Christophe Paquot cd447a5aaa SWDEV-322620 - Virtual Memory Management APIs
Adding skeletons.
Implemented:
- hipMemGetAllocationGranularity with basic granularity
- hipMemGetAllocationPropertiesFromHandle
- hipMemCreate

Change-Id: I4bd2c75fae45d6a057efcad19d1d3c9715e9ae67
2022-04-08 11:38:51 -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 3cc0a3fcaf SWDEV-321656 - Address incorrect warp size with hiprtc
Change-Id: I97051d4e2cf27cb073c39663c62e43d5c19b1a12
2022-03-15 06:52:21 -04:00
Sarbojit Sarkar 2b86f24fda SWDEV-323441 - New header for per-thread-default-stream
Change-Id: If74ea1464117abd2bfeadd543b94d26f9e934cbb
2022-03-14 01:13:01 -04:00
haoyuan2 bed3995147 SWDEV-316128 - HIP surface API support
align with CUDA to support surf1DLayeredread/write,
surf2DLayeredread/write, surfCubemapread/write functions.

Change-Id: Ie3f6ca75e23accd97cb35cdc8362d88a1e5dbd54
2022-03-09 21:19:48 -05: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
Christophe Paquot 27f102b167 SWDEV-323472 - Add hipThreadExchangeStreamCaptureMode
Also fix an issue in hip_prof_gen.py with GLenum.

Change-Id: Ib03fe9dae87b850c53b7d8aeb78b8dbdd01f794c
2022-02-24 15:24:22 -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 e5496b3159 SWDEV-314485 - Remove the older implementation of device-side malloc/free
Change-Id: I9ba3c6030a6dd7a5e064073d5c21223041282f61
2022-02-15 07:49:56 -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