Remove extra -isystem causing --cuda-device-only flag
to be dropped. Fix missing __hipRTC_header_size symbol.
Add macros which were consumed during pre-processor
generation. Add INT_MAX and CHAR_BIT macros used in
HIP headers.
Change-Id: Id5143e3c8a2b1e7c78658ba84d5ab3b55ac1fa72
[ROCm/hip commit: b982637965]
CMake doesn't handle linker export files in a general way well. On
Windows it is able to recognize a .def file and pass it to the linker.
Unfortunately it cannot do the same thing on Linux, so we have to
manually specify it.
Note that CMake can't recognize the current Windows export file due to
the .in suffix, hence why the amdhip.def file is being added. The
hip_hcc.def.in file will be removed later, as the Makefile build still
uses it.
Change-Id: Id3e4645c95959e13f50efd88bc43f3a1d3e50d58
[ROCm/hip commit: 118714d1b6]
Add coarse grain memory extension. The new advice will allow HMM
to disable cache coherency policy to improve performance
Change-Id: I3c792d6a96896b983a7ffccddaa0ded06d183212
[ROCm/hip commit: c80955b569]
HIP exports the runtime target as amdhip64. This target was recently
renamed to amdhip. It is unclear as to who uses this target, as HIP
clients need to use the device/host targets instead, but we still need
to support it for backwards compatability.
Change-Id: I68b9798ab967420e0642d50621d3c8b577a05435
[ROCm/hip commit: 00dc7068fc]
HIP only has a dependency on ROCclr at build time. When exporting HIP,
ROCClr is already embedded into the shared/static library. There is no
reason to search for it.
Change-Id: I8d7e8e58164e5585a1dfc9c998ecf02ca42d8aac
[ROCm/hip commit: b7c59cda76]
Don't install HIP source code.
Correctly install the HIP shared library based on platform. On Linux,
it will be installed to lib/, but on Windows it will be installed to
bin/. CMake will handle this for us.
Change-Id: I00cc074ad8e13b1b953b21444f0c2b5f50dc03c0
[ROCm/hip commit: 444d54df12]
Add kernelVerify for data verification and memory
reading performance checking in kernel.
Change-Id: Id3f9bcad75d643f493daf9d5f47b3a012a427179
[ROCm/hip commit: 9ba66fc157]
Test is modified as hipMemAttachHost is accepted now by hipMallocManaged
Change-Id: If73d210297cde7a92960eef57a902dbd6402a173
[ROCm/hip commit: da9564e302]
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
[ROCm/hip commit: e43696d7ca]
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
[ROCm/hip commit: 30f1fcaf53]
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
[ROCm/hip commit: 93b9384529]
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
[ROCm/hip commit: 9ed71ade6e]
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
[ROCm/hip commit: 3899687b8d]
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
[ROCm/hip commit: f300d11931]
- waitList was released before the awaitcompletion
causing stream sync after the async copies fail
- Enable the hipPeerToPeer_simple test
Change-Id: I1eeaa7e6320ab38c106902078f034dfec4c3f3ea
[ROCm/hip commit: acafb344c0]
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
[ROCm/hip commit: ad570e3b99]
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
[ROCm/hip commit: 6430a308fc]
Let clock64() read s_memtime to prevent rolling over
Add wall_clock64() to read s_memrealtime
Change-Id: I706387355add75852c570be2656131ef99e8968f
[ROCm/hip commit: 7373112d74]
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
[ROCm/hip commit: 2d6881e26b]