Commit Graph

13474 Commits

Author SHA1 Message Date
Maneesh Gupta dd4e3c9903 SWDEV-305592 - roc-obj missing execute permissions
Change-Id: I8d418c62805d5080c5054f815b4287cb1bcfa8fe
2021-10-04 05:15:28 -04:00
Julia Jiang 3098324ef7 SWDEV-302493 - Comgr API backward compatible
Change-Id: I3d796d10fa1dbb7edb0510f8ed7d44e3b4993bd7
2021-09-29 11:43:43 -04:00
Maneesh Gupta c4287c6650 SWDEV-305219 - SWDEV-305226 - Fix debian package name to hip-dev
Change-Id: Ic19b0edde812747ff7fd8daacd16b4dabe937ed7
2021-09-29 03:34:21 -07:00
Chauncey Hui 5788e2b476 SWDEV-2 - Change OpenCL version number from 3372 to 3373 2021-09-28 03:00:06 -04:00
Sarbojit Sarkar 1643555ad7 Merge "SWDEV-301823 - Fix for memset2D/3D optimization" into amd-staging 2021-09-28 00:06:39 -04:00
Sarbojit Sarkar 98c172c2e4 SWDEV-301823 - Optimized hipMemset2D/3D
Change-Id: I1e817ab135bfdf9b8f9af18c1bf2cd2e926db729
2021-09-28 00:05:33 -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 22a847f3ce SWDEV-301823 - Optimize hipMemset2D/3D
Change-Id: Ibe560149a263c2ac6b08e4eb1a1d331d2aeac78c
2021-09-27 14:10:06 -04:00
Sourabh cbb8d82bdb SWDEV-292525 - [vdi] Path to streamOps shaders
Implementation to use a blit kernel to perform
a hipStreamWait/write instead of an AQL packet.

Change-Id: I462671ed5cec37144dfe97ff66439249196117c1
2021-09-27 13:59:35 -04:00
Sourabh 4177d20877 SWDEV-292525 - [hipamd] Use a blit to streamWait
Implementation to use a blit kernel to perform
a hipStreamWait instead of an AQL packet.

Change-Id: I9d9bc1dd793c1454e91e68afb793460749e10d2e
2021-09-27 13:59:21 -04:00
Freddy Paul b4b83e274e SWDEV-304500 - OpenCL tests are failed for Ubuntu 20.04.3
As part of the stack unification some of the application using
opencl seem to depend on libopencl.so provided from thirdparty
providers. For libopencl.so from thirdparty provider to find
libamdocl.so ldconfig path to {opencl install path}/lib is required

Change-Id: I8e12e463209a44177ee433644c75ef0781f1da2f
2021-09-27 07:36:06 -07:00
Vladislav Sytchenko c4aa6febe5 SWDEV-301289 - Treewide macro rename
ATI_OS_WIN -> _WIN32
ATI_OS_LINUX -> __linux__

We should not rely on non-standard macros for platform detections.

Change-Id: If1d06e2e1187268df62a59609ea5496ab7eb709d
2021-09-26 12:13:37 -04:00
Jason Tang 159f7f24cd Merge "SWDEV-301289 - Add missing sources files needed for ocltst on Windows" into amd-staging 2021-09-25 17:09:12 -04:00
Vladislav Sytchenko 6c9b07370c SWDEV-301289 - Point to local AMD OpenCL via OCL_ICD_FILENAMES
The OCL_ICD_FILENAMES env var contains a list of OpenCL platforms that
the ICD should prepend to the list of reported platforms. Since the
built amdocl library will show up as the first platform, we can tell
ocltst to always run with platform 0. This way we guarantee that the
correct binary is being loaded.

Using this env var also makes programming LD_LIBRARY_PATH redundant
for Linux.

Change-Id: I8c1729e8b4dd1cd2df1a3da08c7b7addebd08b4f
2021-09-25 17:03:17 -04:00
Vladislav Sytchenko 3d82092632 SWDEV-301289 - Correctly reset optind when using getopt()
optind's starting value is 1 and it needs to be reset to 1 after each
getopt() invocation. Resetting it to 0 will cause getopt() to
reinitialize its internal state. This is only needed for some corner
cases. In our current usage, we should be resetting it to 1.

Change-Id: I68da7e41ee8b83b275e2a7bd660c13af569769f1
2021-09-25 17:02:35 -04:00
Sarbojit Sarkar 5847bb9c7d SWDEV-301823 - Fix for memset2D/3D optimization
Change-Id: I03d41a1908ca547e27774e6ced98571913e1808a
2021-09-25 12:11:26 +00:00
Chauncey Hui 60295a9da9 SWDEV-2 - Change OpenCL version number from 3371 to 3372 2021-09-25 03:00:07 -04:00
Payam b075718a0f SWDEV-245531 - GLInterop: linux - Buffer Interop
adding back two missed changes back to cmakelists and amdhip.def

