Commit Graph

71 Commits

Author SHA1 Message Date
Galantsev, Dmitrii 970cc3e72a Update CHANGELOG.md and README.md for ROCm 6.2
Change-Id: If062cb23290469beef0b04a146c485602377be5d
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: bd9901324c]
2024-06-26 17:40:59 -05:00
Galantsev, Dmitrii 9a2806ac95 SWDEV-452795 - Disable RAS plugin, fix XGMI
RAS plugin loaded rocm-smi which is in conflict with amd-smi library

Main source of grief was the map 'devInfoTypesStrings' that is defined
in both rocm-smi and amd-smi

We assume that rocm-smi would get lazy-loaded by RAS library and
overwrite symbols defined in amd-smi. devInfoTypesStrings in rocm-smi
contains different number of elements, the enums are also different.
RDC relies on amd-smi's enums.

One such enum is kDevGpuMetrics:
  rocm-smi: kDevGpuMetrics = 68
  amd-smi:  kDevGpuMetrics = 75

Example of overlapping map definitions:

  $ objdump --dynamic-syms /opt/rocm/lib/libamd_smi.so | grep devInfoTypesStrings
  00000000003c4980 g    DO .data.rel.ro0000000000000008  Base        devInfoTypesStrings
  00000000003db830 g    DO .bss0000000000000030  Base        _ZN3amd3smi6Device19devInfoTypesStringsE
  $ objdump --dynamic-syms /opt/rocm/lib/librocm_smi64.so  | grep devInfoTypesStrings
  00000000003dc590 g    DO .bss0000000000000030  Base        _ZN3amd3smi6Device19devInfoTypesStringsE
  00000000003c9c68 g    DO .data.rel.ro0000000000000008  Base        devInfoTypesStrings

Change-Id: Ib2f2db32b6abd7ebe84e7807c25581461eb86bae
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: d85657e5f2]
2024-06-26 03:42:07 -05:00
Galantsev, Dmitrii 3132f91d38 SWDEV-468423 - Install authentication scripts
Change-Id: I4289fa546bf44861c18f71e156c84a4f7dd4a2ed
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: a885944d97]
2024-06-18 17:20:12 -05:00
Galantsev, Dmitrii 8b317a6490 Add rocprofiler plugin
Rename ROCR -> Runtime and ROCP -> Profiler

Change-Id: If90953da8fa5d695b681813dad4a3e7ec26a9c7e
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 234b2d835b]
2024-05-07 04:39:39 -05:00
Galantsev, Dmitrii 0ba8f5cf12 Fix runpath for rdci and rdcd
Change-Id: Ic131e9a5abfdf26f2b8e78799fe0e3450171d20d
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 796435c568]
2024-05-07 04:39:39 -05:00
Galantsev, Dmitrii b517730e57 CMAKE - Use ADDRESS_SANITIZER env var
Change-Id: I4727120de2f9d7bded8c24033c252ede718831fc
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 0c8827c4b7]
2024-04-24 23:04:25 -05:00
Galantsev, Dmitrii 028355dff0 SWDEV-439576 - rocmsmi -> amdsmi
- Migrate to amdsmi library
- NOTE: raslib still uses rocmsmi
- Remove unused rocmsmi service
- Remove unused RDC client code
- Remove RSMI calls from protos/rdc.proto

Change-Id: Ifc34a264c506b0ec5792307ee56b34526268762d
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 9702d0f2d7]
2024-04-09 20:19:28 -05:00
Ranjith Ramakrishnan 285cafc0df Start rdc.service after installing the rdc package
The starting of rdc.service was done in preinstall scripts. It should be started after installing rdc package.
Moved the functionality to postinstall scripts

Change-Id: I9a8c733beea43f95474b990a35a431db287b9a8e


[ROCm/rdc commit: b09eede016]
2024-03-12 13:30:27 -07:00
Galantsev, Dmitrii 3c18db8861 SWDEV-444700 - CMAKE - Fix RUNPATH
These RUNPATH changes make it so libraries can be found without setting
LD_LIBRARY_PATH.

Mostly tested on installed RDC binaries and libraries. The
build binaries should also work.

