Граф коммитов

1579 Коммитов

Автор SHA1 Сообщение Дата
Dalibor Stanisavljevic b155d429c9 SWDEV-361376 - Add events to python interface
- Implement context manager event class for easier usage instead of having 4 different
  APIs.
- Add support for with statement for easier cleanup.

Change-Id: I396947a93d3f04efc068e17804eab12eefa97cf0
Signed-off-by: Dalibor Stanisavljevic <Dalibor.Stanisavljevic@amd.com>


[ROCm/amdsmi commit: 23160fa8e0]
2022-11-10 16:57:49 +01:00
Dalibor Stanisavljevic 35196b25bd SWDEV-361376 - Added additional API calls to the python interface
- Added APIs for "Supported Function Checks"
- Added first half of the APIs for "Unsupported Functions In Virtual Environment"

Change-Id: Ia83303e6b7ae65aada608bd9ca5f56fd33e4ef34
Signed-off-by: Dalibor Stanisavljevic <Dalibor.Stanisavljevic@amd.com>


[ROCm/amdsmi commit: a6efdd32ed]
2022-11-10 16:57:49 +01:00
Bill(Shuzhou) Liu 2d0fb9744a Init the amdsmi using rocm_smi for libdrm
Init the ams_smi using the rocm-smi, which makes the GPU discovery
consistent with or without libdrm.

Change-Id: Ic714781f8ce791451b0c057621525926edb7f5ee


[ROCm/amdsmi commit: b34b7451e8]
2022-11-07 11:09:09 -06:00
Bill(Shuzhou) Liu 17fa3924d6 Fix the unit tests
Fix a few broken unit tests to handle NOT_YET_IMPLEMENTED errors.

Change-Id: If3afac0dc32f2e3e82d83bffa5906b630bb1894a


[ROCm/amdsmi commit: c8caa80405]
2022-11-04 08:53:09 -05:00
Galantsev, Dmitrii f1125780dd Cleanup tests
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 7957b63dd4]
2022-11-03 13:30:16 -05:00
Galantsev, Dmitrii 4fede3797c Cleanup CMakeLists.txt for packaging
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: c99e4e1501]
2022-11-03 12:44:23 -05:00
Sreekant Somasekharan 695cfc0102 [rocm_smi_kfd.cc] Handle return value from ReadSysfsStr function.
Return value from ReadSysfsStr function that reads cu_occupancy file
was not handled correctly. Modified the script to handle any fail conditions.

Change-Id: I3c71e0f6f288f196ed1f833e8709255c2b6e78ee


[ROCm/amdsmi commit: e9e3ba541e]
2022-10-31 12:20:06 -04:00
Bill(Shuzhou) Liu 1ae77d9ac0 The device name and vbios version is incorrect
Get the device name from rocm-smi which is not displayed properly
in some cards. Set the vibos version using the rocm-smi.

Change-Id: I138f1760cde94007cb93cad02c6d8cccbb4afa28


[ROCm/amdsmi commit: 9a92ea833f]
2022-10-28 13:03:18 -05:00
Bill(Shuzhou) Liu 33f7fba549 Fix unit test compile error
Update the unit test as header enum type name is changed.

Change-Id: Ie965462da7d46259883650b15644003cf936982a


[ROCm/amdsmi commit: a25c71b730]
2022-10-20 09:54:11 -05:00
Bill(Shuzhou) Liu d944c4e11b Update the document
The README.md is updated for amdsmi

Change-Id: Ic027476d9f6b62e8972793e78db28b12644036ea


[ROCm/amdsmi commit: 93bc47a5c3]
2022-10-20 09:25:02 -05:00
Dejan Andjelkovic 14d9160565 SWDEV-361376 - Add python wrapper
- Add generator for python wrapper
- Add interface, exception and init files
- Add CMake custom targets

Change-Id: I63c1d94fbb587387c22f559a3db79987eb214a2e
Signed-off-by: Dejan Andjelkovic <Dejan.Andjelkovic@amd.com>


[ROCm/amdsmi commit: 6064f160a3]
2022-10-20 09:24:53 -05:00
Bill(Shuzhou) Liu c68caedcbd Use doxygen to generate amdsmi API document
Change the CMake to generate the API document using doxygen.

