Commit Graph

1263 Commits

Author SHA1 Message Date
Charis Poag b6a68dd877 Fix amd-smi CLI calls returning TypeError
$ amd-smi version
TypeError: unsupported operand type(s) for |: 'type' and 'type'

---------------
Python3 --versions lower than 3.10
do not support str | None

Using typing Optional and Union, we can create equivalent logic for
str | none
and
str | list | none

Change-Id: I1f4a7ab67333914b33639dc62652881e1127411e
Signed-off-by: Charis Poag <Charis.Poag@amd.com>


[ROCm/amdsmi commit: 5c778cadf1]
2024-09-18 16:59:12 -05:00
Harkirat Gill e73ae3d79d Fix for GitHub Issue #24: Update Event Stop Behavior
amd-smi event is failing to exit as it waits for all threads to complete before exiting. Each thread has to listen for a maximum of 10 seconds prior to exiting in the current implementation.

Lowered individual listen time for _event_thread allowing for a quicker exit while still capturing all events (Looped until escape sequence detected).

Added logging for escape character, not sure if needed but helps confirm that key press was registered.

Change-Id: I916608754798f966980a558342c7c62693252d7f


[ROCm/amdsmi commit: d263b53797]
2024-09-18 14:54:40 -04:00
gabrpham fbb1071046 [SWDEV-448738] Added rocmsmi extremum command as 'set -L'
Change-Id: I997c630bd20cc61673813a2301eb5e3002619a32
Signed-off-by: gabrpham <Gabriel.Pham@amd.com>

Change-Id: Ifa884303f9a0fa058af093a23f5be449bba54f29


[ROCm/amdsmi commit: b7f779182d]
2024-09-18 14:51:01 -04:00
Juan Castillo 487fd5e1fd [SWDEV-482966/ SWDEV-482967] Removing pytest dependency + install path change
Signed-off-by: Juan Castillo <juan.castillo@amd.com>
Change-Id: I7aace93fcad18d67443e6849c10a1fbbc65d0fa8
Signed-off-by: Juan Castillo <juan.castillo@amd.com>


[ROCm/amdsmi commit: ac593f9fa0]
2024-09-18 00:27:00 -04:00
gabrpham d04eadec17 Removed _validate_positive function and replaced with _positive_int or _not_negative_int as appropriate
Signed-off-by: gabrpham <Gabriel.Pham@amd.com>
Change-Id: I01effcdf9bae31fd8bc926c5d4bdf58274838618


[ROCm/amdsmi commit: 0d4b332fe4]
2024-09-17 18:37:16 -04:00
Maisam Arif 53130a9c3c Fixed amdsmi_get_utilization_count() wrapper generation
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: Ifd59fca042c4b3b0fc53e100b6892c6b4f7b3e95


[ROCm/amdsmi commit: 639daa3d90]
2024-09-17 16:34:42 -04:00
Eisuke Kawashima efed731082 chore: unset executable permission
Change-Id: I06727774f3b1657a7955b172a40d0dfc9c76d6b9
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 1b6ec8df07]
2024-09-16 17:34:39 -04:00
Eisuke Kawashima 0bc6bd2c24 fix(python): fix comparison to True/False
from PEP8 (https://peps.python.org/pep-0008/#programming-recommendations):

> Comparisons to singletons like None should always be done with is or
> is not, never the equality operators.

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


[ROCm/amdsmi commit: 5fdcaf1248]
2024-09-16 17:34:39 -04:00
Maisam Arif a790412c95 Revert "[SWDEV-482963] [Test updates] Add new tests for p0 items - BM"
This reverts commit a599c79b8f.

Change-Id: Icf9fedaca2976b8ff1bc17aff8b598bfce18f095
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>


[ROCm/amdsmi commit: 37847165c3]
2024-09-16 16:17:16 -04:00
Maisam Arif c2b9cdfd2e Udpated License Dates
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I8ca199c129c06508bc3e23745ab5ac2d20dce928


[ROCm/amdsmi commit: 105db1afcd]
2024-09-16 16:14:47 -04:00
Broderick Gardner c8a3c9a6f3 Fix amdsmi_get_clk_freq list size
Python list slice is exclusive for the end index, so this -1 is cutting off an element.

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


[ROCm/amdsmi commit: a3b0bc5390]
2024-09-16 15:45:44 -04:00
Michael John 0f77bf659b Proper escape Windows path \include in generator.py
Change-Id: I9042de7e9cb08c247b7bf21a8de2b8cbceb483da
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: d75d127864]
2024-09-16 15:45:15 -04:00
Michael John 78d4fe59ea Use correct regex to avoid SyntaxWarning: invalid escape sequence '\.'
Change-Id: I1c6179be294bf21c0897a3abf7e8ab1d270ae238
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: d9ccc44146]
2024-09-16 15:45:15 -04:00
danzimm 0aa6bda175 Explicitly specify data_type in capture
Change-Id: I3a49ee3acc235df88c2df1d150803b2db2143aee
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 91199279b0]
2024-09-16 15:45:15 -04:00
Ryo Ficano a599c79b8f [SWDEV-482963] [Test updates] Add new tests for p0 items - BM
Change-Id: I3266ff7ab14959f1824f408a44e82b861d88d61f
Signed-off-by: Ryo Ficano <Ryo.Ficano@amd.com>


