Add support for hipconfig to display details on HIP-Clang compiler and update HIP_COMPILER and HIP_RUNTIME to include clang and rocclr. Also, add hipcc flags --cxxflags and --ldflags to support HCC users who used hccconfig flags.
Change-Id: Ib12d81a4ff59d34fb000626836b1adb10be3ac61
[ROCm/clr commit: 2df5d92240]
This change is required by rocBLAS and rocFFT for OpenMP issue
since cmake needs to treat .cpp file as C++ program to detect
OpenMP support.
This is to match nvcc behavior, speed up compilation of C++
programs, and fix some compilation issue where C++ programs
are compiled as HIP programs.
Currently it is controlled by an environment variable
HIP_COMPILE_CXX_AS_HIP. By default it is 1, where
hipcc treats .cpp files as HIP programs. If it is
set to 0, hipcc will treat .cpp files as C++ programs.
This is because some math libraries are still not
ready for the change, however rocBLAS and rocFFT
require this feature for OpenMP, therefore put it
under an environment variable so that rocBLAS
and rocFFT can use it.
Change-Id: I56a51e27079df850ee39d4217fb647c22d79f612
[ROCm/clr commit: 4e7b1cdbd2]
- As different modules may have symbols with the same name, each symbol
needs identifying with a pair of the module handle and the symbol
name.
Change-Id: I85650a787d9a424545154cc40ebd59e706fa358f
[ROCm/clr commit: f8062c6fbd]
It was for HCC only. HIP-Clang also needs it for __fp16 since AMDMIGraphX uses it.
Change-Id: Id49322b7b89ef799accdf6b47627a6fce51d1ab5
[ROCm/clr commit: 29549ce4dc]
hipEventRecord is much slower in hipclang/vdi
- Make sure default streams don't sync each other.
- Add null stream into the list of default streams.
- Code clean-up to simplify queue look-up.
Change-Id: I36e1fc8d86a600e3dce806694d95d146ed8afd03
[ROCm/clr commit: 5a7c094729]
This change is required by AMDMIGraphX.
It was for HCC only. HIP-Clang also needs it for __fp16 since AMDMIGraphX uses it.
Change-Id: Id49322b7b89ef799accdf6b47627a6fce51d1ab5
[ROCm/clr commit: 1013e4eca8]
75a5088446727c9f77d8
These are needed by MIOpen and rocBLAS.
Add __HIP_PLATFORM_HCC__ to hip::host target (#2029)
Fix hip-config.cmake for CMAKE_CXX_COMPILER=g++ (#2035)
* Fix hip-config.cmake for CMAKE_CXX_COMPILER=g++
* Add inlineall option to hip::device in hip-config.cmake
Change-Id: Ib51f82d0b9e38d2137df65c940592413e22ba07a
[ROCm/clr commit: 9227b08458]
- The driver code should not re-define `tex` again as it's already
defined in the kernel code. Eventually, the driver code should be as
regular C++ code instad of HIP code.
Change-Id: I8c7cab204b98990619d6e7109b990d7089ea9261
[ROCm/clr commit: b469e5c573]
These might contain garbage causing the runtime to incorrectly parse the state of the texture references.
Change-Id: I93c726fa30b580b3e14c50ac939f3c71b0d1c8d9
[ROCm/clr commit: bfa363d00c]
Support hipDeviceAttributeIntegrated in hipDeviceGetAttribute() with hip-vdi rt
Change-Id: Ie5ba81222af3554a843c184ae75af7f369a3c24b
[ROCm/clr commit: 85abd8f028]
Let hipMalloc() be called in main() so that global variable can be initialized.
Change-Id: I9aa1f0a0bb4fa0825d10af0b58c843e7b928e9a3
[ROCm/clr commit: d27880ac39]
- HIPPerfDispatchSpeed disparity between HIP/HCC vs HIP/VDI
Insert a wait marker command in the default stream only when
HIP has pending operations on other async streams
Change-Id: I68660a54867fab7571ba57eb1df5feb1bca1c61a
[ROCm/clr commit: 21840ac6a0]
1.Combine libamdhip64_static_base.a and libamdvdi_static.a into libamdhip64_static.a.
2.Let hipcc use -use-staticlib to link libamdhip64_static.a.
3.Add some samples for static lib.
4.Fix compiling failure of code object.
Change-Id: Ic8c95228eb139058da8b5d66ba8439486154ca6f
[ROCm/clr commit: 32130f8ec3]
This reverts commit 08d1b39d50.
Reason for revert: It is causing dkms-no-npi-hipclang broken.
It is top priority to maintain dkms-no-npi-hipclang build, otherwise we lose track of regression analysis.
So revert the change for now and recommit it after fixing it.
Change-Id: Ia5136e888baecb6148c6c18eedbf37066fcb1eaa
[ROCm/clr commit: a6c6f51926]
1.Combine libamdhip64_static_base.a and libamdvdi_static.a into libamdhip64_static.a.
2.Let hipcc use -use-staticlib to link libamdhip64_static.a.
3.Add some samples for static lib.
4.Fix compiling failure of code object.
Change-Id: Ia2333622a8d05639b90974c4c5d3d85654ba0138
[ROCm/clr commit: 5210ee6ca5]
Since we adjust we adjust the start of the region, amd::BufferRect::end_ is no longer the size, just the offset as to where the region ends.
The actual size of the region is (amd::BufferRect::end_ - amd::BufferRect::start_).
Change-Id: I8425d8bdfb20f485740863813e762e8923d9ee94
[ROCm/clr commit: 4d6e394c73]
Two issues are fixed:
libamdhip64_static.a is not included in package.
cmake generated target files uses installation path of libraries
which are created when the libraries are built and installed.
The CI uses customized installation directory which is not
the package installation directory, thefore the library location
in cmake generated target files differs from the library location
installed from package. This causes rocPRIM build failure since
rocPRIM uses pkg-config which checks library location.
The fix is to fix the library location before adding cmake
generated target files to package.
Change-Id: I4aa2c6138f58df6d4a86301a5c0436edcb19ab70
[ROCm/clr commit: fa66140ee5]
* Disable device side malloc
Currently device side malloc is not working and takes excessive
device memory.
Disable it for now until a working malloc is implemented.
Change-Id: I1ad908c1c53a83752383b4be96688a848642c699
[ROCm/clr commit: d556c3425b]