Change-Id: I5c2fa661a66ac007f742bfbc15bdfd8d0098285d


[ROCm/amdsmi commit: 4a9bb197b2]
2022-10-20 09:24:41 -05:00
Bill(Shuzhou) Liu b546e272e0 Change the get_socket_handles and get_device_handles APIs interface
Those two APIs are changed to let the user get the handles count,
allocate memory, and then return handles to the allocated memory.

Change-Id: Ibe28a89ad188c99da6af3af1740b2b25ff22ba06


[ROCm/amdsmi commit: 2b2d11c446]
2022-10-20 09:24:31 -05:00
Dalibor Stanisavljevic bd4ff14bd0 SWDEV-353742 - Port smilib function to amdsmi
Change-Id: I99df249755a5c665a8dd1777fa82d046e139bd77
Signed-off-by: Dalibor Stanisavljevic <Dalibor.Stanisavljevic@amd.com>


[ROCm/amdsmi commit: 3daf9c1063]
2022-10-20 09:24:22 -05:00
Bill(Shuzhou) Liu cf09c187f1 Fix the compile error
The rocm_smi64Config.h is not generated which break the build.

Change-Id: I9ea43b53a20bf00a2338f96a6f49d630c60962d1


[ROCm/amdsmi commit: 7fa3b36d7f]
2022-10-20 09:24:11 -05:00
Bill(Shuzhou) Liu d83e3a8b6e Restructure the folder
Move rocm_smi related function to rocm_smi folder. Move amd_smi to
top level include/ and src/ folder. Remove obsolte oam folder.
Change the CMakeLists.txt to update folder locations.

Change-Id: I52e6be739e49f3b0545865f25364787f5985e9c3


[ROCm/amdsmi commit: 0c91ef919d]
2022-10-20 09:23:51 -05:00
Bill(Shuzhou) Liu 0b624c50d2 Support rocm-smi related device information
A few fields are added to board_info and asic_info for rocm-smi
device information.

Implement rocm-smi related fw block in amdsmi_get_fw_info().

Change-Id: I825d3e5c7feaa07a6e05386d4f1a59ebf528dfc0


[ROCm/amdsmi commit: 1ec3a2182e]
2022-10-20 09:23:41 -05:00
Ranjith Ramakrishnan 7438ed187c SWDEV-345870 - Correct install interface for new directory layout
Install interface should provide /opt/rocm-ver/include as the include path
Path /opt/rocm-ver/rocm_smi/include should be used only as  part of backward compatibility support

Change-Id: Idc1f663069356c6b1fbd492f45ef4637fc90e4eb


[ROCm/amdsmi commit: 9a650b1378]
2022-09-13 10:48:21 -07:00
Alex Sierra ca07577907 Consider invalid peer link type during topology report
Invalid peer links are labeled as N/A during topology report creation.
This invalid link type could be triggered by having a configuration
with CPU XGMI iolinks and disable XGMI peer to peer access. This can
be done by setting the driver parameter 'use_xgmi_p2p = 0'.

Signed-off-by: Alex Sierra <Alex.Sierra@amd.com>
Change-Id: Ifb09a8f3266a3f07686615dfb45781d6cfe55e83


[ROCm/amdsmi commit: 03fab6b2b6]
2022-09-06 13:47:32 -05:00
Bill(Shuzhou) Liu bfa976cf08 Port rocm-smi function to amd-smi
Port most rocm-smi function to amd-smi and add unit tests.

Change-Id: I6387a4bdaf20ead2389c99bb01d438156ccd0747


[ROCm/amdsmi commit: f1d02aca79]
2022-09-06 12:08:59 -04:00
Alex Sierra 74b423b7f0 Avoid report PCIe peer devices with CPU XGMI iolinks
Devices with CPU XGMI iolink do not support PCIe peer access. Therefore,
they should not be reported as accessible links in the topology.

Signed-off-by: Alex Sierra <Alex.Sierra@amd.com>
Change-Id: I3ee51796945dc0966200dee03886510e8f1846b7


[ROCm/amdsmi commit: 4658630d8d]
2022-09-02 09:18:30 -05:00
Ori Messinger e0c6a44916 ROCm SMI CLI: Modify Column Header
The purpose of this patch is to modify the column header of the default
'./rocm-smi' command from 'Temp' to 'Temp (DieEdge)' for clarity.