[ROCm/amdsmi commit: f34eb94ef2]
2024-09-13 22:29:45 -04:00
Maisam Arif cabbdf44cb [SWDEV-482412] Optimized PCIe Bandwidth gpu_metrics calls
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: Ib37d232b94a080e9b490dd065628d2567aaf4642


[ROCm/amdsmi commit: 787d4462fa]
2024-09-11 23:26:30 -05:00
Maisam Arif ae9d7a098c Udpated amdsmi_quick_start.py with cpus preloaded
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I4a5ca0d30d2fce3b4fa3a6a13599a18b0dd16ce7


[ROCm/amdsmi commit: 8b3d45e301]
2024-09-11 17:38:17 -04:00
Maisam Arif f63635db78 Bump Version to 24.6.4.0
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I75b6039c221ecea1e36a451d93bb52b5406bd106


[ROCm/amdsmi commit: 397d8d9339]
2024-09-11 17:36:07 -04:00
Charis Poag df9d5d3ee5 [SWDEV-483526] Fix MI3x partitions not showing all logical nodes
Changes:
- Updates to amdsmi_asic_info_t structure to include:
  target_graphics_version, kfd_id, node_id, partition_id
- Updates to amd-smi static --asic to display new
  samdsmi_asic_info_t fields
- Updates to gpu enumeration during amdsmi_init()
  to discover all logical GPUs when in a non-SPX mode
  (ex. DPX, TPX, QPX, or CPX)
 - Updates to amdsmi_get_gpu_bdf_id(..) to include
   partition_id details when in BDF or optional bits.
     - bits [63:32] = domain
     - bits [31:28] or bits [2:0] = partition id
     - bits [27:16] = reserved
     - bits [15:8]  = Bus
     - bits [7:3] = Device
     - bits [2:0] = Function (partition id maybe in bits [2:0]) <-- Fallback for non SPX modes

- C++/Python tests updated to reflect these outputs

Change-Id: I4be0ea35bb98f3109ae2ca9e82f6b21baa38de29
Signed-off-by: Charis Poag <Charis.Poag@amd.com>


[ROCm/amdsmi commit: a33e4c9e14]
2024-09-11 16:35:17 -05:00
Tim Huang 202ddc01aa [SWDEV-463402] - Support retrieving connection type and P2P capabilities between two GPUs
1. Add a API interface amdsmi_topo_get_p2p_status to retrieve
connection type and P2P capabilities between 2 GPUs.

2. Add getting p2p status test in hw_topology_read
to print P2P capability information.

3. Add below tables for cli topology sub commands:
  - CACHE COHERANCY TABLE
  - ATOMICS TABLE
  - DMA TABLE
  - BI-DIRECTIONAL TABLE

Change-Id: I199173030d4170115cea27c472958a4826e4e1bf
Signed-off-by: Tim Huang <tim.huang@amd.com>


[ROCm/amdsmi commit: 260edaa752]
2024-09-06 09:42:34 -04:00
Maisam Arif 104bf22265 Clean up unused files & Update License info
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I5b58e8fe3d9eeac207b07ce0fe4134dd717dbd90