Change-Id: Ibe0ed655d3590f0add13c20b160078ae005feaaf
2021-09-23 17:10:37 -04:00
Jason Tang e0bd4aad63 SWDEV-1 - Only check agent-binary ISA compatibility for online device
Change-Id: I5c8395c646280b8316e2f1af9f1e624359166cba
2021-09-23 16:03:01 -04:00
Chauncey Hui 6aca5576b1 SWDEV-2 - Change OpenCL version number from 3370 to 3371 2021-09-23 03:00:06 -04:00
German Andryeyev 6b47e50350 SWDEV-292408 - Keep tracking of subbuffers for multiple devices
Change-Id: I568b5ea79614ef507cf1f0efb3dca38ab6cc2db7
2021-09-22 19:24:39 -04:00
Chauncey Hui f27d17acd3 SWDEV-2 - Change OpenCL version number from 3369 to 3370 2021-09-22 03:00:07 -04:00
Jatin Chaudhary c250a13849 SWDEV-297217 - Append user options after default options
Change-Id: I1bdd309f98997f805357baa5d3ff36063797460c
2021-09-21 15:12:36 -04:00
Sarbojit Sarkar 7aaad05910 SWDEV-298667 - fix stream operation for Cuda
Change-Id: Ida91712e678e324b54293ba48dfca442be390783
2021-09-21 15:07:15 -04:00
Jason Tang f212fc91ca SWDEV-1 - More 'delete' clean up
info_.extensions_ and settings_ are deleted at amd::Device()::~Device().

Change-Id: I06f240a42e5c131dbd4e61a759f905bcdf84b45a
2021-09-21 11:17:24 -04:00
Chauncey Hui a0c9bf4414 SWDEV-2 - Change OpenCL version number from 3368 to 3369 2021-09-21 03:00:05 -04:00
German Andryeyev 51556711dc SWDEV-292408 - Don't force high clock for HIP
Change-Id: I501f4e5272124025068b1d3cb637ee8061b06467
2021-09-20 18:44:11 -04:00
German Andryeyev 6da9d18140 SWDEV-292408 - Disable cache coherency tracking for HIP
Cache coherency layer is OCL feature to support multiple devices in
single OCL context.

Change-Id: Ic66df9551fad5b0c4df95ab3e1db1da259919f25
2021-09-20 16:13:36 -04:00
Ajay 198530143c SWDEV-301069 - null ptr check before calling getUserData
Change-Id: Iaff3acd44d89a9629efe0672cb45138942d7fa28
2021-09-17 19:25:24 -04:00
Chauncey Hui 41fdd996cb SWDEV-2 - Change OpenCL version number from 3367 to 3368 2021-09-17 03:00:05 -04:00
Alex Xie 19ca123460 SWDEV-302875 - OpenCL build failure
clinfo should rely on OpenCL interface, headere file and library only

Change-Id: I8e09aa73b55f1a28c2e4403f52740803d0338c12
2021-09-16 22:16:06 -04:00
agunashe 82e73c096b SWDEV-301069 - current device id saved while allocating memory in VDI
Change-Id: Ic5426895fb1d152e4e6e1baf8b938f35c85fa3d8
2021-09-16 14:00:07 -04:00
Chauncey Hui c3be1d41f1 SWDEV-2 - Change OpenCL version number from 3366 to 3367 2021-09-16 03:00:09 -04:00
German Andryeyev f116959b54 SWDEV-302383 - Get active state from device
The queue can be destroyed at the time the app will request
the event status. Hence just get the active state from the device.

Change-Id: I887ecb0cfe414c2119247228b0d1255b8308da1e
2021-09-14 19:01:44 -04:00
agunashe 29adfcd3c0 SWDEV-301069 - current device id saved while allocating memory
Change-Id: I57045119e7adf915074c547cbe76349a4cfd72d9
2021-09-14 12:19:44 -04:00
Chauncey Hui e6c0e0fe8b SWDEV-2 - Change OpenCL version number from 3365 to 3366 2021-09-14 03:00:07 -04:00
Satyanvesh Dittakavi 673c2deed1 SWDEV-302147 - fix __hip_ds_permutef device function to return float
Change-Id: Ie452e90a7f7410401df4a66de468ad850403953c
2021-09-14 02:15:53 -04:00
German Andryeyev d8a86e4870 SWDEV-282419 - Use HSA_AMD_SVM_ATTRIB_AGENT_ACCESSIBLE for unset
When unsetting runtime should use HSA_AMD_SVM_ATTRIB_AGENT_ACCESSIBLE
for the agent and not HSA_AMD_SVM_ATTRIB_AGENT_ACCESSIBLE_IN_PLACE

