Commit Graph

6014 Commits

Author SHA1 Message Date
Satyanvesh Dittakavi da9564e302 SWDEV-286231 - Fix hipMallocManaged tests failure
Test is modified as hipMemAttachHost is accepted now by hipMallocManaged

Change-Id: If73d210297cde7a92960eef57a902dbd6402a173
2021-05-31 04:10:47 -04:00
Anusha GodavarthySurya 5cad1c9b1b SWDEV-287027 - Improve launch bounds error log message
Change-Id: I3229580daa97f141de89bacddfce45cd43f24b19
2021-05-31 01:51:58 -04:00
German Andryeyev b01b048e08 SWDEV-240804 - Fix typos in the comments
Change-Id: Ic1385daf1e685772b02a11d43fb13f6cde74c4b7
2021-05-29 00:31:46 -04:00
Vladislav Sytchenko 080577d6bd SWDEV-273235 - Fix warning in the cmake build
Change-Id: I8f9d51ea676cb015abf47a2998fa053c2d4a6e81
2021-05-28 11:20:52 -04:00
Vladislav Sytchenko 4c36651aa1 SWDEV-273235 - Disable versioning for Windows
Not yet supported.

Change-Id: I9840120e1e5c40c6d3004229c4a5b06fd42cf4b6
2021-05-28 11:20:37 -04:00
Vladislav Sytchenko cd8d7aa230 SWDEV-273235 - Fix Windows CMake build
Change-Id: Idcf89ac20b4f275de33e9f6edd009706f8c432fb
2021-05-28 11:20:23 -04:00
Vladislav Sytchenko db4df4fb2e SWDEV-273235 - Restore 93b9384
Change-Id: Id2d3e54dc4f35974c12ecbec661a005cac90e5b1
2021-05-28 11:08:17 -04:00
German Andryeyev e43696d7ca SWDEV-287137 - Add extra blocking marker
HIP should block the stream until callback is done. This change
will introduce extra marker that will block the queue.
Note: MT path doesn't really require extra marker, but the logic
is identical to avoid extra checks for direct dispatch

Change-Id: Ib90fd2d751adf337f5e43ac6098e84767530233b
2021-05-27 21:17:18 -04:00
Vladislav Sytchenko 30f1fcaf53 SWDEV-273235 - Initial support for Windows CMake
This change is tied to the ROCclr cmake rework. ROCclr will now be built
as part of HIP itself.

All the dependencies on comgr and rocr have been moved into ROCclr
itself. This allows HIP to pull in all the required compiler/runtime
dependencies by simply linking against ROCclr. Note that ROCclr needs to
be configured from HIP cmake command line. If not, we will default to
LC + ROCr support.

Since HIP depends on ROCclr and ROCclr depends on OpenCL, HIP will
transitevly pull in all the required OpenCL headers. No need to keep a
local copy of them anymore.

Change-Id: Ib39f4929e88da1248be962490c150b10fc7abd3a
2021-05-27 15:21:05 -04:00
Anusha GodavarthySurya 093af3cf25 SWDEV-288065 - allow hipcc to recognize .C files
Change-Id: I0ec884eb6e083e823cf27ca1251c354a7f3b744c
2021-05-26 10:25:57 -07:00
Aaron En Ye Shi 93b9384529 SWDEV-283266 - Fix Linux Pro build for hiprtc
Linux Pro build uses the LLVM_ROOT variable to
specify where llvm is located. We must use a different
name, HIP_LLVM_ROOT for LLVM's prefix location.

Change-Id: I28baf8672217a438a5dd45829d9af04b3553f615
2021-05-26 10:37:44 -04:00
Tao Sang adf58d4ef1 SWDEV-288106 - Fix g++/hipMalloc
Fix a typo

