Commit Graph

60 Commits

Author SHA1 Message Date
Ioannis Assiouras 6b9e89fe0c SWDEV-469138 - Added fix for find_package(LLVM)
Changed find_package call to prioritize the package that is
found under the rocm installation over other system locations

Change-Id: Ice93c94bbb9cdebd467d3e88bb2e4bfb7a1e76d9
2024-06-20 11:03:08 -04:00
Ranjith Ramakrishnan b9fbc98dad SWDEV-442738 - Link amdhip64 and hiprtc static library with dependent libraries
comgr, hsa-runtime and other libraries are linked to amdhip64 and hiprtc static library

Change-Id: I1940d8616dcb6a0f8633db3878327fa55b516a1b
2024-05-28 06:31:10 +00:00
Ioannis Assiouras 7d901666b8 SWDEV-445072 - Disable rocprofiler register for static libs
Change-Id: I38f4cc31ea196156aad65ca743787b27c02823ac
2024-05-28 06:31:10 +00:00
kjayapra-amd 2cfc42368e SWDEV-445072 - Fixing error on static library for hip package.
Change-Id: I96d2b9000e290739870e201b599bdef8859b971a
2024-05-28 06:28:17 +00:00
kjayapra-amd b9c65fb7ff SWDEV-445072 - Enable RTC outside of BUILD_SHARED_LIBS variable.
Change-Id: Iab9f1cb2bdf24163979e2b646bdbed3f1508b221
2024-05-28 06:28:17 +00:00
Jonathan R. Madsen d84c5ae3af SWDEV-443227 - Update hip_api_trace.cpp
- enforce incrementing the table versioning number when a table size changes outside of ifdef for ROCPROFILER_REGISTER
- add new HIP_ENFORCE_ABI entries
- update the HipDispatchTable size and bump HIP_RUNTIME_API_TABLE_STEP_VERSION to 1
- re-enable rocprofiler-register

Change-Id: Ie0cc1d8491c5640056e5dd393ea243e4dce4e8a9
2024-02-27 13:29:33 -05:00
Shilei Tian a2a8dad980 SWDEV-442719 - Set CMP0074 to NEW to make sure find_package works correctly
If a system has LLVM installed, `find_package` could choose that one
even if we set `HIP_LLVM_ROOT`. `LLVM_ROOT` is ignored because of this
CMake policy is set to `OLD` by default.

Change-Id: I18fa0453afe170c229e92d6ddc386b43eb0c44f6
2024-02-05 05:08:11 +00:00
Ajay b53fcb4d02 SWDEV-440718 - Suffix hip bin name with _6.
Link to amd_comgr_2.dll

Change-Id: I5d21af0cc91f2082099273f75ebe1c3279b6365d
2024-02-05 05:08:11 +00:00
Maneesh Gupta 4b6912031b SWDEV-1 - Temporarily disable rocprofiler-register support
Change-Id: I2e4b4c5f6c0640fc4e1378dd920b080b88583921
2024-01-16 04:15:05 +00:00
Jonathan R. Madsen 0f1fdc7794 Add rocprofiler-register support
- Add API table versioning defines to hip_api_trace.hpp
- Add rocprofiler-register implementation in hip_api_trace.cpp
  - created ToolInit implementation
  - moved some local functions into anonymous namespace
  - renamed some function to be overloads
  - made most of the initialization code templated (reduced code duplication)
  - enforce ABI
- Updated hipamd/src/CMakeLists.txt
  - find rocprofiler-register package (enabled by default but not required)
- Address review comments
  - simplify size calculation for dispatch table
  - remove setting .size field in GetDispatchTableImpl
- Fix windows build
- Do not enforce ABI on Windows

Change-Id: I08766e8a083528a1236996274bf4522e0e8a1b9f
2024-01-13 01:02:59 -06:00
Rahul Garg 956cc463bf SWDEV-439426 - Update HIP patch version reported through CMake
Change-Id: I2b32edfa18d85d49a4b96ff80ea8f60e1df5d517
2024-01-08 03:43:01 -05:00
Ioannis Assiouras fe739047e5 SWDEV-433745 - Added demangled symbol for hipExtModuleLaunchKernel
Change-Id: Ib8051fcbdf0c8c99e97c845b777d6562220701a0
2023-12-15 16:59:40 -05:00
Rahul Garg afc28b091e SWDEV-427855 - hipamd change for profiler and TF fix
This reverts commit 57cb840058.