Signed-off-by: Ori Messinger <Ori.Messinger@amd.com>
Change-Id: I127a9214be97a1185c3db010f1c9176d1f412ec9


[ROCm/amdsmi commit: dfd88b593f]
2022-08-31 09:47:14 -04:00
Bill(Shuzhou) Liu 236e4e2d3e Port more rocm-smi function to amd-smi
The API support function, performance counter, process information,
topology and xgmi info.

Change-Id: I3350ec75fdd2ca1438e79134582ae83c49763056


[ROCm/amdsmi commit: 86017b799c]
2022-08-24 12:49:27 -05:00
Elena Sakhnovitch 6c8a8c5ae6 [rocm_smi.py] bugfix for non-alphanum parce issue
--showdeviceid
Fix for false-positive  "FRU is corrupted" messages,
since str(sn).isalphanum() triggers on empty struct.

--showproductname
fix script termination on non-alphanum product name

Change-Id: I78d4998e156f9b0d9f45338bed2a0d30b789e220


[ROCm/amdsmi commit: 8b2bc318eb]
2022-08-23 19:28:19 -04:00
Bill(Shuzhou) Liu 39c1c4334e Support events in the amdsmi
Port the events handling from rocm-smi to amd-smi

Change-Id: I0b4cb30a585cb2188a24be0e21c1c156b461bb1d


[ROCm/amdsmi commit: 7b92c694a0]
2022-08-23 16:49:56 -04:00
Galantsev, Dmitrii 37bdd12d8e Remove python pyc file before uninstall
I6520b51aac34060b5b90f94a016cec1827a4973f happens after uninstall, which
leaves a dangling directory under /opt/rocm/libexec/rocm_smi.
Removing __pycache__ before uninstall fixes the issue.

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


[ROCm/amdsmi commit: cd11d7530b]
2022-08-11 19:55:14 -05:00
Bill(Shuzhou) Liu 06a481c563 Add unit test support
Add gtest based unit test framework. Implement fan read/write function.

Change-Id: I83375c24b99d24d01d12bccda863a38f75f5987f


[ROCm/amdsmi commit: 98df483bef]
2022-08-05 09:55:34 -04:00
Ranjith Ramakrishnan 67436716f4 Remove the default setting of cmake install libdir from source code
Any default value if required should be controlled from outside.
For ROCM, build script is setting the value to "lib"

Change-Id: I12a2951307fe64e46a4e608476bfceb678bdc97d


[ROCm/amdsmi commit: c5159fa6d1]
2022-07-28 13:55:55 -04:00
Alexsandar Nedeljkovic f79d7838f4 Update amdsmi header to include GpuvSMI related APIs and definitions
Signed-off-by: Alexsandar Nedeljkovic <alexsandar.nedeljkovic@amd.com>
Change-Id: Iff46d724f35b52028b67ce272f800fcf820c96ac


[ROCm/amdsmi commit: 61289339d8]
2022-07-22 16:06:20 +02:00
Divya Shikre 4d175f7726 Add perf determinism to perf_level_string
This fixes the 'unknown' value being displayed
for Perf Level because of a missing mapping of
RSMI_DEV_PERF_LEVEL_DETERMINISM to its string
value.

Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: I479c2baea450f0ff61640ad81cbd4d08ad56ff8e


[ROCm/amdsmi commit: 8144dd4d8e]
2022-07-21 08:55:38 -04:00
Ori Messinger b7f6850450 ROCm SMI CLI: Force RETCODE to 0 by Default
The purpose of this patch is to set RETCODE equal to 0 by default
unless an appropriate '--loglevel LEVEL' has been set.

To allow a non-zero RETCODE value, you must use any loglevel that
is not 'warning' or 'None' (default).

You can set the loglevel in the CLI with:
--loglevel <debug/info/warning/error/critical>

Signed-off-by: Ori Messinger <Ori.Messinger@amd.com>
Change-Id: I9484a750206a3f464c59952304e72c59c3d12465