Change-Id: Ifd908a5b61d24dfcbb1d08d21b4ee830156d8643
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 32806681ca]
2024-02-13 16:56:28 -06:00
Galantsev, Dmitrii d4308e5175 Upgrade gRPC v1.59.1 -> v1.61.0
Change-Id: I8a3f13dd8f264e28474bd65e92ac53f87ab7db3f
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
Depends-On: Icbb7b4a580894d78d8ef992befa26ce20fcf3309


[ROCm/rdc commit: f13a1fbea8]
2024-02-06 19:39:50 -06:00
Galantsev, Dmitrii 185245cafa CMAKE: Reduce install messages size
Change-Id: I6fa7cfe986b1de702492a96bddbfd406501bba50
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: aa5448fc16]
2024-02-06 00:31:32 -06:00
Galantsev, Dmitrii 4f32e14513 Rebuild librdc_ras.so
- Make librdc_ras.so executable

Change-Id: I715ef1d828fe4d0ecf63b8272ffeccbab280f9dc
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 70ada65079]
2024-01-17 15:19:14 -06:00
Galantsev, Dmitrii 38c60ff90b RVS: Finish initial RVS integration
NOTE: RVS Build is disabled by default due to CI build issues.

Change-Id: I1593f0fe22075a9f86f54afa3ac151e109f1f7bd
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: eaa1862a80]
2024-01-10 00:27:04 -06:00
AravindanC 413163541a SWDEV-426649 - config file rocmpath hard coding removed
Change-Id: I01df16392201cc112c7533e8c092e4e336237b0b


[ROCm/rdc commit: c661bab06f]
2023-11-23 17:31:45 -05:00
Galantsev, Dmitrii ff9f16b7b5 Upgrade gRPC v1.44.0 -> v1.59.1
Change-Id: Ib43a41c61d4028ec029a8c179a94060315870fbb
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: e579cb04b2]
2023-10-19 17:29:36 -05:00
Galantsev, Dmitrii d4440d392e Upgrade to CXX-17 gtest-1.14
Change-Id: I1c7316f151128cbc9318b226dac14950e399d2c7
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 8f9a6796f1]
2023-09-28 12:54:49 -05:00
Ranjith Ramakrishnan 52187e010d SWDEV-366827 - Disable file reorg backward compatibility support by default
Change-Id: I9c4201d7786be2e3f77bc1d4d15887741ba59ec5


[ROCm/rdc commit: 2e096d9009]
2023-08-07 09:25:00 -07:00
Ranjith Ramakrishnan 1bdd193581 SWDEV-310152 - Removed the RUNPATH setting in source code
Use the RUNPATH provided by build scripts

Change-Id: Ib5b3f689dc20aeecf6974281625865fe650bfa72


[ROCm/rdc commit: c82fdeab8d]
2023-05-30 16:17:08 -04:00
Ranjith Ramakrishnan 068850c8dc SWDEV-383221 - Set the default value of ROCM_HEADER_WRAPPER_WERROR to OFF
Using wrapper header files will result in #warning message by default

Change-Id: If5847e1b03523251238018b2cf0725b302619963


[ROCm/rdc commit: bf49b88866]
2023-05-08 20:45:08 -07:00
Galantsev, Dmitrii fe28405d3a CMAKE: Fix RPM version
before fix:
CPack: - package: ... rdc-0.6.0-local.9999.el9.x86_64.rpm generated.

after fix:
CPack: - package: ... rdc-0.6.0.50600-local.9999.el9.x86_64.rpm generated.

Change-Id: I684816f3b4cad787eec6abbb40598d05c89d4f5d
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 418167b43e]
2023-04-18 17:41:37 -04:00
Galantsev, Dmitrii a337dc062b SWDEV-392942 - Disable rocmtools
Temporarily disable rocmtools because of hsa_shut_down issues

Change-Id: I5e8b6729b8200ccdd5c399862bfc632ba69f884c
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 90e824c63b]
2023-04-05 13:20:19 -05:00
Ranjith Ramakrishnan ade4945ad4 SWDEV-366831 - Compile time flag to switch between #warning and #error message
Using backward compatibility paths will provide an #error message. Compile time option added to enable/disable the #error message.
Disabling the same will provide a #warning message

Change-Id: I45f987b572a306036a72525d2b90d366459117ad