[ROCm/amdsmi commit: 97c487372f]
2024-09-05 09:52:48 -04:00
Galantsev, Dmitrii 43a2e42521 Remove python-clang dependency
python3-clang was only used to generate the python wrapper
We now use it only within the docker image for the generator

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


[ROCm/amdsmi commit: fa4e488111]
2024-09-04 15:33:28 -05:00
Maisam Arif c343efc353 [SWDEV-450553] Added Subsystem Device ID to amd-smi static --asic
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I428b4993cca027a6eb1bb9c617fe715118a59407


[ROCm/amdsmi commit: bc4ca45862]
2024-09-04 12:51:02 -05:00
gabrpham 614c89889c [SWDEV-450553] Added gpu memory overdrive to metric function
Signed-off-by: gabrpham <Gabriel.Pham@amd.com>
Change-Id: If7bd6865d641a5a83c594a4d3c57938b1b6dc18e


[ROCm/amdsmi commit: 7d8e54d0e1]
2024-09-04 12:54:14 -04:00
Maisam Arif 53964b5b4a Fix C Library call in amdsmi_get_gpu_reg_table_info
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: Ib732ade8c0e48fdc7d09d920bca8b4fe4e773cac


[ROCm/amdsmi commit: e5569ee925]
2024-09-04 11:42:45 -05:00
Maisam Arif 37f3f625a0 Update market name device ids
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I10ce84c8466ff30e2486ed3664a9fe1b57d9c9e4


[ROCm/amdsmi commit: ae2c713d67]
2024-09-04 10:33:43 -05:00
Maisam Arif adc9b69f39 Updated cli init functions to not intersect with lib init functions
Added Quick start script to quickly test python APIs
"python3 -i tools/amdsmi_quick_start.py"
Fixed ESMI lib macros

Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I55370a0cb79d631f7f2f2b91568f089b503ebfad


[ROCm/amdsmi commit: 1efb5e9910]
2024-09-04 10:23:36 -04:00
Xiaodong Wang b276ae6c2b Fix ASAN issue in DiscoverAmdgpuDevices
I ran a test that exercised this code in dev mode and ASAN found a memory access issue due to the iterator returned by lower_bound being dereferenced unconditionally.  I believe the right fix is to check if the iterator is within the map and if not go to the else branch

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


[ROCm/amdsmi commit: 2066872297]
2024-09-04 10:14:10 -04:00
Maisam Arif 8fe8943a0e Added Example commands for amd-smi CLI
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I4a0211f7dd54de9b225e4546509134bb45c97956


[ROCm/amdsmi commit: d40e4d18a0]
2024-09-04 09:39:21 -04:00
gabrpham 62d3348c9e Changed power parameter in amdsmi_get_energy_count() to energy_accumulator
Issue linked here: https://github.com/ROCm/amdsmi/issues/38

Signed-off-by: gabrpham <Gabriel.Pham@amd.com>
Change-Id: I622236eb3f0144aefeb6c82d2713b4822bfeeb11


[ROCm/amdsmi commit: 95ca2b83a1]
2024-09-04 09:38:08 -04:00
muthusamy 0560419474 [SWDEV-481002] Fix in Update Market Names
Signed-off-by: muthusamy <muthusamy.ramalingam@amd.com>
Change-Id: I16ea6bdd70f7ed847ef56ddf99dfe66d42c7942a


[ROCm/amdsmi commit: 3c954e78fc]
2024-09-03 11:42:24 +00:00
Maisam Arif 801778d976 [SWDEV-481002] Update Market Names
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I23d129712fd7d7a0d9de73511c71a2eeeb3ec183


[ROCm/amdsmi commit: b5424c1c7e]
2024-08-30 13:31:25 -04:00
Charis Poag 31a2921b62 [SWDEV-451960] [WIP] Add Pytest
Updates:
- Added pytest to shared/pytest folder
- User can execute tests:

[pytest]
python3 -m pytest -p no:cacheprovider /opt/rocm/share/amd_smi/tests/pytest/unit_tests.py -s -v
python3 -m pytest -p no:cacheprovider /opt/rocm/share/amd_smi/tests/pytest/integration_test.py -s -v

