コミットグラフ

112 コミット

作成者 SHA1 メッセージ 日付
Bill(Shuzhou) Liu a1aec9c971 Support thread only mutex
The environment variable RSMI_MUTEX_THREAD_ONLY=1 to enable thread only mutex.
The RSMI_INIT_FLAG_THRAD_ONLY_MUTEX can also be pass to rsmi_init()
to enable thread only mutex.

Change-Id: I2d9844039b774e386f03bb9bb130d8c342504ea6


[ROCm/amdsmi commit: dbba33d3f5]
2024-07-18 20:43:38 -05:00
Bill(Shuzhou) Liu 3fc94657d9 Remove const to avoid compile error
Fix the compile error

Change-Id: I422b606b2b969b418c2e77b47a3afad0cfc732a1


[ROCm/amdsmi commit: 33dab0c232]
2024-07-18 18:15:43 -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 1bc244b911 SWDEV-444567 - Added Ring Hang Event
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: I2e73ba08ee0004f6f30660b2fa425ea94bafceca


[ROCm/amdsmi commit: 52843152a5]
2024-05-03 17:21:28 -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
Maisam Arif cebb07e795 Added new ecc blocks and adjusted metric --ecc-block filtering
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: Ib2f69c7d59ee5108024794434fb202b5e4f58738


[ROCm/amdsmi commit: 1bd18c1a65]
2024-04-18 15:01:41 -04: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
Maisam Arif dfdd3459fb Merge "Merge rocmsmi/amd-staging into amd-dev 20231103-1" into amd-dev
[ROCm/amdsmi commit: a8efefaef6]
2023-11-07 04:02:00 -05:00
Maisam Arif 0a20cc33ab Updated License Dates
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: Id6fd66b03c602232ecc1a063a534a15fe3a03f56


[ROCm/amdsmi commit: 5dba2f3120]
2023-11-07 03:57:08 -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
Charis Poag c4efbff219 Fix GPU Metric content revision check
Change-Id: I94ff4732be01214591b635357d9a62eb7d5192a0
Signed-off-by: Charis Poag <Charis.Poag@amd.com>


[ROCm/amdsmi commit: b49e82a4f4]
2023-10-31 17:42:02 -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
Charis Poag 41f5a26408 Partition EBUSY with RSMI_STATUS_BUSY & invalid GPU Metrics check
* Updates:
   - [API/CLI] rsmi_dev_*_partition_set &
     rsmi_dev_*_partition_reset - exposed RSMI_STATUS_BUSY for
     EBUSY writes + cleaned up accidental map insertions
     (maplookup[] can insert values that are not in the map,
     map.at(key) fixes this potential issue)
   - [API] rsmi_dev_gpu_metrics_info_get() - returns
     RSMI_STATUS_NOT_SUPPORTED for unsupported metric tables
     outside of 1v1/1v2/1v3
   - [API] writeDevInfoStr() - exposes RSMI_STATUS_BUSY for
     EBUSY write errors; kept backward compatibility
     for other writes which do not care about these states
   - [API] rsmi_dev_od_volt_info_get()
      & rsmi_dev_od_volt_curve_regions_get() have better logging
     + Expose more details on why they are erroring
   - [Utils/logs/example] Expose AMD GPU gfx target version to aid in
     system troubleshooting
   - [Utils] Added test methods that look at od volt
     freq & regions into here - for easier access across
     several tests
   - [Utils] Updated getRSMIStatusString(new argument - fullstatus;
     default to true for backwards compatibility)
     -> true shows shortened RSMI STATUS response
   - [Utils] Added splitString to cut out noisy return responses
     (used in getRSMIStatusString(), when fullstatus = true)
   - [Utils] Added getFileCreationDate() to expose build date
     of the library - helpful for local builds or experimental builds
   - [Utils] Macro cleanup
   - [Example] Added a few gpu_metric checks - helpful for upcoming
     updates
   - [Device] SYSFS/DebugFS - now have better r/w displayed in logs
   - [LOGS] Expose library build date - see above for details
   - [Tests] Add more warnings/errors to test builds
   - [Tests] Moved up Partition tests for ordered test runs - helped
     identify issues with GPU BUSY writes
   - [Tests] compute_partition_read_write - handles RSMI_STATUS_BUSY
     with waits for busy status found & cleaned up how we checked
     for partition changes - with RSMI responses exposed more clearly
   - [Tests] perf_determinism - multi gpu now properly runs through
     with full resets as needed
   - [Tests] volt_freq_curv_read - better error handling with more
     verbose output

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