Change-Id: I71328687b2dd4a3f563571f2b755079d83dca63e
2021-05-25 17:23:36 -04:00
jujiang 187a33434a SWDEV-286322 - add an attribute file to modify EOL
Change-Id: I5ca49a0107e129a2f949d767d2d6e0169140191d
2021-05-25 15:19:29 -04:00
Tao Sang 9ed71ade6e SWDEV-276853 - Add test for mem perf
Add memory filling performance test for large bar device memory,
hip managed memory, conherent/non-coherent host memory and fine
grained device memory

Change-Id: Id3f9bcad45d643e493daf9d5f47b3a012a427178
2021-05-25 12:32:44 -04:00
Jatin Chaudhary a4c9db8e17 SWDEV-277697 - Make sure hipcc can handle standard CXX options when being used with nvcc
Change-Id: I76b1f2943a660eefda858397218a775083b99228
2021-05-25 07:35:02 -04:00
Jatin Chaudhary c088ddbe7c SWDEV-277697 - [CatchTest] Fix Documentation, Add test to AMD specific, Add HIP Macros, New Binary for multiproc tests
Change-Id: I3783caf85c694b724ed55b778220b8ef9a39f84b
2021-05-25 07:12:54 -04:00
Jatin Chaudhary f7a2758bdf SWDEV-280067 - Document hipErrorNoBinaryForGpu error in hip faq
Change-Id: Ie8cab47ecac5a1b0972041d6e3e58e4fca278c41
2021-05-25 15:14:08 +05:30
Satyanvesh Dittakavi 03ae7251de SWDEV-286830 - Fix hipStreamACb_ThrdBehaviour on windows
use sleep_for which works cross-platform
for other tests as well

Change-Id: I915444d620e9fad0b9eda93bcdd244f9956ab8d5
2021-05-24 03:18:36 -04:00
Aaron En Ye Shi 3899687b8d SWDEV-283266 - Workaround RTC macro in vector types
Temporarily disable __HIPCC_RTC__ in hip_vector_types.h
while the upstream clang headers are outdated on mainline.
Once upstream patch has landed in mainline, revert this
change. This is a workaround for hiprtc testing.

Change-Id: Ib2cf6023b71431bbfbe3c699076caa4f90f7170c
2021-05-21 15:53:59 +00:00
Satyanvesh Dittakavi f300d11931 SWDEV-278464 - Update unit test hipEventMultiThreaded
Run with multiple threads to catch possible race condition
Disable running the test by default on CI as this takes lot of time

Change-Id: I1c1a66fd5c72f8d2bf7ad120461384488b46abbd
2021-05-21 02:57:14 -04:00
Satyanvesh Dittakavi acafb344c0 SWDEV-285521 - SWDEV-284626 - Fix P2P and Caffe2 test failures
- waitList was released before the awaitcompletion
causing stream sync after the async copies fail

- Enable the hipPeerToPeer_simple test

Change-Id: I1eeaa7e6320ab38c106902078f034dfec4c3f3ea
2021-05-21 02:54:22 -04:00
Aaron En Ye Shi ad570e3b99 SWDEV-283266 - Fix hipRTC mcin missing symbol
Add back the .type directive needed for ELF
format to add the section to symbol table.
For COFF format the symbol is already added
to the symbol table.

Change-Id: I4920e8dae0af23b4dcabd324b47abc228fcab10f
2021-05-20 20:24:55 +00:00
Julia Jiang f8a08e2429 SWDEV-286322 - Fix EOL in files
Change-Id: I1746e80aceeeaa4fc5df65c858f4816d99010186
2021-05-19 14:48:53 -04:00
cjatin 8084df7b49 SWDEV-277697 - Adding Infra and dependent libs: Catch2 and json parser, for new HIP Testing framework
Change-Id: Iedfa041ec9acc13eeb631ff67e1677e2fe29463d
2021-05-19 00:47:00 -04:00
kjayapra-amd 871c167fd0 SWDEV-286346 - Implement Arena Memory Object for externally created memory.
Change-Id: I1aae0d24b28eebaf7f67e941aaa475a53831e9b8
2021-05-18 10:24:40 -04:00
German Andryeyev 6430a308fc SWDEV-240804 - Allow system memory creation.
Always allocate managed memory in ROCclr and backend will decide
what kind of memory to use. Currently ROCclr should fall to
GPU accessible system memory if HMM isn't available