[ROCm/rdc commit: f962d0959a]
2023-03-10 13:19:00 -08:00
Galantsev, Dmitrii 4091faf4f4 SWDEV-376779 - Fix linking for rdctst
Ieb198ad96e26e89b09cb85986214a5b1451b17a6 broke linking
for rdctst and rdcd by removing "../lib/rdc" path.
This change adds it back and makes the paths more visible.

- Link librdc_ras and librdc_rocp to rdctst
- Add longer RUNPATH for rdctst to link rdc libraries

Change-Id: Id4f128c217a6de8bb67df6750ecafdb96545811b
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: fc097d44ff]
2023-01-11 19:40:59 -05:00
Galantsev, Dmitrii 5c803f6b03 SWDEV-352414 - Fix gRPC linker issues
- Replace gRPC library with gRPC package
- Relax RUNPATH
- Make LINKER_FLAGS global

gRPC package includes its dependencies:
SSL, UPB, ABSL, and etc.

Change-Id: Ieb198ad96e26e89b09cb85986214a5b1451b17a6
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 3e4c55ec6c]
2023-01-04 18:50:07 -06:00
Galantsev, Dmitrii eccb4e202c Add rocmtools support
This commit adds integration with ROCmTools

Additional changes:
- Fix DEB and RPM installation issue when systemd is not present
- Fix typos in rdc.h
- Wrap negative values in parentheses in rdc.h
- CMAKE: Improve rocm_smi searching
- README: Improve formatting, add info about ROCmTools

Metrics added: 700-714
Metrics can be listed with `rdci dmon --list-all`
Majority of the metrics are only supported by Instict (MI) series GPUs
700 RDC_FI_PROF_ELAPSED_CYCLES should be available on most devices
See README for more information

Change-Id: I907d3eacdc92fc5588ca6c76c2fa1ce0ad900770
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rdc commit: 861a843ed7]
2022-12-16 12:19:59 -06:00
Galantsev, Dmitrii 2b89ab397c Improve CMake and relocate tests
- Respect CMAKE_INSTALL_PREFIX and ignore RDC_CLIENT_INSTALL_PREFIX
- Move example and rdctst from rocm/bin to rocm/share/rdc
- Add README for examples

Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
Change-Id: I0b1d996d206327fd1b51ac6e82d548829bdb1570


[ROCm/rdc commit: f6efd7fbf6]
2022-10-27 13:49:54 -05:00
Galantsev, Dmitrii 9ff80828e5 Compile rdctst and improve CMakeLists
Main CMake improvements:

* Add rdctst with -DBUILD_TESTS=ON
* Set default ROCM_DIR to /opt/rocm/
* Split rdc_libs/CMakeLists.txt into subdirectories
* Package tests into rdc-tests.deb and .rpm

Misc improvements:

* Add .editorconfig to normalize code formatting
* Add .gitignore
* Expand RPATH for gRPC to reduce LD_LIBRARY_PATH usage
* Export compile_commands.json
* Show warning and do not install gRPC if GRPC_ROOT is left as default
* Move .in files into relevant subdirectories
* Move most variables into project CMakeLists.txt to avoid redefinitions
* Normalize CMakeLists.txt formatting (4 spaces indentation)
* Rename DIAGNOSTIC_LIB to RDC_ROCR_LIB
* Update gRPC version in README to 1.44.0
* Remove gtest source
* Pull gtest from github if not installed

Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
Depends-On: I1039ef61247e3f0ff822925cc869fb0c2bf3af85
Change-Id: I879b21428e6642f19fda67092b365d8b78b7ba7b


[ROCm/rdc commit: 2c171767b3]
2022-10-07 13:58:50 -05:00
Ranjith Ramakrishnan 5d08745c53 SWDEV-345870 - Use actual header files and libraries of rocm smi rather than using wrapper header files and library softlinks
Rearranged the project name and including of GnuInstallDirs, so that GNU variables can be used

Change-Id: I85d8e69e0faf4f9f634295c3064b9f4f64f8e9b8


[ROCm/rdc commit: 3214c21e6e]
2022-09-22 13:37:58 -04:00
Galantsev, Dmitrii 0ae88bc221 Remove __pycache__ before uninstall
`__pycache__` might be created when a python script is ran. Which
prevents `rpm -e` and `dpkg --remove` from completely removing the
application. This patch removes `__pycache__` early in the uninstall
process.

