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
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
This provides the required information for CMake to bootstrap
HIP language and runtime support. In particular this file
is consumed by CMake during HIP compiler detection to
determine the required flags needed for compilation and
linking.
Initial design was discussed in #2158
Add copyright / license header
Change-Id: I10acb860bf6291b2deb6b678e6e916faa7c82c2a
HIP_VERSION_GITDATE won't be defined when git isn't
installed. This will lead to building failure of
deviceLib.hipVersion. When git isn't installed, set
HIP_VERSION_GITDATE as 0 by default.
Change-Id: Icf5763449ccec833d9efda90ffe3a86fb53bdb82
1.Rename include/hip/hcc_detail/ as include/hip/amd_detail/
2.Rename include/hip/nvcc_detail/ as include/hip/nvidia_detail/
3.Create __HIP_PLATFORM_AMD__ to replace __HIP_PLATFORM_HCC__
4.Create __HIP_PLATFORM_NVIDIA__ to replace __HIP_PLATFORM_NVCC__
After hcc_detail, nvcc_detail, __HIP_PLATFORM_HCC__ and __HIP_PLATFORM_NVCC__
have been removed from upstream, they will be removed from hip runtime.
Change-Id: I1ae457effd739d6c25bca203c1724b026be21fce
Remove hip-hcc codes from hip code base
Simplify hip CMakeLists.txt to exclude hip-hcc
Simplify cmake cmd for hip-rocclr building
Some minor fixes
Change-Id: I1ae357ecfd638d6c25bca293c1724b026be21ecd
Currently all the logic checks if __HIP_ENABLE_PCH is set, so setting it
to OFF will still enable PCH.
Switching __HIP_ENABLE_PCH to be a CMake option will enable correct
build behaviour.
Change-Id: I77a663589ffb5f2595c6ad3d144eb9466adcf250
JIRA : SWDEV-234471
With this change compilation of the ibamdhip64 to be decied by arguments to build_hip_on_rocclr.sh file
build_hip_on_rocclr.sh -r (current) shall conitnue to create libamdhip64.so;
build_hip_on_rocclr.sh -r a (new) shall create libamdhip64.a
other options remain the same
Changed the targets according to requirement of stage2 dependencies.
Changed find_lib with find_package
Adpated the review comments
Change-Id: I719918f73ab33cd8031a32db6fe9b8adaa1b4b87
Git may not be available, and this may not be a git checkout, as would
happen in a release tarball. Doesn't really attempt to get a nicer
version formatting if some of the git subcommands fail.
Change-Id: Ib568cd1310983a43f2664ded72528d7e41f554c0
find_package should now be the only way to import ROCclr. Also update
the build example comment.
The build scripts used 2 custom variables to manually specify the
build and source directories for where to find VDI. Once renamed to
ROCclr, these conflicted with the variables automatically set by
find_package(ROCclr). These hacks tried to satisfy this intermediate
step to try satisfying commit ordering problems to get through PSDB.
The INSTALL.md documentation should also be updated, but it's
completely missing any mention of ROCclr now, and still gives
directions for hcc.
Change-Id: I6fc94b6cb36241a9d4f22d24e49523367f803461
Support performance tests while direct tests commands keep unchanged.
To build performance tests, run "make build_perf".
To run all performance testis, run "make perf".
To run specific tests, for example, run
/usr/bin/ctest -C performance -R performance_tests/perfDispatch --verbose
To run individual test, for example, run
performance_tests/memory/hipPerfMemMallocCpyFree
Change-Id: I168c1b9ef1ec21b392d48648d0c71e8fbd37d57b
The build should never touch the source directory, and only write
generated files to the output directory.
Also track the dependency with a custom command and target, as is the
normal method for dependencies on generated files.
Change-Id: I9d835256c643aeef241d26ca05ab390ebba65111
1. Enable versioning for HIP libraries
2. Enable RUNPATH on HIP libraries to find ROCm dependencies
3. Control HIP package install using CPACK_INSTALL_PREFIX
Change-Id: I9096da56592e9c78cdba329011f6e1bae99adaa2
This is charrypick of 9ead991784
and https://github.com/ROCm-Developer-Tools/HIP/pull/2009
Fix cmake config file
Removed cmake target files under packaging directory.
Merged cmake config .in files for HIP-Clang and HCC as one.
Use cmake generated target files in both install and packaging.
This makes cmake config file consistent for make install and
make package.
Let device side malloc/free return nullptr and trap
Change-Id: I448f3ea2d4934648089bad371debc203f895cba6
Removed cmake target files under packaging directory.
Merged cmake config .in files for HIP-Clang and HCC as one.
Use cmake generated target files in both install and packaging.
This makes cmake config file consistent for make install and
make package.
Change-Id: Iae1f8ccb5b39c29f54297edf1c5df62eb5a0253d
Review comments - generate hiprtc lib everytime when HIP_PLATFORM is hcc
Changes for hip-clang
Removing pre processor directive to simplify
Change-Id: Id38ab368362b58ee0458baeb8051fea709ae6bba