Commit Graph

50 Commits

Author SHA1 Message Date
Ranjith Ramakrishnan 4bcccb60c9 SWDEV-291455 - File reorganization with backward compatibility
HIP installed in /opt/rocm
Wrapper header file in /opt/rocm/hip/include
Soft link for cmake and library files in /opt/rocm/hip

Depends-On: I30adccf7e6241dae12270156602d4b033ea99d93
Change-Id: If70b61020fa3ee85bf49171c842837da05191a48
2022-03-18 13:52:29 -04:00
Siu Chi Chan e70d7374ef hip-config.cmake - resolve HIP_CLANG_ROOT when the compiler is a symlink
When the HIP compiler set to a symblink that was created outside
/opt/rocm/llvm/bin, HIP's cmake would get HIP_CLANG_ROOT incorrectly.
This teaches hip-config to get clang's real path first and use that to determine LLVM's directory.

Change-Id: I6275b67f843aff256dc72cf478e575224e0cedc3
2022-02-22 11:35:58 -05:00
Ajay a5ee2d2042 SWDEV-273235 - skip clangRTlib detection in windows sample
Change-Id: I5a05479c774ce618960ae2578f46f1116b1f93ee
2022-02-15 12:44:24 -05:00
Rahul Garg bcfac99cea SWDEV-289558 - Generate hip-config.cmake on Windows
Change-Id: I00b553bcba596e882573b99cfb6894c310cf7c2a
2021-11-15 20:58:13 -05:00
cjatin aef1250a41 SWDEV-303745 - SWDEV-307757 - SWDEV-308024 - SWDEV-308834 - Find clangrt lib using find_library
Change-Id: Ia311e9f10c59f21c271e83f09fa84eb65e95105a
2021-10-27 02:08:42 -04:00
cjatin 969f31da65 SWDEV-303745 - Add new path of clangrt lib
Change-Id: I07fd48d3b72bad6f356976972fef0b20c487a53e
2021-10-17 17:06:32 -04:00
anusha GodavarthySurya 63cd524f1d SWDEV-287830 - Remove hardcoding of /opt/rocm path
Change-Id: I3b654f46d8867651734804f19a4456e17ada740d
2021-10-05 07:38:01 -04:00
Tao Sang 3452a09975 SWDEV-296812 - Fix LINK_LANGUAGE issue
LINK_LANGUAGE support has some issue in CMake versions from 3.18.0 to
3.19.8 when complex libs' dependence exists. Jump to a known CMake
version 3.20.0 where the issue is fixed.

Change-Id: I3fe6dbc35a7b14baa210df297b7885df83d28178
2021-07-28 11:34:38 -04:00
agunashe d9d9e81acb SWDEV-293742 - Update copyrights end year for hipamd
Change-Id: I08f620f84563a9214b59f1b943ed091b67229eab
2021-07-09 12:08:39 -04:00
Tao Sang 53b3c8a3fb SWDEV-288593 - Rework "hip-config only adds compile and link options to C++"
This reverts commit b01fb5d72f.
Rework to support old cmake in order to fix mathlibs' failure.

Change-Id: I605fc633ba28df4fca95ceee83671600dd3f0b72
2021-07-05 22:36:37 -04:00
Sarbojit Sarkar 165d417d60 SWDEV-293424 - Included gfx90a and gfx1030
Change-Id: I765890f3476f0983021dea722c4f771c51d53cd2
2021-06-30 23:14:56 -04:00
Anusha GodavarthySurya e420815e75 SWDEV-290637 - Migrate cmake build from hip to hipamd
Change-Id: I605fc633ba18df4fca95ceee83670600dd3f0b71
2021-06-28 06:23:33 -04:00
Rahul Garg 19c84bc604 ROCMOPS-1956 - Push restructured code to hipamd
hipamd will have AMD's ROCCLR based HIP backend implementation

Change-Id: Id7de9634519b4ce46fca71a1b61f3d5b1e3fc459
2021-06-07 21:42:44 +00:00
Robert Maynard 576af84864 SWDEV-288593 - hip-config only adds compile and link options to C++
Change-Id: Iefc7c3597fc8c8864621ad6154352c9dd56a3e74
2021-06-03 00:18:12 -04:00
Vladislav Sytchenko 815e8dd2a3 SWDEV-288814 - Remove dependency on ROCclr
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
2021-06-01 17:37:30 -04:00
Sarbojit Sarkar ed83033470 SWDEV-282405 - Fix for rocFFT build issue
Change-Id: I39d1823ac6ea1d61610b9ff9153a6d0e91426fc8
2021-04-23 01:18:56 -04:00
Tao Sang f65348cfbe SWDEV-274915 - Prevent repeatedly linking dependence
Some upstream will load hip multiple times thus Rocclr static lib  will
be linked to hip::amdhip64 many times. This will bring some unexpected
issues such as in hipBLAS. The patch prevents his happening.

