Commit Graph

16 Commits

Author SHA1 Message Date
Chris Freehill 3a9d14bb66 rocr: Add hsa_amd_portable_export_dmabuf_v2
The original version of hsa_amd_portable_export_dmabuf() did not
consider the conditions under which a dmabuf could be shared.
In the new version (hsa_amd_portable_export_dmabuf_v2()), the caller
can specify the flag HSA_AMD_DMABUF_MAPPING_TYPE_PCIE, which means they
want to share the dmabuf over PCIe. In that case, the new code will check
that if it is a PCIe GPU and it is not in a XGMI Hive then if
large-BAR is not supported, we will return an error.
2025-06-09 15:42:58 -05:00
Saleel Kudchadker 57c0c643ce rocr: return preferred SDMA engine mask
- Add a new AMD extension API to return preferred SDMA engine mask.
This can use used in conjunction with copy_on_engine API to get
optimal bandwidth.
2025-04-22 13:28:38 -07:00
Cheruvally, Aravindan 20e6c87a09 Enable/Disable rocprofiler-register pkg dependency based on build type (#30)
Co-authored-by: Yat Sin, David <David.YatSin@amd.com>
2025-02-20 11:07:35 -05:00
Ranjith Ramakrishnan 3be9c49b63 CMake: Add package conflict for the deprecated package hsakmt
For debian use cases, package conflict is required to remove the
deprecated package during package upgrade Also removed the duplicate
setting of package obseletes in RPM usecase.
2025-02-07 11:57:32 -05:00
sonadeem ff01f62777 cmake: Fix BUILD_SHARED_LIBS option and README for it
BUILD_SHARED_LIBS is a global flag so we don't need to set a default
option for it in both libhsakmt and hsa-runtime, only the top level
CMakeLists file. Also updated README to reflect that libhsakmt is
always built statically and gets linked to libhsa-runtime.

Change-Id: I1511f68a268032bec9758bc731d8074f33ec980f
2025-01-30 14:17:27 -05:00
David Yat Sin 0aebe7f3d0 Set default build to shared libraries
Change-Id: I73eeac3652a69a71b2c0dc2daeabc9af2c0cfd14
2025-01-29 21:24:59 +00:00
Tony Gutierrez 8a38f121ea rocr: Add WaitMultiple to core Signal
Replaces WaitAny with WaitMultiple to more closely align with the
underlying driver API for waiting on multiple events.

WaitMultiple adds a single parameter, wait_on_all, to the WaitAny
interface providing a single function for waiting on multiple
events when we only need AND and OR semantics for the signal
checking logic.

Change-Id: I68a4a45d48151d9d69aef02fd8f7263b9e6c0e75
2025-01-27 09:21:43 -05:00
Ranjith Ramakrishnan 2970545ded Correct the provides field of hsa-rocr and has-rocr-devel package
runtime and devel packages are providing the hsakmt packages. Only devel package need to provide the same
Change the package replaces/obsoletes field accordingly

Change-Id: Ia1a4f128a1f6928faf57faee5f301a77c21acca2
2024-11-08 13:51:10 -05:00
Ranjith Ramakrishnan f27ae44b8c cmake component grouping should not be ignored
In static build, the dev and binary components are grouped to generate static package
Removed the line that was ignoring the component grouping

Change-Id: Ie0ca9db109f2002891260985634f2e6b1ea7f236
2024-10-01 14:22:21 -07:00
Shweta Khatri c30ff893a6 Add rocprofiler-register dependency to build
Ensure rocprofiler-register is linked and added to DEB and RPM package dependencies.
Github ticket - https://github.com/ROCm/ROCm/issues/3654

Change-Id: Iaaaca8bfa81ca33da147673ef1be798109b70aa5
2024-09-19 19:44:53 +00:00
Chris Freehill a676d8639c Support for not building ROCr
Add cmake variable BUILD_ROCR so that user can elect to not
build ROCr.

Change-Id: I73bd28cde9430ba86aed50fb88ec2e42b3443dbb
2024-09-05 23:27:54 -04:00
Chris Freehill 7e13b9e62f hsakmt: Fix ROCr static lib build in new layout
Change-Id: Idc71524924b96a44d63be9b1d0fccbe0e328d96e
2024-09-05 10:26:06 -04:00
Chris Freehill bdefad8028 Add PROVIDES "hsa-rocr-dev,hsa-ext-rocr-dev" for RPMs
Change-Id: If2c4ef2dfdb89d4f2287b81e421815b27d0bcfb9
2024-07-09 22:51:32 -05:00
Chris Freehill 9830e32e7a Fix hsakmt-roct-devel REQUIRES/PROVIDES CPack handling
Change-Id: If8bac85f2f7a23bce1b967fcec25216603b4c7bd
2024-07-03 16:46:00 -05:00
Chris Freehill 4474dcff2c Add preinstall script for build_hsa.sh
This is to fix the situation where libhsa-runtime exists in
/usr/lib. The preinstall script will check for this and ask
the user if they want to delete the old version, or else
abandon install.

Change-Id: I0976b6ec95b9752c95031f1a73fc49a150b02b23
Signed-off-by: Chris Freehill <cfreehil@amd.com>
2024-06-25 12:50:03 -05:00
Chris Freehill 662f6817d7 Changes to build ROCr & thunk (optionally tests) in rocr-runtime repo
Create a new top-level CMakeLists.txt file to control building thunk
and ROCr. kfdtest and rocrtest are built separately.

Most of the cmake code that existed for thunk, ROCr, rocrtst and kfdtest
still reside in their respective CMakeLists.txt files, except the
CPack packaging directives which have been moved to the top-level
CMakeLists.txt.

Change-Id: I1a537359029504af8b1abb324bc6f0d75d98471e
2024-06-24 14:26:21 -05:00