[unittest]
/opt/rocm/share/amd_smi/tests/pytest/unit_tests.py -v
/opt/rocm/share/amd_smi/tests/pytest/integration_test.py -v

- Automatically installs pytest

Change-Id: Ia3281a9608aeeb803b91f8b83f87ff84b01037f4
Signed-off-by: Charis Poag <Charis.Poag@amd.com>


[ROCm/amdsmi commit: d9d6637cb7]
2024-08-29 10:09:29 -04:00
Oliveira, Daniel 55b88706e1 SWDEV-463401: amdsmi_get_gpu_asic_info() adds num_of_compute_units
number of compute units `amdgpu_gpu_info.num_of_compute_units` is exposed through amdsmi_get_gpu_asic_info().

Code changes related to the following:
  * API
  * CLI
  * Unit tests
  * Examples

Change-Id: Ibeb612d079ed87437a0e56124b8504098fc2dcfd
Signed-off-by: Oliveira, Daniel <daniel.oliveira@amd.com>


[ROCm/amdsmi commit: b05849dad0]
2024-08-28 10:15:07 -04:00
Oliveira, Daniel e2e63055a6 SWDEV-463399: amdsmi_get_gpu_vram_info() adds bit-width
Driver info `amdgpu_gpu_info.vram_bit_width` is exposed through amdsmi_get_gpu_vram_info().

Code changes related to the following:
  * API
  * CLI
  * Unit tests
  * Examples

Change-Id: I8abd8db7a603078b2b1c008b2685cecf35caf3d2
Signed-off-by: Oliveira, Daniel <daniel.oliveira@amd.com>


[ROCm/amdsmi commit: 893f13ab98]
2024-08-27 18:22:50 -04:00
Oliveira, Daniel ec14fe6ac7 SWDEV-463372: amdsmi_get_utilization_count() adds decoder_activity
GPU Metrics info `gpu_metrics.vcn_activity` is exposed through amdsmi_get_utilization_count().

Code changes related to the following:
  * API
  * CLI
  * Unit tests

Change-Id: I831b2a81bdc0e090a6698dcb689d10f91ed87dd9
Signed-off-by: Oliveira, Daniel <daniel.oliveira@amd.com>


[ROCm/amdsmi commit: af3670d758]
2024-08-27 16:58:34 -05:00
Maisam Arif 2e92791192 Removed extra print statement
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I0043567f4cc17d69860b0c77f42fa77fd41e354d


[ROCm/amdsmi commit: 7ac0a49470]
2024-08-23 19:22:05 -05:00
Charis Poag bc357f1500 [SWDEV-478807] Add leading 0s to amdsmi_get_fw_info()
Signed-off-by: Charis Poag <Charis.Poag@amd.com>
Change-Id: Ie535dcb8cb44138c115e29a4bc41db3cc488097f


[ROCm/amdsmi commit: c46eab4e9e]
2024-08-23 19:37:32 -04:00
Charis Poag ee66b03dc8 [SWDEV-478807] Fix incorrect firmware versions and names
- Fix updates API to have correct enum names (PM->SMU)
 - Python API/CLI now reports correct versions and names for
    SMC/TA_XGMI/TA_RAS

Change-Id: Icbe115b3070b9f252ef15b09b781b9b3f5861e50
Signed-off-by: Charis Poag <Charis.Poag@amd.com>


[ROCm/amdsmi commit: d7c583d422]
2024-08-23 18:03:13 -05:00
Charis Poag 4b308c8d48 Fix amdsmi_reg_type_t not defined
Latest updates need to use a wrapper defined value. Breaks basic CLI
functionality.

$ /opt/rocm/bin/amd-smi list
Traceback (most recent call last):
  File "/opt/rocm/bin/amd-smi", line 44, in <module>
    from amdsmi_commands import AMDSMICommands
  File "/opt/rocm/libexec/amdsmi_cli/amdsmi_commands.py", line 30, in <module>
    from amdsmi_helpers import AMDSMIHelpers
  File "/opt/rocm/libexec/amdsmi_cli/amdsmi_helpers.py", line 35, in <module>
    from amdsmi_init import *
  File "/opt/rocm/libexec/amdsmi_cli/amdsmi_init.py", line 35, in <module>
    from amdsmi import amdsmi_interface
  File "/usr/local/lib/python3.8/dist-packages/amdsmi/__init__.py", line 26, in <module>
    from .amdsmi_interface import amdsmi_init
  File "/usr/local/lib/python3.8/dist-packages/amdsmi/amdsmi_interface.py", line 1725, in <module>
    reg_type: amdsmi_reg_type_t,