Change-Id: I6bb27659f74371dae6e59c59fd6bb2022cc062ff
2021-03-02 17:33:52 -05:00
Tao Sang 4048db950c SWDEV-270973 - Add missing copyright headers
Change-Id: I6bb27650f74372dae6e29c79fd6bb2022cc062fe
2021-03-01 19:46:24 -05:00
Aaron En Ye Shi db43d7a3ac SWDEV-263964 - Add Windows CMake find_package(hip)
Modify hip-config.cmake to support building on Windows
using CMake's find_package(hip). Windows CMake will work
with Ninja Generator and inheritEnvironments clang_cl_x64.

Change-Id: I03d76b5f8d695ce50ecaacb449e4eb1c1ca49700
2021-01-25 12:52:46 -05:00
Tao Sang 8cf28aa5b3 SWDEV-257056 - Fix cyclic dependence of hip/rocclr libs
Solve upstream building failure due to the cyclic dependence.

Change-Id: Ibf34c789d5bd4278adcedba1d6e057639c258488
2021-01-21 13:00:22 -05:00
Tao Sang 8fc1ff7d4f Fix building mathlibs failure
Add back
__HIP_PLATFORM_HCC__
__HIP_PLATFORM_NVCC__

Change-Id: I1ae48678eafd849d6c25bcb204c1724b026be22f
2021-01-14 14:03:15 -05:00
Tao Sang d504a761ad Remove hip-hcc codes: Part four
Remove __HCC__, __HCC_ONLY__, __HCC_CPP__, __HCC_C__,
__HCC_OR_HIP_CLANG__, __HIP_ROCclr__ and their guarded codes.

Remove Hcc codes from directed_tests and samples.

Remove __HIP_PLATFORM_HCC__ and __HIP_PLATFORM_NVCC__ from
some files where they are not necessary.

Add deprecation notice.

Change-Id: I1ae467eafd749d6c25bca204c1724b026be21fce
2021-01-08 10:53:34 -05:00
Tao Sang 8a2b0b7424 Remove hip-hcc codes: Part three
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
2021-01-05 10:39:31 -05:00
Sarbojit Sarkar 567a95b4e4 SWDEV-262810: skip duplicate compile flag inclusion
Change-Id: I02ebfb3cbaf6ec25819de0c4952795c6cc949e4d
2020-12-20 23:26:55 -05:00
Konstantin Zhuravlyov 73fb01cb3a SWDEV-198415 - Implement Target ID Proposal
Changes from Jatin Chaudhary, Tony Tye

Change-Id: I14904920ad2356ae2098cf827b83613089d33962
2020-11-10 13:31:43 -05:00
Tao Sang 6db4976759 Make directed_test support static libs
1.Make directed_test apps linked against static libs
    of hip, rocclr, rocr, roct and amd_comgr.
    2.Remove custom_target amdhip64_static_combiner.
    3.Support EXCLUDE_HIP_LIB_TYPE <static|shared>.
    4.Simplify argument list parsing.
    5.Install rocclr when rocm is installed.
    6.Fix some original small bugs.

Revert "Revert "Make directed_test support static libs""
This reverts commit 0d1cf31eb1.

Change-Id: I918eeae94487e5e2ff5bfde083667ac65fb6e702
2020-10-26 12:39:58 -04:00
agodavar 8717a78bf7 cmake hip-rocclr as default build,change HIP_PLATFORM to amd|nvidia
Change-Id: I59d2e15b297b6ca2d5eee1a6dee642bdb01a3839
2020-10-21 07:26:14 -04:00
Rahul Garg 85715bc20f Clean up unused options
Fixes SWDEV-253092

Change-Id: Ic820c4d7bec1130978b47094f3ad9764e40e6a1f
2020-10-13 12:19:20 -04:00
Tao Sang 0d1cf31eb1 Revert "Make directed_test support static libs"
This reverts commit 36c5679efc.

Reason for revert: <INSERT REASONING HERE>

Change-Id: Ib2d1084ea21461f70f96f95c6025a08f88288357
2020-10-12 00:01:13 -04:00
Tao Sang 36c5679efc Make directed_test support static libs
1.Make directed_test apps linked against static libs
of hip, rocclr, rocr, roct and amd_comgr.
2.Remove custom_target amdhip64_static_combiner.
3.Support EXCLUDE_HIP_LIB_TYPE <static|shared>.
4.Simplify argument list parsing.
5.Fix hip_pch.o missing issue in samples' build.
6.Fix some original small bugs.

Change-Id: I30f5e65367613152ce86b80b13e1c9f2a28da803
2020-10-08 22:46:58 -04:00
Vladislav Sytchenko d5aa0f607d Revert "Revert "Merge branch 'amd-master-next' into amd-npi-next""
This reverts commit 9142674ef0.

Reason for revert: <INSERT REASONING HERE>