Change-Id: Id69e47a1afd336ae1edb9c8e173be27e7b9dcc8d
2023-12-05 20:33:48 -05:00
Anusha GodavarthySurya 5e21f0c6bd SWDEV-351966 - Dispatch table for hip runtime
Change-Id: Ie4a44fa8cf1ff9c152146070bbbf6b0636d4e325
2023-11-22 01:11:19 -05:00
Rahul Garg 57cb840058 SWDEV-427855 - Revert "SWDEV-427855 - hipamd change for profiler and TF fix"
This reverts commit 3b9963c499.

Reason for revert: <Need rocprofiler changes to avoid PSDB failures>

Change-Id: I856b7ea30744f1b7bb099b6adbce2155201be539
2023-11-16 00:20:54 -05:00
jiabaxie 3b9963c499 SWDEV-427855 - hipamd change for profiler and TF fix
Change-Id: If32eb0ee152f3f46741a8277689363181c8753e8
2023-11-15 23:36:52 -05:00
jiabaxie 813907c29d SWDEV-418999 - python script to support profiler with hip versioning
Change-Id: I8f5ad81162581bf3792c2606ba8c6c3a8e0b4bf2
2023-10-11 13:46:45 -04:00
Ioannis Assiouras 31201b6e25 Revert "SWDEV-414194 - Make hip-lang available on nvidia platform"
This reverts commit 97403db468.

After changes in upstream cmake hip-lang-config.cmake will not be required on nvidia platform.

Change-Id: I711601dac1064ea17f58437da8ffbc50678eda08
2023-09-29 06:07:53 -04:00
Satyanvesh Dittakavi d7d0f11318 SWDEV-395996 - Add HIPRTC support for missing hip headers
hip headers such as hip_math_constants.h, library_types.h,
hip_common.h, channel_descriptor.h, device_functions.h, hip_complex.h,
hip_texture_types.h, math_functions.h, surface_types.h
are added in HIPRTC

Change-Id: I4a4c198449ceb609c3ff55e00b43056c1f085431
2023-09-21 03:11:06 -04:00
Jaydeep Patel a37c95d7ed SWDEV-418038 - Drop GPU_ENABLE_WAVE32_MODE from RTC.
Change-Id: Iac11f26714e8b3bae14cbf69933ef7c8c8be47da
2023-09-08 02:13:41 -04:00
Ioannis Assiouras 209525d6e4 SWDEV-415937 - Make _IMPORT_PREFIX in hip*targets.cmake point to a relative path
Change-Id: Ib0f4321f2954254d0486d741d057f182cb2481a7
2023-08-31 08:10:50 -04:00
Vikram cec579c006 SWDEV-378651 - add proper wavefrontsize link time option to hipRTC, in accordance with env variable GPU_ENABLE_WAVE32_MODE
This is a copy of http://gerrit-git.amd.com/c/compute/ec/hipamd/+/841299
Raising this here again since hipamd repo is frozen.

Change-Id: I8722ef55f78a9176e131fd5766fb11101b51f1b5
2023-08-15 00:12:31 -04:00
Ioannis Assiouras 97403db468 SWDEV-414194 - Make hip-lang available on nvidia platform
Change-Id: Ic0082d3960aadbb7ac559140b6e84bd29a75b5cb
2023-08-02 05:19:34 -04:00
Ioannis Assiouras 9b78869e64 SWDEV-404865 - Remove unused macro definitions from hip-lang-config.cmake
Change-Id: I726884d81b9cd83355f0f26306dca04256b82a4a
2023-07-28 12:27:53 -04:00
Ioannis Assiouras cb7776ef07 SWDEV-412496 - treat USE_PROF_API to always be true
Change-Id: I77cfac409215a33d11228a0f2da9ffba63c3d73a
2023-07-21 04:42:57 -04:00
ajay 09345dc7a2 SWDEV-407292 - hip-lang for windows
Change-Id: Id64bbfc8d62796b4f158e53f48273a09c928c8cc
2023-06-27 14:18:58 -04:00
Satyanvesh Dittakavi a3104c60e1 SWDEV-393060 - Address directed tests build failures with CLR
Change-Id: I76b93ee073d21ec5fae0db5a129ada89f750855d
2023-04-14 03:53:51 -04:00
Ajay 0b4f845475 SWDEV-381627 - hipamd: refactor interop files
Removal of interop files and accessing these from vdi

