Commit Graph

70 Commits

Author SHA1 Message Date
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
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
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
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
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
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 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
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 c63ea0e5e0 [SWDEV-474450] Removed DEVICE_MUTEX from gpu_reset
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I706fb47288738bfbde94b56fee66bbf807b3c0cb


[ROCm/amdsmi commit: 8bc8307c60]
2024-07-19 11:47:52 -04:00
Bill(Shuzhou) Liu a29f44019d Make the the devInfoTypesStrings.at(type) exception safe
Wrap it in a function to make it exception safe.

Change-Id: I29835993ae4fe2b7aa1a7027fab88c05ba89e6e3


[ROCm/amdsmi commit: 7a617e6ef2]
2024-06-26 08:33:44 -05:00
Bill(Shuzhou) Liu 47300adc0d Add return character when set the PM policy using sysfs
When set PM policy in sysfs, the driver expect a return character.

Change-Id: I83cddb3cdb14c226e6e856776176000eea33b251


[ROCm/amdsmi commit: 4441249ffa]
2024-06-13 11:02:13 -04:00
Bill(Shuzhou) Liu b517f3c214 Change the name of clear sram to run cleaner shader
The function is to clean the local data in LDS/GPRs. The clear sram
is misleading.

Change-Id: I0385e6d6348602fe0f347d17e48ed8983f7ceb87


[ROCm/amdsmi commit: 4cf59c4edb]
2024-06-05 12:07:39 -05:00
Maisam Arif 7dfe4276cc Use different sysfs for soc_pstate and xmgi_plpd
The sysfs is changed to use the pm_policy folder with multiple
dpm_policy files.

Change-Id: I40fac8de2d0cb127950d238b8196f6d2416778d0


[ROCm/amdsmi commit: e5d1ba4621]
2024-05-31 01:38:41 -04:00
Maisam Arif bbcff5221d SWDEV-458102 - Updates to pp_od_clk_voltage parsing
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: I650dae1a99856dcde914fe66917cf9111f3ce0e2


[ROCm/amdsmi commit: 7d999aa34c]
2024-05-15 03:18:24 -05:00
Bill(Shuzhou) Liu 96f603783c Discover the amdgpu when card numbers are not consecutive.
When discover the amdgpu, if the assigned numbers are not consecutive,
not all GPU can be discovered. The code is change to discover the
GPU based on max card number.

Change-Id: Icf4c1df4a1651093b5de3cd7a25a9bd69a299075


[ROCm/amdsmi commit: 437cb07db6]
2024-05-13 09:53:09 -04:00
Maisam Arif 48131e9481 Revert "SWDEV-458102 - Deprecated Voltage Curve API"
This reverts commit cc8eb17759.

Change-Id: I8a3eaf0a9f28200e09fb35d5260fbc070fe8a4a9


[ROCm/amdsmi commit: 11c72946eb]
2024-05-02 15:27:16 -05:00
Maisam Arif cc8eb17759 SWDEV-458102 - Deprecated Voltage Curve API
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: I111c3ce26d2ab66d5e755432f4b8a9bfa631f805


[ROCm/amdsmi commit: 1423fb632e]
2024-05-02 02:53:29 -04:00
Bill(Shuzhou) Liu b4ee3ae042 Process isolation sysfs format change
The process isolation sysfs format is changed. This fix will
adapt to the new sysfs format.

Change-Id: Id6fd7eeb3e25525047dccab248fd9cfb206cbf62


[ROCm/amdsmi commit: a0d0210761]
2024-04-25 08:11:05 -05:00
Bill(Shuzhou) Liu 5b0f4638c4 Process isolation and clean shader
A few APIs and command line options are added to support process
isolation and clean shader.

Change-Id: I98ad3fc9fc7429799a21798b7fca1c307de7f403


[ROCm/amdsmi commit: 7d2ab7970d]
2024-04-24 13:22:20 -04:00
Oliveira, Daniel 2233d32958 fix: [SWDEV-458102] [rocm/amd_smi_lib]
Drops checks that are invalid with the new pp_od_clk_voltage format

Code changes related to the following:
  * get_od_clk_volt_info()
  * get_od_clk_volt_curve_regions()

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


[ROCm/amdsmi commit: 1ae3a5b6cb]
2024-04-23 18:23:39 -05:00
Oliveira, Daniel 9e2b1d8a09 fix: [SWDEV-442525] [rocm/amd_smi_lib]
Fixes gpu_process_list

Code changes related to the following:
  * amdsmi_get_gpu_process_list()
  * CLI
  * Examples
  * Unit tests
  * Changelog
  * Readme
  * rocm_smi_lib commit: 677433b367

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


[ROCm/amdsmi commit: 08e2e21bab]
2024-03-27 16:48:24 -05:00
Bill(Shuzhou) Liu b9b958b82c Get and set the XGMI PLPD
Update the API and CLI to support XGMI Per-Link Power Down Policy.