Change-Id: I71328687b2dd4a3f563571f2b755079d82dca433
2021-05-18 09:32:57 -04:00
Tao Sang 7373112d74 SWDEV-282588 - Improve clock64()
Let clock64() read s_memtime to prevent rolling over
Add wall_clock64() to read s_memrealtime

Change-Id: I706387355add75852c570be2656131ef99e8968f
2021-05-17 13:19:04 -04:00
cjatin 0d146dd9b8 SWDEV-285685 - Make sure the output of hipconfig is without quotes on linux
Change-Id: I620cd41c7e6087b0d3d7da9ef7f9cecaf2f740ba
2021-05-17 20:50:36 +05:30
Aaron En Ye Shi 2d6881e26b SWDEV-263959 - Fix device decl with long and llong
Windows may expect long and ulong to be 4 bytes, while
Linux expects 8 bytes. Instead, use uint64_t for
unsigned long, and unsigned long long, and use int64_t
for long and long long to be consistent.

Change-Id: I6ed1cdde43721bcaaab0245644d607b1adbf9884
2021-05-14 11:59:27 -04:00
Julia Jiang fee2250433 SWDEV-286322 - Fix EOL
Change-Id: Ie266135ebf754b5af27c1dc768bda1ca0245d936
2021-05-14 11:32:55 -04:00
Aaron En Ye Shi 4dedd2436d SWDEV-283266 - Add hiprtc option to generate preprocessor expansion
Add -r/--generate_rtc option to hip_embed_pch.sh to generate the
preprocessor expansion output of the HIP headers for hipRTC mode.
Generates an object hiprtc_header.o and shared library libhiprtc.so
which can be used for hipRTC online compilations. Enable
__HIP_ENABLE_RTC by default in the CMake files.

Change-Id: Ief51b695c9b31941d929e06f16872f95eea3619b
2021-05-14 10:20:38 -04:00
Saleel Kudchadker fac2a9fbc8 SWDEV-283726 - Indicate profiler attached
Set profiler attached flag in VirtualGPU to inform ROCclr of it

Change-Id: I776c9fcd762cf02f3ce0f3c386d02384a224126c
2021-05-12 13:40:47 -07:00
Sourabh Betigeri 6bcbb61e5f SWDEV-282354 - Some AMD GPUs cause clock64() to roll over faster, this changeset prevents infinite loops due to that.
Change-Id: I19d026073afa16104ffbee4705b74d37003a04d9
2021-05-11 20:40:23 -04:00
Sourabh Betigeri 09a41f2cf4 SWDEV-281034 - Occupancy calculations for gfx10.3 adjustments based on available VGPRs, SIMDs per CU and number of waves per SIMD.
Change-Id: I0e34decebc9f730fe0e0c3c3258f301de5748e72
2021-05-11 20:39:49 -04:00
Vladislav Sytchenko 6debae4a14 SWDEV-273235 - Fix HIP PCH build
hip_rtc.cpp refers to the symbol __hipGetPCH(), but that one can only be
found in hip_global.cpp. It's not referenced anywhere else, hence it
should be moved.

Change-Id: Ifc67b2f3b1b8344dec0e6c30d083d62288fb5e24
2021-05-11 17:40:32 -04:00
Julia Jiang 4549478f52 SWDEV-282350 - Add managed memory support in HIP document
Change-Id: Iea4479058b4c40c36d71c9302834396a4088ac6f
2021-05-11 16:04:46 -04:00
pghafari 86a5e82a4b SWDEV-245532 - HIP - Vulkan interop semaphores
Change-Id: I89be5ee84d4728d76e1987d5016c944c0dbc9a96
2021-05-11 11:44:59 -04:00
Jason Tang ba42be8018 SWDEV-277566 - Add amd::Program::load interface
Change-Id: Iba32fd6add7b1c51b33a9ea899732044c0a064f6
2021-05-11 10:51:45 -04:00
Vladislav Sytchenko 86486b2c4a SWDEV-240806 - Fix Windows build
hipGraphAddHostNode and hipGraphAddMemcpyNode1D are not part of the HIP
graph implementation, hence they should not be exported.