Change-Id: I3814802d1fb3b72c54e7566defafafed6b0d5cee
2021-09-13 15:05:20 -04:00
German Andryeyev 65ddfcc6a8 SWDEV-294669 - Keep one more slot for HW processing
The original logic left only one slot for HW processing in the queue.
For some reason there is a race condition on CPU overwrite of the slot
before the current active. The workaround is to avoid the previous to
the current active slot for possible unfinished HW processing.

Change-Id: I565495a8feeaedffc9fc8a505edbee5ff5816975
2021-09-13 13:56:05 -04:00
Chauncey Hui 7102264d6a SWDEV-2 - Change OpenCL version number from 3364 to 3365 2021-09-10 03:00:05 -04:00
Laurent Morichetti 3dc47bc839 SWDEV-252801 - Fix hipGetLastError/hipPeekAtLastError
hipGetLastError/hipPeekAtLastError should really return the last error
produced by any of the runtime calls that did not successfuly complete,
not just the error code of the last runtime call.

For example, in this snippet of code:

   1: hipLaunchKernelGGL(MyKernel, dim3(2), dim3(128), 0, 0, 10000,x);
   2: hipDeviceSynchronize();
   3: hipError_t error = hipGetLastError();

If the call to hipLaunchKernelGGL fails, hipDeviceSynchronize (which
succeeds) should not reset the last error to hipSuccess. hipGetLastError
should still return the non-success error code returned by
hipLaunchKernelGGL.

The last error is reset to hipSuccess after calling hipGetLastError.

Change-Id: Ib7c039067c53c94c99c8ecd83f54212bcef06f81
2021-09-09 12:29:05 -07:00
Laurent Morichetti 3911184607 SWDEV-252801 - Fix return HIP_RETURN(x)
HIP_RETURN(x) is not a value, it is a statement ending with a return,
this commit replaces all instances of "return HIP_RETURN(x)" with simply
"HIP_RETURN(x)"

Change-Id: I03293b2684a65367ff55e02b3a71ea49ec7a517a
2021-09-09 12:19:41 -07:00
Jason Tang 73967c3b17 SWDEV-1 - Some 'delete' clean up
Change-Id: I02564f0f0e349375bde1471e9f82df268703367b
2021-09-09 12:12:40 -04:00
Jason Tang 4d06d64939 SWDEV-1 - switch to C++17
Change-Id: Ifdb1ecbf175949462c29035c007acb3e82fe8322
2021-09-09 10:16:43 -04:00
Jason Tang 5549007856 SWDEV-1 - switch to C++17
Change-Id: I7e6a28a20ca163fe86dd6d53b031e9bb6f9b22c9
2021-09-09 10:16:14 -04:00
Chauncey Hui df862e7ef6 SWDEV-2 - Change OpenCL version number from 3363 to 3364 2021-09-09 03:00:06 -04:00
Vladislav Sytchenko d934612948 SWDEV-1 - Prepare for c++17 switch
std::mem_fun() and std::bind2nd() are removed in c++17. Switch to
simpler logic that does not require those functions.

Change-Id: I19a31f076e1813e367615bd377b424046ce144c7
2021-09-08 16:18:33 -04:00
Vladislav Sytchenko dd23379ac8 SWDEV-301636 - Manually find NUMA
CMake does not provide a way to query the NUMA library, hence we need
to find it manually.

Change-Id: I370b286acdee75cbebc21340da3c432c79f8ffa7
2021-09-08 15:04:15 -04:00
Vladislav Sytchenko c68f024b35 SWDEV-1 - Fix Windows build
std: :mem_fun() is removed in c++17. Simplify logic to not require it.
Change-Id: Ic9a4753b48dd13fcb20cd5b90ff73c3df3211b9f
2021-09-08 12:59:48 -04:00
Saleel Kudchadker 21ba34d0fe SWDEV-297448 - Add 64bit and 16bit write support
For the fillBuffer shader, if there are two 32bit writes to a MMIO
register, it can get dropped. It has to be a single 64bit write.
Add optimization to fillBuffer to write 64bit and 16bit writes.

Change-Id: I3aa78e027898f8ae01e9c8f09004615673720c2b
2021-09-08 12:30:04 -04:00