Change-Id: I92ceb171e31026ed1864704cef2fc1497b883ef9
2020-10-05 13:20:58 -04:00
Vladislav Sytchenko 9142674ef0 Revert "Merge branch 'amd-master-next' into amd-npi-next"
This reverts commit d7c02619d6.

Reason for revert: <INSERT REASONING HERE>

Change-Id: I53322718dadde2c98f96140b8e260ec7ee9ef721
2020-10-05 13:02:39 -04:00
Pruthvi Madugundu 5f667bf4e8 Update to the REGEX in hip-config.cmake
- Matching the output "hipcc --version" for Installed directory
  to get the llvm compiler path, wasnt done properly.
- Adding fallback for HIP_CLANG_ROOT on ROCM_PATH if defined in env
- Changed the mode of get_filename_component to DIRECTORY

Signed-off-by: Pruthvi Madugundu <pruthvi.madugundu@amd.com>
Change-Id: Ia38e234f34cabb5b419906c7094b327083292b0e
2020-10-02 13:03:49 -04:00
David Salinas 996df70de9 correct -x option in hip::device
Change-Id: I8c288e678b4357019144a024395cda1fcead61fc
2020-08-07 12:33:43 -04:00
Ashutosh Mishra a77c7e21be Adding "BUILD_SHARED_LIBS" flag to cmake files
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
2020-07-16 00:29:14 -04:00
Yaxun (Sam) Liu 0a513d8a02 Fix include path and wrapper header
Currently std::complex and some other std functions require uses to
include hip_runtime.h before any other headers to work, which is not
reliable.

changes are made in clang to fix this issue:
https://reviews.llvm.org/D81176

which requires hipcc and HIP headers to make corresponding changes.

This patch will make sure the clang change will not break
HIP/ROCclr during this transition.

After the transition is done, we can remove explicitly setting
include path for HIP-Clang and HIP header in hipcc and hip config
cmake files and rely on clang driver to set it automatically.

Change-Id: I5d226861c2560ffa6c5ab17343a43cc378048061
2020-06-09 17:37:20 -04:00
Aaron En Ye Shi 29c7c9b1c2 Add gfx908 to hip-config.cmake
Support gfx908 as part of the default AMDGPU_TARGETS. MIGraphX requires this change.

Change-Id: I692f87f27829778e04f59c9ca655c6e8cbc00abc
2020-06-04 11:00:09 -04:00
Aaron En Ye Shi d93134e727 Add compiler-rt library for __fp16 and _Float16
Similar to HCC, link with compiler-rt to support __fp16 and _Float16 type conversions in ONNX models. This should resolve SWDEV-238491.

Change-Id: Iad8dcff568831719f501f562a04023326ae8036c
2020-06-03 18:53:14 +00:00
Siu Chi Chan c414c70e8f update device library path
fix device lib directory

add missing --hip-link switch for link phase

Change-Id: I4b2eeb32648ca3cec72ec1f4e3381ce1fc0a90a5
2020-06-03 14:44:23 -04:00
agodavar 8f204466e9 Fix hip-config.cmake build error in rocBLAS
Change-Id: I097f0dac0f67bfc22e9991350bf63bc7bfa8b269
2020-05-07 12:24:20 -04:00
agodavar ba2991a38a SWDEV-233749 Added support for parallel build and link
Change-Id: Id227ea1fe7574612c33a8e6d91fc59a29490a35f
2020-05-06 14:54:39 -04:00
Payam dba0e72de2 name change vdi to rocclr
Change-Id: I06d198bbb4a499e153b290b73a92afed3553b252
2020-05-06 09:14:30 -04:00
Paul Fultz II 9227b08458 cherrypick from master branch
75a5088446
727c9f77d8

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
2020-04-24 09:32:02 -04:00
Yaxun (Sam) Liu 4e1d05c4be Fix MIOpen build failure
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
2020-04-13 23:01:31 -04:00
Aaron Enye Shi 73a5ea0f9f Create separate config files for hcc and clang
The state of HIP_COMPILER is not passing into config files, therefore config files cannot use if statements to determine dependency. For HIP-Clang, we should remove find_dependency(hcc), so we create separate config files depending on compiler path. This fixes issue in apps that uses hip-config.cmake.
2018-09-19 18:29:56 +00:00
Aaron Enye Shi 6e40ec653c Remove few hcc specific cmake for hip-clang 2018-08-15 21:53:20 +00:00
Paul 56734306ed Add host and device targets 2018-04-24 14:04:24 -05:00
Paul 7e3a2bc1eb Update for lower case hip 2017-02-22 15:18:38 +05:30
Paul 2f34d211b1 Change order of find_dependency 2017-02-22 15:18:11 +05:30
Maneesh Gupta 57f7f4660a Generate package config for cmake
Change-Id: I73a0b21361bbe29e095dc515bdc70588ec722d57
2017-02-13 16:01:50 +05:30