Change-Id: Iaf04a771eb8bb0829a5b3088d803a7355a8dfd0b


[ROCm/amdsmi commit: e4085c6414]
2024-03-26 01:48:14 -05:00
Bill(Shuzhou) Liu 46ab68f840 Set and get DPM policy for GPU device
Add new APIs to set and get dpm policy for the GPU device.

Change-Id: I26fa49cd17d0ce66bda3446c38945a6cf35717ff


[ROCm/amdsmi commit: 108e6d4ae6]
2024-03-12 10:32:31 -04:00
Galantsev, Dmitrii 01dbe9de84 Fix misc memory leaks
Change-Id: I3dbf56e98d8c1312f9081956ed590962b2bdace3
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 44c189b9f5]
2024-03-07 04:56:16 -06:00
Galantsev, Dmitrii 54c7e6f4c7 Fix memory leak created by hanging opendir
Change-Id: I01e372c6a6b427f21e89cb5e4217f876346a35be
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 0155219389]
2024-03-07 04:35:30 -06:00
Bill(Shuzhou) Liu f0e5bffab3 Add support for deferred RAS errors in API
The API will support the deferred errors

Change-Id: I221a146f09fefde1fc31e5f746d0870e07c93561


[ROCm/amdsmi commit: c489cb8f3f]
2024-03-04 22:46:44 -05:00
Oliveira, Daniel 49dd38f117 fix: [rocm/amd_smi_lib] TestFrequenciesRead & TestPciReadWrite test cases failed
Fixes asserts in unit tests, and 'pp_dpm_pcie' condition

Code changes related to the following:
  * rsmi_dev_pci_bandwidth_set()
  * Functional tests

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


[ROCm/amdsmi commit: 475424525e]
2024-02-22 03:40:50 -05:00
Oliveira, Daniel e9e246f23d fix: [rocm/amd_smi_lib] amdsmi_get_gpu_activity gfx/memory activity does not update
Checks and forces rereading gpu metrics unconditionally

Code changes related to the following:
  * Device::dev_log_gpu_metrics()
  * amdsmi_get_gpu_metrics_header_info()
    Removed unintentionally during work on 'header cleanup Remove non-unified headers'
  * Examples
  * Unit tests

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


[ROCm/amdsmi commit: 78074d7d77]
2024-02-13 10:15:17 -06:00
Bill(Shuzhou) Liu 058e3449a3 UMC ECC count error
Remove another place which will check the size of the file.

Change-Id: If681a84253a8594c9f6d44d84dbf5d04a5e35612


[ROCm/amdsmi commit: 9683fc26ca]
2024-02-05 11:07:29 -06:00
Bill(Shuzhou) Liu 25a7ea7c06 UMC ECC count return not supported
The current code assume err_count sysfs only have 2 lines, which is
changed for umc_err_count by adding extra line for defer errors.
The code is changed to relax such check.

Change-Id: I7129bfcf9ef47346bca3c5a9535bc8c16c670f88


[ROCm/amdsmi commit: b125f3ee8f]
2024-01-30 11:12:40 -06:00
Charis Poag c5ba765be0 Merge rocm-smi/amd-staging into amd-dev 20240119
Change-Id: Ie706473ff92a91b19e95d2d58f64904cad73a89a
Signed-off-by: Charis Poag <Charis.Poag@amd.com>


