Grafico dei commit

132 Commit

Autore SHA1 Messaggio Data
kjayapra-amd 5ff27faa04 SWDEV-337452 - Adding__ockl_steadyctr_u64 option for wall_clock64.
Change-Id: I4ee6fd4d40d500363ef84975078185093dab5ddd
2022-11-07 08:47:30 -05:00
Anusha GodavarthySurya c974cbcb3d SWDEV-366153 - Fix __ocml_isnan_f16 to pass _Float16
Change-Id: I7628f21d000cec490f5fb2c91f1b99ca61fb46cf
2022-11-06 21:57:23 -05:00
Anusha GodavarthySurya 07b3070e25 SWDEV-362611 - Added hmax and hmin
Change-Id: I133a80e997e39357693df7ab969425c0d5585607
2022-10-31 00:23:57 -04:00
Pierre van Houtryve dcb5d29f1e Replace LLVM atomic.inc intrinsics with Clang builtins
With opaque pointers, the suffix of those intrinsics changed. This caused
build failures that should be solved by just using the corresponding
Clang builtins instead of using intrinsics directly

See SWDEV-356581

Change-Id: Icd1d9b9438cac4bef0f7c52d4cd341ac76500890
2022-10-27 10:17:21 -04:00
Laurent Morichetti 19107858d6 SWDEV-361847 - Print 'char' parameters as 'integer'
When printing HIP API function parameters, use the integer format to
print 'char' arguments to avoid printing invalid ASCII characters
(value > 127).

Make sure the roctracer::hip_support::detail operator<< overloads are
used when printing arguments.

Change-Id: Id072c2ed19b1b4166108599e393d1cae6c54b6b0
2022-10-21 14:55:33 -04:00
Laurent Morichetti 47a29c748a SWDEV-359838 - Add a phase data pointer to the hip_api_data_t
To avoid using the thread local std::stack to remember the phase enter
timestamp, the tracer tool uses the phase data to store the timestamp.

Change-Id: I9e95637b41d6f0b2bd61016062ca07d6ba897652
2022-09-30 14:55:01 -07:00
Maneesh Gupta 835b7578dc Revert "SWDEV-351980 - Update hip_prof_str.h"
This reverts commit f296e42803.

Reason for revert: Incorrect patch

Change-Id: I9adba47d0ab18f621b599295bd9d0fd98887f5d3
2022-09-21 13:04:38 -04:00
Maneesh Gupta f296e42803 SWDEV-351980 - Update hip_prof_str.h
Change-Id: Ied27c137aff54e69dc14129e6daad9196479edf9
2022-09-21 11:38:59 +00:00
Ajay 2801e4fe63 SWDEV-357334 - hipEventRecord_spt() to take optional stream arg
Change-Id: I19540c577e2c3635a00379f814350ada41020af2
2022-09-19 20:28:13 +00:00
Saleel Kudchadker df278887fe SWDEV-301667 - Pass all params to API Init
- Correct return for ihipLaunchKernel

Change-Id: I66e81fa635473e6e728936e4cfba9f1bc7f018ad
2022-09-15 22:20:02 -07:00
Anusha Godavarthy Surya 52a22a1263 SWDEV-350025 - Added hipLaunchHostFunc functionality
Change-Id: I6b9d547f7ddf84e617e35ff5d5a490ff458272ef
2022-09-07 17:53:26 +00:00
Sarbojit Sarkar 3b530b5676 SWDEV-354138 - Fixed SPT functions linking issue
Change-Id: I738ccdfd6db8cfa8c29f93bb6061e83795df382b
2022-09-05 06:22:08 -04:00
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
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
haoyuan2 b96ff76989 SWDEV-342896 - fix incorrect format setting
Change-Id: I1fa72eefa3b550d41db6a4cc0812771fb0035bdc
2022-07-22 11:17: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
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 e9961fedd8 SWDEV-323441 - Phase-II : per thread default stream
Change-Id: I3c796ddaebcf0223d7faf50c425c1674de215f9d
2022-07-11 12:22:23 -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
jaypatel 8d464a2e83 SWDEV-322688 - Added hip math constants header.
Change-Id: I9363f82159a53c6822e943c4950fc7f6c350b326
2022-06-16 23:56:45 -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
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
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
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
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
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 e5496b3159 SWDEV-314485 - Remove the older implementation of device-side malloc/free
Change-Id: I9ba3c6030a6dd7a5e064073d5c21223041282f61
2022-02-15 07:49:56 -05:00
Sourabh Betigeri 7d8c63cc34 SWDEV-294375 - Declares fns() functions static
Change-Id: Ife0150b8d6b9531522e61a82df6b88af3282f437
2022-02-13 23:35:46 -05:00
haoyuan2 d7beddbfee SWDEV-316128 - HIP surface API support
Change-Id: I5b98f86168e64b36588f5d7efb82191d895e27d7
2022-02-11 11:07:04 -05:00
Sourabh Betigeri 523e5a007c SWDEV-294375 - Adding coalesced_groups to ROCm CG
Change-Id: I4098e1970ae2c388171fa73deb5bc023ed1b7a68
2022-02-07 11:29:46 -05:00
Satyanvesh Dittakavi 760f275861 SWDEV-292714 - Added support for hipPointerGetAttribute and
hipDrvPointerGetAttributes

Change-Id: I44a0b5c5d9eb5a9a63406b11e8de83e5cb245a59
2022-02-02 05:33:07 -05:00
pghafari 44e0c246f8 SWDEV-245531 - GLInterop adding register image
Change-Id: I075bec49b7ad5f78336586b9d55e259717c4c000
2022-01-23 14:59:18 -05:00
Payam 5f9d779324 SWDEV-245531 - GLInterop adding register image
Change-Id: Ib16b647e2a1b8f3c578a9689d3987121c984250b
2022-01-14 15:57:24 -05:00
Nick Curtis c8103470d5 Fix missing system-scope for CAS in atomic[Min|Max]_system
Change-Id: Ieb0ca79eaeba3a0ae56739246e08135a25a8d6dd
2022-01-12 22:53:11 -05:00
haoyuan2 0f94653447 SWDEV-315924 - align with CUDA to define vector3 data type
Change-Id: I7654fb757b4c387a762f384ccdd3f2c8555d149f
2022-01-06 17:35:56 -05:00
Tao Sang 78de8cd672 SWDEV-315590 - Fix texture vector issue
Apply mapFrom() to related texture device functions.

Change-Id: Ifed918c87373b784780b2180320ccb746845daff
2022-01-04 19:26:14 -05:00
Tao Sang 7de480760b 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
2022-01-04 13:38:57 -05:00
haoyuan2 8a8581edf5 SWDEV-316052 - fix HIP_Directed tests build error
Change-Id: I782c68859f77934f2cf672ee53378e51b1cb1ddd
2021-12-21 03:21:53 -05:00
haoyuan2 a8b30291c3 SWDEV-303956 - add make_int2/3/4 and make_float2/3/4 function support
Change-Id: I0260d1a9d2ac66e84dc31a80b0995616ef78b0fe
2021-12-15 14:57:36 -08:00