A similar issue is resolved in:
rocm_smi_lib Change-Id: I695bd085d4a43b678b563b4c35f6d2e8ddfa7d7c

Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>
Change-Id: I9fe0cd61570c2bd83cf9a45c95837ee6ad11e84b


[ROCm/rdc commit: 69a5a1d6bc]
2022-08-15 17:23:19 -04:00
Ranjith Ramakrishnan 3df8b88ca6 File reorganization with backward compatibility
SWDEV-291455 -  Binary , header files and libraries installed in bin,include and lib folder under /opt/rocm-ver
Prebuilt ras library with updated search path
cmake config files in lib/cmake/rdc
grpc,sp3,hsaco and private libraries installed in lib/rdc
config  installed in share/rdc
authentication and python_binding installed in libexec/rdc
Backward compatibility added for header files and libraries

Depends-On: I3f3d192935923f71737b3fe55ded536654a73dd7
Change-Id: Ia1a6cadc59034b155631a1ee5fdbe692d2a8a71b


[ROCm/rdc commit: 52a3463147]
2022-08-04 23:42:42 -07:00
Ranjith Ramakrishnan d8f996d16d SWDEV-321112 - Use GNUInstallDirs
Use GNUInstallDirs variables to determine the location of DOCDIR

Change-Id: I12b016bc1fe66afd92478c3a940093a4b35de0dc


[ROCm/rdc commit: 23ac479cbd]
2022-06-08 09:05:17 -07:00
Bill(Shuzhou) Liu 843ba8f3b8 Install License file under /opt/rocm
Change-Id: Ifbb7edddfd5eda173039399c47f2d20f813f1710


[ROCm/rdc commit: 346eb5981d]
2022-03-15 13:18:58 -04:00
Bill(Shuzhou) Liu 5e7c19624b Install libprotobuf under lib64 folder
When compile grpc on SLES, the libprotobuf is created under lib64
folder, install it to lib folder as well.

Change-Id: I9ccf2133c3b1b71e623d9009a86cf580a19e76cf


[ROCm/rdc commit: ffc5db221b]
2022-02-04 09:02:31 -05:00
Bill(Shuzhou) Liu a3c3283aa6 Add rpm License header
Add rpm License header for cpack

Change-Id: I3e8d05abe69749abe6ce28751e7da9bb229aa08d


[ROCm/rdc commit: 7eeb7f9388]
2022-01-20 13:33:08 -05:00
Bill(Shuzhou) Liu 38aaf423ca Add license file to rdc package
Install LICENSE.txt to share/doc/rdc

Change-Id: Ife9872aa745cb6fcf79976bf6453098a6594572a


[ROCm/rdc commit: 0273dd6b9e]
2022-01-18 10:50:31 -05:00
Bill(Shuzhou) Liu 6b700f8005 Support GPU memory test and compute queue test using Rocr
A new diagnostic module librdc_rocr.so is created. The
module uses Rocr to test the memory allocation, memory access
and compute queue ready status.

Change-Id: I9098f4fc3209bf381b7cb3658a4e94c2e22f2fe9


[ROCm/rdc commit: 78e2f2486b]
2021-10-21 11:01:12 -04:00
Bill(Shuzhou) Liu ed96db8cba Correct the install path of grpc
Correct the grpc install path which miss $.

Change-Id: I17736a81ee24d2abc680a3646b1536efafcb3d69


[ROCm/rdc commit: 6ab71e1a4a]
2021-10-19 17:11:35 -04:00
Bill(Shuzhou) Liu 57f1f72eb6 Add cmake target for RDC
RDC will provide cmake files exporting the INCLUDE/LIBRARY targets.

Change-Id: I8e8aeff426c45eae823d988f6473424ccf29687c


[ROCm/rdc commit: a640e5c821]
2021-09-28 13:53:44 -04:00
Bill(Shuzhou) Liu ab8edea8d1 Make RDC to respect the LD_LIBRARY_PATH pass by the cmake
The RDC override the LD_LIBRARY_PATH to force to use the current grpc
path. The change will also add original LD_LIBRARY_PATH to it.

Change-Id: I48da84c3135c6ede129c3cb9148dbb1896b652c3


[ROCm/rdc commit: bd034263d4]
2021-09-17 15:52:30 -04:00
Bill(Shuzhou) Liu 84eca4cf9e Add -g compiler option for ADDRESS_SANITIZER
Add -g compiler option for Address Sanitizer