[ROCm/amdsmi commit: cbb068ccac]
2022-07-18 18:33:29 -04:00
Sreekant Somasekharan 7a8fc7efa1 Fix documentation mistake related to get memory overdrive function.
Changes made on rsmi_perf_determinism_mode_set function documentation
as well for styling consistency.

Change-Id: I09ce8139eb9cbda94352ac7725c4c9b9bb06bd59


[ROCm/amdsmi commit: aa5cba122c]
2022-06-30 08:57:52 -04:00
Bill(Shuzhou) Liu f7e5bb73d0 Load libdrm at run time
Remove the compile time dependency on libdrm. Load it at the run
time instead.

Add the headers missed from smi-lib

Change-Id: Ie1ecf293b51425b6a61c502d11a42809dc099f70


[ROCm/amdsmi commit: 5ba371f285]
2022-06-28 14:48:59 -04:00
Elena Sakhnovitch 63c35faea6 rocm_smi.py: improve error output
Match alignment of error output with general output

signed-off-by Elena Sakhnovitch

Change-Id: Id4334152f4ad5665ff37d5d47e6f7ca0107a9428


[ROCm/amdsmi commit: 5d5ba738db]
2022-06-24 12:19:43 -04:00
Sreekant Somasekharan b405977e0e Add rsmi lib function to get memory overdrive value
Change-Id: I515b51d5ce4baf966bb31714886a0d72330026bc


[ROCm/amdsmi commit: 1432e5e040]
2022-06-23 11:42:50 -04:00
Elena Sakhnovitch d0c3b5c1e9 [rocm_smi.py] Hiding unnecessary N/A lines
Hiding not applicable/unsupported sensors under INFO

Signed-off-by: Elena Sakhnovitch
Change-Id: I89c80ca7c6365ef3a2dd751a575ddf90044c8a2e


[ROCm/amdsmi commit: 0f88f59ddd]
2022-06-23 11:02:13 -04:00
Kent Russell 8a9c88c35e rocm_smi.py: Handle corrupted serial number
If the FRU has been corrupted, then the serial number will come in with
any manner of random bytes, which will cause decode() to fail
spectacularily. Check that the serial returned by the kernel is
alphanumeric, and print to the error log if not (then continue to the
next device).

Change-Id: If4f35b140b6089e02729b1490ed6b48d614a122a


[ROCm/amdsmi commit: 6b6e840337]
2022-06-16 17:29:08 -04:00
Elena Sakhnovitch 6e9f35e1c6 [rocm_smi.py] error feedback improvement
Cleaning overally verbose error reporting system.

Signed-off-by: Elena Sakhnovitch
Signed-off-by: Sreekant Somasekharan
Change-Id: Icc96086810b8dcfc426848b8c349a2572026c3bd


[ROCm/amdsmi commit: 4dd2398f3d]
2022-06-16 14:32:13 -04:00
Ranjith Ramakrishnan 4ff7dc0c49 SWDEV-321112 - Use GNUInstallDirs
Use GNUInstallDirs variables to determine the location of LIBDIR, BINDIR, INCLUDEDIR, DOCDIR

Note that CMAKE_INSTALL_LIBDIR is overriden, since the default for RHEL
is lib64, but ROCm packaging wants it to be lib always. Distros or users
can easily override this.

Change-Id: I616152ccd2bc1f5a60bffa940312b38ca6e88c04


[ROCm/amdsmi commit: b72c464ac0]
2022-06-16 13:22:49 -04:00
Ori Messinger 99b2e41906 ROCm SMI CLI: Fix setClockRange Error
This patch changes the error handling for setClockRange.

When a device does not support modifying a clock type (sclk/mclk),
an error message is printed through the python CLI.

Signed-off-by: Ori Messinger <Ori.Messinger@amd.com>
Change-Id: I37d9ea4189b1ca81e5deaab5efa6cfa4901b89b3


[ROCm/amdsmi commit: 2b8d0ad70f]
2022-06-15 15:47:51 -04:00
Bill(Shuzhou) Liu 325173a20d The init version of amd_smi
The init version includes the amd_smi.h header, an example uses the
amd_smi, folder structure and CMake files.

Add the support to libdrm.

Change-Id: I779e55e4cf9491c61dc226a30d24e96be9bc6016