[ROCm/amdsmi commit: 6132074089]
2024-01-19 03:57:00 -05:00
Charis Poag 23a0cb827f GPU Usage/activity update
CLI:
Every usage field is notated by "activity"
gfx_usage -> gfx_activity
umc_usage -> umc_activity
vcn_activities -> vcn_activity
jpeg_activities[AID#] -> jpeg_activity

Wrapper: fixed metric output, misalignment
with generator

update_wrapper.sh:
DOCKER_BUILDKIT to 0 (if unset)

API:
amdsmi_get_gpu_metrics_info:
1.3: Removed commenting out avg socket power

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


[ROCm/amdsmi commit: 4575990ae7]
2024-01-15 23:34:08 -06:00
Charis Poag 601a254f37 Fix GPU metric tests & cleanup test output
- CLI: Added average_power to display if current_power is empty
    - CLI: fixed PCIe current_speed not displaying GT/s
    - ROCm API: 1.3 & 1.4
                -> commented out setting avg clocks to current clock value
(leave as max uint value, not re-assign; these are not same values)
                    -> commented out setting current_socket_power = average_power
(leave as max uint value, not re-assign; these are not same values)
                    -> For all non-array clocks, placed value in first
                        array[0] to keep outputs consistent
                    (helps xcd calc)
      - ROCm API: rsmi_dev_metrics_curr_gfxclk_get fixed to count
        XCDs using backwards compatible rsmi_dev_gpu_metrics_info_get.
      - ^ Fixes XCD count overall + assigning clock[0] in 1.3 to curr
        freq
      - AMD SMI API: amdsmi_get_gpu_metrics_info() initialized all new
        1.5 metric values for all lower metric tables
      - AMD SMI API: wrapper -> fix is here + returns correct AMD SMI return
      - AMD SMI API: wrapper -> now displays amdsmi return status as
        string in logs
      - gpu_metrics_read.cc -> now has better overview of backwards
        compatible output
      - gpu_metrics_read.cc -> Cleaned up output, added units, and
        display all array output

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


[ROCm/amdsmi commit: 5ff5af0b5a]
2023-12-19 14:18:15 -05:00
Bill(Shuzhou) Liu 9dc60e00cb Support max_num_cu_shared and num_cache_instance
Add above fields for cache info. Remove driver_date in CLI and
Remove the disable properties of cache.

Change-Id: I80672490908d9e32a149076cc37459fa56b8b0bf


[ROCm/amdsmi commit: 59b510de2b]
2023-12-14 09:59:35 -05:00
Maisam Arif a8138bfd5e Change xgmi_physical_id to oam_id
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: I35fb36ec0e9f72a7135d8bb9070dbdc0e956b93a


[ROCm/amdsmi commit: b54086a037]
2023-11-22 12:16:38 -06:00
Maisam Arif 662eaa6ad3 Merge rocmsmi/amd-staging into amd-dev 20231121
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: I5cc6accced971479583954e0b93cd90c510ca814
Signed-off-by: Maisam Arif <maisarif@amd.com>


[ROCm/amdsmi commit: 02d310e525]
2023-11-22 03:31:35 -06:00
Bill(Shuzhou) Liu c7f9cff2cb Add APIs for PM table and register table
Read the PM table and register table as the name value pair.

Change-Id: Ie44fe67a28af3341bd6beb90d809e90f280351ac


[ROCm/amdsmi commit: ac1ba33371]
2023-11-20 12:31:18 -05:00
Bill(Shuzhou) Liu 6e132ac949 Sort GPU index using BDF
Sort GPU index based on BDF.

Change-Id: I921fc72e534665bd14b9a45a747f72b24f5ba641


[ROCm/amdsmi commit: 18d6484c67]
2023-11-08 08:58:15 -05:00
Galantsev, Dmitrii 49ab415506 Merge rocmsmi/amd-staging into amd-dev 20231103-1
Change-Id: I82540740892b31232dc9902022b34001ef5b542c
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 9cab8c035f]
2023-11-03 17:58:30 -05:00
Galantsev, Dmitrii e5d0ba249d Merge rocmsmi/amd-staging into amd-dev 20231103
Change-Id: Ie70ab54a63b25649b6b9d30620c5546dc66cd766
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 513dd8a445]
2023-11-03 02:55:02 -05:00
Bill(Shuzhou) Liu e05f594cba Support cache type in cache info
Add the cache type to the cache info.

Change-Id: Ic13ca9640b65d2b414eeebe7b884530f2036aac8


[ROCm/amdsmi commit: 56b246cc3c]
2023-11-02 04:53:38 -05:00
Maisam Arif b14d1ca543 SWDEV-410051 - Updates to board_info struct & CLI
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: I8735d8965140ee5da0c35106b388af1dca87ec71


[ROCm/amdsmi commit: 2b4637ff9f]
2023-10-27 16:52:56 -05:00
Galantsev, Dmitrii 553a05efec Merge rocmsmi/amd-staging into amd-dev 20231016
Change-Id: I137171162a64af4960d82336cc517c1b34a870f3
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: df4f5e8bf8]
2023-10-16 14:31:13 -05:00
Bill(Shuzhou) Liu b9073f2bf7 Add new API for RAS related information
The API to get the EEPROM version and ECC schema.

Change-Id: Iee6b3c555541a33bf16bf9ac1fd60100dfff5643


[ROCm/amdsmi commit: d92d4e4b38]
2023-10-13 02:06:14 -04:00
Galantsev, Dmitrii e3ee60fc5e Merge rocmsmi/amd-staging into amd-dev 20231010
Change-Id: I492562094a004eb78b2cc2b52d14d013d9f97112
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 6d72d65c48]
2023-10-11 18:58:12 -05:00
Bill(Shuzhou) Liu dc0d637136 Add support to XGMI physical id
Get XGMI physical id from sysfs.

Change-Id: Ifd9e431bc2fbfd759d888a71b99046a5eb07b6ed


[ROCm/amdsmi commit: 6ca95c1a2d]
2023-10-10 09:29:05 -04:00
Bill(Shuzhou) Liu c1a7a09f30 APIs for the cache level and size
Read the cache level and size from topoogy sysfs file.

Change-Id: Id3c558c95bcb79139a19e4adbaa7ff333d06098f


[ROCm/amdsmi commit: 1a233f93fb]
2023-10-05 11:10:54 -05:00