Change-Id: I5c4a72dd06a7242715c537fc0d44770b126862d2


[ROCm/rdc commit: 6f95200387]
2021-08-03 13:52:21 -04:00
Icarus Sparry 506a3072e9 Add dependency on rocm-core
Signed-off-by: Icarus Sparry <icarus.sparry@amd.com>
Change-Id: I5783b116b098bc8ebad62a4fad407a29c80f19af
Signed-off-by: Icarus Sparry <icarus.sparry@amd.com>


[ROCm/rdc commit: 13c550d861]
2021-07-27 08:43:48 -04:00
Bill(Shuzhou) Liu ac15d50b0c rdcd process uses 100% CPU
The rdcd uses another thread to listen the GPU events. That thread
runs in a tight loop which consume 100% CPU.
The fix will add a sleep to yield CPU.

Bug: SWDEV-291576
Change-Id: I7996720aab4a80346d79b1c73ee532d2abcd93cc


[ROCm/rdc commit: 5a4bf97327]
2021-06-18 13:49:45 -04:00
Bill(Shuzhou) Liu 629962ff12 Change the CMake version to 3.15
CMake 3.15 or greater is required for gRPC

Change-Id: I15cda7b2bccb2bc1c46b3bb84eb1116a15ce32a4


[ROCm/rdc commit: ee40694cc6]
2021-04-09 15:43:46 -04:00
Chris Freehill 26081ea3cf Fix some lintian errors
Fix lintian errors related to maintainer, postinst script and
permissions.

Change-Id: I6924ff92ff5453fa7e562a6188c2c91cea87df68


[ROCm/rdc commit: 7a05145542]
2021-03-03 19:35:24 -06:00
Bill(Shuzhou) Liu a3398b4751 Create prebuild raslib package for RDC
Create a folder for prebuild raslib which contains the RAS binary
and configure files. The CMakeLists.txt is changed to include
those files.

Change-Id: I530198cff5686a19e58096c87457ab8b7c52d5f3


[ROCm/rdc commit: 3aa95b210a]
2021-03-01 15:49:01 -05:00
Bill(Shuzhou) Liu 114470e450 Change CMakeLists.txt to include the libras
The CMakeLists.txt is changed to add instructions to build raslib.

Change-Id: I0779046f28cbc7af292c83f3ae3ed7bcda5c57eb


[ROCm/rdc commit: 5b4fbe08d2]
2021-02-23 14:49:18 -05:00
Bill(Shuzhou) Liu 8a4a3124f1 Disable Autoprov when build rpm
The rdc may install third party library in its local folder. We
need to disable the Autoprov to prevent the rpm add provides
for them.

Change-Id: I18d008c2ca2ecb6bba64467d78b1f8c3a6585aea


[ROCm/rdc commit: b8746f7fc0]
2021-01-28 09:34:32 -05:00
Bill(Shuzhou) Liu cd50afa74c Install grpc lib to rdc folder
Install the grpc lib to rdc/grpc/lib and add miss libraries.

Add “--no-as-needed” and all extra grpc libraries in rdci/rdcd as
RUNPATH will only search direct dependencies.

Change-Id: I596acb2eb3a7228d703e79db64699bc20d0e7c09


[ROCm/rdc commit: 07d4d5376e]
2021-01-25 14:55:45 -05:00
Bill(Shuzhou) Liu 0370836c04 Add the Address Sanitizer Support for RDC
Change the CMakLists.txt to add the -fsanitize=address
Refer to jira ticket SWDEV-259873

Change-Id: Ie37fd661787eaea16f366b925d9a97db233cd136


[ROCm/rdc commit: ceb562d630]
2021-01-07 12:11:12 -05:00
Ashutosh Mishra 09f0196253 Adapting to rocm_smi_lib changes
The name of rocm-smi-lib64 has been changed to rocm-smi-lib
Hence updating the requisite name here for resolving installation dependency

Depends-On:  Ib37d29aedc20b610619f6921f4147b41c0eaf134
Change-Id: I4efd778b72d43ad8f0842410a94ac1e3d3b9192a


[ROCm/rdc commit: 0054349862]
2020-12-10 11:05:20 -05:00