Change-Id: If0d6635d56dd5bc63964bb49706ca5d6ebe4abc7
2023-04-05 10:56:28 +00:00
Maneesh Gupta 88b4b6428c SWDEV-361630 - Workaround for rocfft build failure
Change-Id: Ie15e17361f2e6cd5f11e6fc1e6755c98cef7f4ce
2023-04-03 14:52:44 +00:00
Maneesh Gupta 1bc186323f SWDEV-361630 - Enable hip build
Change-Id: Icdeaeff555d46e495c3de954b614168995a82a9f
2023-03-26 15:42:33 +00:00
German b685930bee SWDEV-377991 - Rmove Liquidflash logic
Change-Id: I1c2169c1a8c7449c59cc15074af039c48fc1ef31
2023-01-19 09:58:07 -05:00
Juan Manuel MARTINEZ CAAMAÑO c391af49dc SWDEV-290637 - Specify a working directory when calling hip_embed_pch.sh
Consider the case where cmake is invoked as follows:

    cd <parent_dir>
    cmake -S<source_dir> -B<build_dir> ...

  If `WORKING_DIRECTORY` parameter is not specified in `execute_command`,
  `hip_pch.o` is created outside `<build_dir>`, in `<parent_dir>/hip_pch.o`.

Change-Id: I751f4390628315ad70c36148e09824c19c93ae9e
2023-01-09 03:17:07 -05:00
Jacob Lambert 02daeb01b4 SWDEV-370606 - Omit deprecation warnings from Werror
Comgr would like to include deprecation warnings for soon-to-be-removed
features. Therefore, when building with Comgr headers we need to
exclude deprecation warnings from Werror

Change-Id: I6c9563be3e066c493dd8e459fc07c7523e2854e3
2022-12-09 18:07:44 -05:00
Maneesh Gupta fab70a41ed Revert "SWDEV-330775 - Update search path for LLVM"
This reverts commit 3d15f9cbda.

Reason for revert: SWDEV-368704

Change-Id: I8c38b4f40285f90f7d99145b970c2a14d051d5bb
2022-11-22 09:14:24 -05:00
Siu Chi Chan 3d15f9cbda SWDEV-330775 - Update search path for LLVM
ROCm's LLVM will be moved into /opt/rocm-<ver>/lib/, teach hipcc and
hipconfig about the new location.

Change-Id: Ie7f17146771aff94c684deb22148226cbb3a2895
2022-11-14 13:31:07 -05:00
Laurent Morichetti 8ac20e5e38 SWDEV-351980 - Fix hip_prof_str.h generation
Fixed an error in the CMakeLists.txt USE_PERF_API option declaration
that was making it always disabled. Fixing this exposed an issue with
the hip_prof_gen.py script's handling of function variants (for example,
_spt functions) and new HIP_INIT_API_* macros.

Also switched the python interpreter to python3 as python2 may not be
available by default on the build system.

Change-Id: I971fc9edcc746ca63a2bdf4f540e755f9a80fe69
2022-08-18 23:15:27 -07:00
Satyanvesh Dittakavi a9935b3257 SWDEV-329802 - Refactor PCH to generate the right warp size on Navi GPUs
Change-Id: I817de9c858c152fee1f586303372820066a09dc9
2022-07-22 05:49:59 -04:00
Jeremy Newton 112b6370a5 SWDEV-335990 - Use GNUInstallDirs
This is attempt two of bf4df229c9

GNUInstallDirs is used to allow the user to customize the install paths
of HIP, rather than using hardcoded locations.

See documentation for more information:
https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html

Note that libdir must be overriden to "lib" before including
GNUInstallDirs, because by default, cmake tries to detect the libdir
path, but ROCm packaging would like to use lib by default for all
targets. This does not stop the user (or distros) from overriding.