[ROCm/amdsmi commit: 57b6135e54]
2023-10-27 14:52:02 -04:00
Étienne Mollier 791ad2407c CMake - Set rocm_smi64 soversion to 1
Upstream soversion is at 5 for a while, but Debian's soversion has been set to
 1 in the beginning of the rocm-smi-lib package.  This is probably erroneous,
 and the library should probably be better off being synchronized with upstream
 so there is some kind of ABI compatibility between the two distributions.
 .
 FIXME: please use upstream soversion next time an ABI breakage justifies an
 SOVERSION bump, instead of just incrementing the present version by one.
Author: Étienne Mollier <emollier@debian.org>
Forwarded: not-needed
Last-Update: 2023-09-17

Change-Id: I6c4d28bd26889359c0b83c474d5ae58a81741cf4
Co-authored-by: Étienne Mollier <emollier@debian.org>
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 1775ae4b8d]
2023-10-23 16:41:26 -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
Maisam Arif e77abc0a1d Added memory & compute partitions to amd-smi lib
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: If3acea6ad281298f1f05785b2e6d8e70fae8d89b


[ROCm/amdsmi commit: 1f8d9cb9ef]
2023-10-13 21:47:59 -04:00
Charis Poag d1450bbbcc bdfid fix for partition & xgmi nodes
* Updates:
    - [API] After discovering all amd gpus, we now properly
      map correct bdf (xgmi nodes). Especially important for
      partition changes - aka secondary nodes.
    - [API] While adding new secondary nodes we now have
      better grouping -> due to resorting based on
      kfd properties list & matching to primary uniqueid
    - [API] All secondary nodes are now AddToDeviceList
      with correct bdf (location id), provided by kfd
    - [API] Modified AddToDeviceList(..., uint64_t bdfid):
      providing an optional field - bdfid. This allows working
      around primary pcie cards with xgmi nodes
    - [API] Utils - cpplint minor fixes
    - [Example] Removed all endl references w/ newline, fixed
      spacing, and some incorrect values displaying as hex
      (needed dec representation)
    - [API] kfd node functions - now print full path of file
      for trace logs
    - [Tests] power_read.cc: Added in generic power test to
      confirm guaranteeing specific return values

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


[ROCm/amdsmi commit: 6f1afd2678]
2023-10-13 20:14:39 -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
Charis Poag d54164d733 Add rsmi_dev_power_get
* Updates:
  - [API] Added rsmi_dev_power_get(uint32_t dv_ind,
                                   uint64_t *power,
                                   RSMI_POWER_TYPE
                                   *type)
          provides generic get to average or
          current power & provides backwards
          compatibility
  - Added a utility function to get MonitorTypes
    (monitor_type_string(type)) &
    RSMI_POWER_TYPE (power_type_string(type))
    strings
  - [Tests] Added rsmi_dev_power_get tests and
    provided better verification of return values for
    all power APIs
  - [Tests] Updated power outputs to show correct
    units
  - [example] Now uses avg, current, and generic
    power functions with type output response

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


[ROCm/amdsmi commit: 31a1fcce7d]
2023-10-10 00:34:19 -05:00
Charis Poag 5d15251762 Rename NPS -> memory partition + compute partition node fix
* Updates:
        - rocm_smi_lib + CLI:
          Rename all "NPS mode" -> "memory partition"
          related files/functions/API/CLI to align with correct
          technical naming
        - rocm_smi_main: fixed identifying primary card's unique id
          utilize rsmi_dev_unique_id_get to map which
          KFD nodes belong to it
        - rsmi_dev_*_partition*: now have better logging output
        - compute partition tests:
          Added 20 sec delay for workaround until GPU
          busy is confirmed as the issue
        - CPPLint fixes/formatting
        - [Example] Moved all endl to "\n" for efficiency
        - [Example] Added Edge & Junction temperature examples
        - [Example] Added rsmi_minmax_bandwidth_get() example - WIP

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


[ROCm/amdsmi commit: b251bb0c9f]
2023-10-06 11:51:09 -04:00