[ROCm/amdsmi commit: 91ad08aa65]
2022-06-14 09:14:24 -04:00
Bill(Shuzhou) Liu cff55d1a6f Remove python pyc file when uninstall rpm
Remove python pyc file when uninstall rpm.

Change-Id: I6520b51aac34060b5b90f94a016cec1827a4973f


[ROCm/amdsmi commit: 42f11bdd63]
2022-06-09 09:00:38 -04:00
Divya Shikre fdeb60d881 Print log when PIDs dont use any GPU device.
showpidgpus prints 'none' when no GPU devices are
being used by the running process. Adding a fix
to print a relevant message.

Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: I165a6644a76c8e1c3c3cad676dcfd41eb1c4724f


[ROCm/amdsmi commit: dcab886394]
2022-05-31 16:17:42 -04:00
Elena Sakhnovitch ccf3ac2b15 [rocm_smi.py]: shownodesbw fix for non xgmi
Improve error output for non-xgmi nodes bandwidth

signed-off-by: Elena Sakhnovitch
Change-Id: I833970d3200a75c7639d33bf19e0e83afe176c8d


[ROCm/amdsmi commit: 44ea49eb01]
2022-05-24 16:45:32 -04:00
Ori Messinger 23b3bcc038 ROCm SMI CLI: Fix --showvoltagerange bug
This patch fixes a --showvoltagerange bug, which attempts to check
the voltage curve on a device that does not have any voltage
regions in its OverDrive voltage frequency data (odvf).

Signed-off-by: Ori Messinger <Ori.Messinger@amd.com>
Change-Id: I647c30c978ffb13f6819ac3d069ee340710a7f99


[ROCm/amdsmi commit: 786f66671a]
2022-05-21 05:02:15 -04:00
Ori Messinger cf61df76ad ROCm SMI CLI: Fix setPowerOverdrive restPowerOverdrive Bugs
Fixes bug in the 'setPowerOverdrive' function which mishandles
GPUs with secondary dies. Secondary dies have a default power cap
of 0W and cannot be changed, so they are now skipped.

Fixes bug in the 'resetPowerOverdrive' function which incorrectly
resets the wattage to the current value.

Signed-off-by: Ori Messinger <Ori.Messinger@amd.com>
Change-Id: I483fa3f58b1fa44a3bf7bae3b52c59ce523ae152


[ROCm/amdsmi commit: 4298cbb400]
2022-05-21 05:01:32 -04:00
Divya Shikre 92657b2380 Fix mem leaks observed while running rsmitst
1.  Memory allocated for handle was not deleted
when no variant, subvariant or supported function
was found
2. handle->func_id_iter address was set to 0
before delete[]

Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: Iab50fdfbe03eec8e6fd0e84e03bd2c47e645b3d8


[ROCm/amdsmi commit: b23cfc0e82]
2022-05-18 14:31:44 -04:00
Divya Shikre f4e33b90c9 Update get_frequencies to handle failures.
Show an optional debug log (RSMI_DEBUG_BITFIELD=2) to
the user in the following scenarios:
1. If more than one current frequency is found
2. If frequencies are not read in increasing order of
   their value
If current frequency is not available, index for it is
set to -1, values will not have * next to it in the
output. This will also be handled in rocm_smi.py.

Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: I477ec065f7513c8045d6392f12ef6cb835a6b8f6


[ROCm/amdsmi commit: afe996c2ed]
2022-05-11 15:33:15 -04:00
Divya Shikre 3cbd1652de Add DEBUG_LOG macro
Add DEBUG_LOG that will optionally print error
message when RSMI_DEBUG_BITFIELD is set to 2.

Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: I6017e92d8a9e5f9861ae29ece0488d4bc198f996


[ROCm/amdsmi commit: 99be3451d7]
2022-05-11 11:03:24 -04:00
Divya Shikre 8504d79dfa Add RSMI_CLK_TYPE_PCIE to rsmi_clk_type_t
showclocks/showclkfrq does not display pp_dpm_pcie values
in sriov. This fix adds pcie clocks to rsmi_clk_type_t
where rest of the clocks are present.

Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: I6d129ae412623b369c14456ae9781b2dbceb2139


[ROCm/amdsmi commit: c9b42bff57]
2022-05-06 09:15:39 -04:00