Also note this change does no take into account the changes needed to
non-cmake files, such as perl scripts, so not all paths combinations are
necessarily functional.

Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: I521c44dc34404b136141682c2777257b23ffa6e8
2022-06-15 13:14:47 -04:00
Aakash Sudhanwa 43c650cf48 Revert "SWDEV-335990 - Use GNUInstallDirs"
This reverts commit bf4df229c9.

Reason for revert: <Breaking all the staging builds. this is breaking components which are using find_package(HIP)>

Change-Id: Ic7340fb461a5efdd170a0988731e0885538a11d6
2022-06-07 18:18:06 -04:00
Jeremy Newton bf4df229c9 SWDEV-335990 - Use GNUInstallDirs
GNUInstallDirs is used to allow the user to customize the install paths
of HIP, rather than using hardcoded locations.

See documentation for more information:
https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html

Note that libdir must be overriden to "lib" before including
GNUInstallDirs, because by default, cmake tries to detect the libdir
path, but ROCm packaging would like to use lib by default for all
targets. This does not stop the user (or distros) from overriding.

Also note this change does no take into account the changes needed to
non-cmake files, such as perl scripts, so not all paths combinations are
necessarily functional.

Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>
Change-Id: Iae80f47c47ea0a74fc1c221b6eea82b557601394
2022-06-06 23:43:05 -04:00
haoyuan2 cb4aabd285 SWDEV-328274 - Move DLLMain from VDI layer to HIP/OCL layers
Change-Id: Ibd3388f0981672cd209d7370f8a28b2883abdea2
2022-04-12 11:00:20 -04:00
Christophe Paquot cd447a5aaa SWDEV-322620 - Virtual Memory Management APIs
Adding skeletons.
Implemented:
- hipMemGetAllocationGranularity with basic granularity
- hipMemGetAllocationPropertiesFromHandle
- hipMemCreate

Change-Id: I4bd2c75fae45d6a057efcad19d1d3c9715e9ae67
2022-04-08 11:38:51 -04:00
German Andryeyev 539d264eb0 SWDEV-311271 - Initial mempool implementation
HIP_MEM_POOL_SUPPORT controls memory pool support in runtime.
Currently it's disabled by default. The initial change doesn't
include: IPC, MGPU, virtual memory alloc, suballoc, defragmentation,
internal dependencies.

Change-Id: Ibed8528ebec698b045ebb247e49c0ecd6e587ed7
2022-03-31 09:21:37 -04:00
Maneesh Gupta 267e1c5f14 SWDEV-325869 - Update ASAN linker options
Change-Id: Ia81a966acb7b0a7cdd0915793071ac222c5df7b0
2022-03-09 22:24:33 -05:00
Saleel Kudchadker 65cb94a720 SWDEV-301667 - Treat build warnings as errors for GCC
Change-Id: I5f9633a94d064969103af7c946c879cacd33efde
2022-03-03 03:04:52 -05:00
cjatin e6c0086d1c SWDEV-308763 - Make hiprtc a separate lib and rewrite it using comgr
Change-Id: I28ac50ec897accb2a2b4590d3c25965d907426fb
2022-03-03 02:34:02 -05:00
anusha GodavarthySurya 1564f2cd77 SWDEV-306833 - Refactor HIPEvent IPC code
Change-Id: I118e41ac843d14fa3b42b4eb538c5d112dff1c03
2021-12-02 12:20:40 -05:00
shadi e5a8719417 SWDEV-310910-add-property-details-in-dll
Signed-off-by: shadi <shadi.dashmiz@amd.com>
Change-Id: Ifd373cbb16398416c56511148b14e9c2fe11ad9e
2021-11-22 09:50:04 -05:00
pghafari c5acbf2685 SWDEV-245531 - GLInterop: removing GL dependency
Change-Id: Ie8d794fff9518704d008b71c4d108fb01ea3fcb5
2021-10-06 16:53:49 -04:00
anusha GodavarthySurya 63cd524f1d SWDEV-287830 - Remove hardcoding of /opt/rocm path
Change-Id: I3b654f46d8867651734804f19a4456e17ada740d
2021-10-05 07:38:01 -04:00