NameError: name 'amdsmi_reg_type_t' is not defined

Change-Id: I628c811c137f57f3177a718c9bce859bc553bf7d
Signed-off-by: Charis Poag <Charis.Poag@amd.com>


[ROCm/amdsmi commit: a2dc934b05]
2024-08-22 21:57:36 -05:00
Tom St Denis c59f7b7705 Add amdsmi_get_gpu_pm_metrics_info and amdsmi_get_gpu_reg_table_info to py-interface (v3)
v2: drop depend on libc
v3: whitespace

Signed-off-by: Tom St Denis <tom.stdenis@amd.com>
Change-Id: I2eff7aa9d4f0ca8635796f82b106ac0d36176346


[ROCm/amdsmi commit: f4506cfd65]
2024-08-21 08:38:14 -04:00
Bill(Shuzhou) Liu ef78459f75 Set soft min or max clock
Add the API to support set soft min or max clock.

Change-Id: Ia34381a721ef3c3d894d5a89d25afa757be46a79


[ROCm/amdsmi commit: 97e70d44cf]
2024-08-20 13:22:32 -04:00
Maisam Arif 77e3035cf5 [SWDEV-479989] - Fixed if statement for filtering ecc blocks
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I4d0c7579257c98be8a4ba8e5a31b5d9db4305844


[ROCm/amdsmi commit: 78373cb5f7]
2024-08-20 03:16:49 -05:00
Maisam Arif 5013af7398 Revert "Do not automatically download kernel header amd_hsmp.h"
This reverts commit 18bb65a5cd.

Change-Id: I48ef2a6df69e7b8bc4e66009e6ee2987af8448fc
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>


[ROCm/amdsmi commit: c934291940]
2024-08-19 17:20:20 -05:00
Tom Rix 18bb65a5cd Do not automatically download kernel header amd_hsmp.h
First look locally following these heuristics
Either as a user specified option -DBUILD_KERNEL_ASM_DIR=<PATH>
or from the running kernel's src
and then from hints at where it could be.

When these fail, download from the upstream kernel

Change-Id: If8d62a4f84a929f550e4a83cda93e4d671e92d02
Signed-off-by: Tom Rix <Tom.Rix@amd.com>


[ROCm/amdsmi commit: f3cb51c08e]
2024-08-13 15:42:20 -05:00
Maisam Arif 83dfd814c3 [SWDEV-478576] Adjusted Disclaimer
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I0dbdcd1c8ff200336e7ee0e8ca88a5eba1b41057


[ROCm/amdsmi commit: b49c5596b5]
2024-08-09 18:50:55 -04:00
Maisam Arif 0a28df87c8 Fixed Guest VM registering as Passthrough VM
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I0edc36e1a114166647dc10ebc646665b62c5d88e


[ROCm/amdsmi commit: 037f8689fe]
2024-08-09 18:44:44 -04:00
Maisam Arif 1eaf218f2f Removed metric --ecc & --ecc-blocks commands from VM
ecc is not supported on VM
	Added static --ras because ras features are still detectable

Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: Ied4132b863989dfd67897e00904f04d140fd2773


[ROCm/amdsmi commit: 210680b570]
2024-08-09 18:44:44 -04:00
Maisam Arif b0c05aa04d [SWDEV-478576] Added Disclaimer for CLI Tool
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I3d432ac3f8c9663365921591d183a5d1f35c4707


[ROCm/amdsmi commit: cec3e4c2a0]
2024-08-09 14:14:50 -04:00
Maisam Arif a3a8a0cfa8 Bump Version to 24.6.3.0
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I902da5e5e9e7441002420afaaef01ca9c6c9666f


[ROCm/amdsmi commit: 40112f5b17]
2024-08-08 01:30:51 -05:00