Change-Id: Ia3d0188895fb4f64ebfa23d4a0a09c44438f878d
2021-05-11 10:07:49 -04:00
German Andryeyev 31ae72a164 SWDEV-240804 - HMM changes
- Accept hipMemAttachHost flag
- Don't allocate HMM memory if HMM is disabled in KFD

Change-Id: I3d386eb0a109a19c16a87a728944a3a6669f643a
2021-05-10 13:50:21 -04:00
Aaron En Ye Shi 811bc363c8 SWDEV-283266 - __HIPCC_RTC__ macro added to HIP headers
For hipRTC on Windows, add macro __HIPCC_RTC__ to allow
online compilation of with device functions excluding standard
C/C++ headers, system headers, and host HIP APIs.

Change-Id: I1d91f042baf1359856ec83ab7030dc58785e0334
2021-05-10 17:28:07 +00:00
Julia Jiang 73964037c1 SWDEV-272921 - Remove non-existing link for square sample
Change-Id: If8c87a6ded6aacaa4301b1b80ee218897219a6fb
2021-05-10 12:09:28 -04:00
Anusha Godavarthy Surya c35ba37287 SWDEV-240806 - Initial commit for hipGraph and stream capture infrastructure
On StreamBegincapture captures the parameters passed to APIs and respective node will be created and added to graph
All parameters are passed to STREAM_CAPTURE macro, it checks if stream in capture mode and redirects the call to the capture function and returns
Updated hipStream and hipEvent with capture parameters
Added handling for hipStreamBeginCapture & hipStreamEndCapture

Change-Id: Ic8926a7b4336c2cc81f0b3a9a224aa392c474134
2021-05-07 17:38:16 -04:00
Ravi C Akkenapally db7421cb10 SWDEV-281998 - TEST: StreamOperations : Split StreamWait and Update into two seperate threads
Change-Id: I0fda25857dd9f097f36ce1bafedb7689ca2beecc
2021-05-07 11:11:28 -07:00
Julia Jiang ba1c5a955a SWDEV-282350 - update HIP documents
Change-Id: Iff3a49e75279b1ecee0672a6d35f6b84a8256296
2021-05-07 12:38:13 -04:00
Maneesh Gupta 2b04d249fc SWDEV-252801 - Fail if launch params exceeds launch_bounds
Change-Id: I90c8d0f1897ca63f00c3eec7c99d649a5c43416d
2021-05-06 22:38:50 -07:00
German Andryeyev 192c47e251 SWDEV-272496 - disable direct dispatch by default
Change-Id: I706387355add75852c570be2656131ef99e8958c
2021-05-06 16:17:26 -04:00
Vladislav Sytchenko 9e545007bc SWDEV-273235 - Allow explicitly disabling LF support
Currently LiquidFlash cannot be supported from Github Enterprise,
hence we need to be able to build with out it.

Allow this by setting -DWITH_LIQUID_FLASH=0.

Change-Id: If59afe45c02a1623639360dbcc3927360f16ebd3
2021-05-06 13:05:12 -04:00
Julia Jiang b4158d2bc0 SWDEV-282350 - Adding hip_debugging
Change-Id: I18f52a76f88bcd3a0628030a6798d546a3973f4d
2021-05-06 11:48:52 -04:00
Anusha GodavarthySurya 1cc65c48a2 SWDEV-271978 - Function __byte_perm to match CUDA behavior
Selector indices are as follows (the upper 16-bits of the selector are not used): selector[0] = s<2:0> selector[1] = s<6:4> selector[2] = s<10:8> selector[3] = s<14:12>

Change-Id: Ibf76c6ec2374f1f5b9bba8bd9dbd73660f830eea
2021-05-05 03:00:32 -04:00