Commit Graph

544 Commits

Author SHA1 Message Date
Hao Zhou a7c99cdf8b Merge amd-staging into amd-master 20230629
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: Ia0ac7e6a6d0765af5bbce09c8c99f8d782a5e01a


[ROCm/rocm_smi_lib commit: 8e8293a025]
2023-06-29 10:18:17 +08:00
Jeremy Newton cca727f7e3 Fix python script install permissions
The keyword "PROGRAMS" should be used in place of "FILES" in order to
make sure executable scripts have the correct permissions.

Change-Id: I6c287dc1291774ad6d97a04d621957dea0a1b697
Signed-off-by: Jeremy Newton <Jeremy.Newton@amd.com>


[ROCm/rocm_smi_lib commit: d00d885394]
2023-06-27 14:57:59 -04:00
Bill(Shuzhou) Liu 87c5c38d44 Crash if no hwmon sysfs
Return NOT_SUPPORTED if no hwmon sysfs.

Change-Id: I01356a21f004ab552ca6ef7ffb49934bfdfd5e31


[ROCm/rocm_smi_lib commit: 910bf677a9]
2023-06-26 08:00:32 -05:00
Hao Zhou c46a1eb2df Merge amd-staging into amd-master 20230625
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: Id257f743e4a45881696c053b08a245b09b3e34ad


[ROCm/rocm_smi_lib commit: 58a09f7063]
2023-06-25 11:20:46 +08:00
Galantsev, Dmitrii e9dd6bfb51 SWDEV-406542 - Add gtest to install targets
Change-Id: I116505aaa33109fce66ab8daf9921e2de11a27d4
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rocm_smi_lib commit: 82078565e9]
2023-06-20 11:14:56 -05:00
Galantsev, Dmitrii 5b99944421 SWDEV-391041 - Disable TestPowerReadWrite
Change-Id: I56b5bea3e5206a6f0d5ecdb482103881f80f0b8b
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rocm_smi_lib commit: 9519d5b8cf]
2023-06-16 15:18:27 -04:00
Galantsev, Dmitrii ab5f6e5872 Assign tests to aqua_vanjaram
Change-Id: Iee78b1e810356327261006087b081e39dab0b9e8
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rocm_smi_lib commit: e7585cc045]
2023-06-16 15:18:27 -04:00
Bill(Shuzhou) Liu 86a1deaca9 Expand showpids to provide more details
Provide details of GPU usage by an application.

Change-Id: I0f36df7d358754c2c8a60432b736d98f667ee99c


[ROCm/rocm_smi_lib commit: d9b6af7a09]
2023-06-16 08:52:18 -04:00
Hao Zhou 34cd6e7c40 Merge amd-staging into amd-master 20230615
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I67e22b2d06c8a9cd21aa3034bc78627d2fd0c586


[ROCm/rocm_smi_lib commit: 741740b04b]
2023-06-15 10:15:40 +08:00
Galantsev, Dmitrii 9f534b1c6b SWDEV-340919 - Package rsmitst
Similar to I879b21428e6642f19fda67092b365d8b78b7ba7b.

Main CMake improvements:

* Add rsmitst with -DBUILD_TESTS=ON
* Package tests into rocm-smi-lib-tests.deb and .rpm
* Note - this breaks build_rsmitst.sh

Misc improvements:

* Add .editorconfig to normalize code formatting
* Export compile_commands.json
* Remove gtest source and pull from github instead

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


[ROCm/rocm_smi_lib commit: 0478d53e23]
2023-06-13 22:52:10 -05:00
Galantsev, Dmitrii f46d020feb Temporarily ignore TestFrequencies
See SWDEV-391039 and SWDEV-391040 for details

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


[ROCm/rocm_smi_lib commit: ac94bf5ed5]
2023-06-12 19:26:21 -05:00
Galantsev, Dmitrii 61ac3f8ca9 --showtempgraph - Show N/A when no temp found
If temp in hwmon was missing - rocm-smi crashed.
e.g. /sys/class/drm/card1/device/hwmon/hwmon5/temp1_input

This change displays "N/A" for temp instead of crashing.

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


[ROCm/rocm_smi_lib commit: 713f85721b]
2023-06-12 19:16:39 -05:00
Maisam Arif a9d4f69eea SWDEV-404157 - Fixed printLog delimiter parsing
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>
Change-Id: I3d8e22d185790f4325aeacc18e4bfcfe8777d356


[ROCm/rocm_smi_lib commit: 00e170c2f5]
2023-06-08 20:02:51 -05:00
Hao Zhou 4fae520652 Merge amd-staging into amd-master 20230607
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I1d26d320c15cb3bd813019140a4492f7f9e08362


[ROCm/rocm_smi_lib commit: 010678369f]
2023-06-07 11:59:18 +08:00
Hao Zhou afe023e09c Revert "Revert "Merge amd-staging into amd-master 20230602""
This reverts commit dae9c3c9aa.

Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I38b7d0ca4535503bf0b9ba491de0eb747f3dd966


[ROCm/rocm_smi_lib commit: 255b4d122b]
2023-06-07 11:56:43 +08:00
Hao Zhou 8e890b0258 Revert "Revert^2 "Revert "Merge amd-staging into amd-master 20230524"""
This reverts commit 4e6cc32a1d.

Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: Ibfe63f701719d4eee7c589bd44ab88f720d3105d


[ROCm/rocm_smi_lib commit: 5cd963feb7]
2023-06-07 11:56:16 +08:00
Galantsev, Dmitrii 432e74ba08 Fix test temp blacklist, ignore TestVoltCurvRead
Change-Id: I86fa14fdc06e1b170a0bc0c0727fc08e4f4e2074
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rocm_smi_lib commit: f78f9a4082]
2023-06-06 17:02:14 -04:00
Charis Poag 4cab3bb312 [SWDEV-402336 + SWDEV-398070] Fix RPM install part2
Updates:
    [rocm-smi] RPM installation comment included a macro,
    now removed

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


[ROCm/rocm_smi_lib commit: e2dec17284]
2023-06-05 13:50:57 -05:00
Hao Zhou 4e6cc32a1d Revert^2 "Revert "Merge amd-staging into amd-master 20230524""
411b27689f

Change-Id: Ibb44f48a8ea2099de01cf04d31b47f2a2f2473ad


[ROCm/rocm_smi_lib commit: be41c19d3c]
2023-06-02 02:12:07 -04:00
Hao Zhou dae9c3c9aa Revert "Merge amd-staging into amd-master 20230602"
Revert submission 869878

Reason for revert: <RPM package on RHEL9.x is broken>
Reverted Changes:
I4886ef2a6:Merge amd-staging into amd-master 20230602
I0f277acf3:Revert "Revert "Merge amd-staging into amd-master ...

Change-Id: Ie370327c8db0404c9cedde42c1376e3cec56fae0


[ROCm/rocm_smi_lib commit: 5aa94c48d1]
2023-06-02 02:12:07 -04:00
Hao Zhou 07f14f41d8 Merge amd-staging into amd-master 20230602
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I4886ef2a60b08e17bd9165ff0cd46b4297e15972


[ROCm/rocm_smi_lib commit: 8560d96c81]
2023-06-02 10:11:48 +08:00
Hao Zhou 411b27689f Revert "Revert "Merge amd-staging into amd-master 20230524""
This reverts commit cad1008c3e.

Change-Id: I0f277acf328566485994b0a771b685172541874c


[ROCm/rocm_smi_lib commit: 4e044a1f6c]
2023-06-02 10:11:10 +08:00
Galantsev, Dmitrii 6aef6b09ea Clean-up python errors and warnings
Used pyright to show errors and warnings and resolved most

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


[ROCm/rocm_smi_lib commit: e8391c9d7c]
2023-06-01 17:37:57 -04:00
Charis Poag b96cc5b897 [SWDEV-402336 + SWDEV-398070] Fix RPM install - override macros
Updates:
    * [rocm-smi] RPM installation now overrides macro usage

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


[ROCm/rocm_smi_lib commit: b0f2a9d2ef]
2023-06-01 11:58:42 -04:00
Galantsev, Dmitrii 98f1868290 Fix memset compile warning
Change-Id: If31210f3c6038e56f43ae8631ed1657d1509488e
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/rocm_smi_lib commit: 2048f8978f]
2023-05-31 21:54:32 -04:00
Hao Zhou cad1008c3e Revert "Merge amd-staging into amd-master 20230524"
This reverts commit 11be79e5fa.

Reason for revert: <commit break mainline rocm builds - RHEL-9>

Change-Id: Ideed94313b15bc8af2bd9855535d490fd84b5c3b


[ROCm/rocm_smi_lib commit: 7d508f75ab]
2023-05-25 01:53:24 -04:00
Bill(Shuzhou) Liu 269e0e23f9 Fallback to gpu_metrics if the sysfs is not available
The gpu_metrics may have required PCI link width and speed.

Change-Id: I939d733f5f6a71088545ba042345eb1b6ad20ee5


[ROCm/rocm_smi_lib commit: a6467c4083]
2023-05-24 14:51:43 -05:00
Hao Zhou 11be79e5fa Merge amd-staging into amd-master 20230524
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I049d28cfd837e104f71051695baaca9e4f2ca4f9


[ROCm/rocm_smi_lib commit: 3629c4d5ca]
2023-05-24 12:40:26 +08:00
Bill(Shuzhou) Liu 6b5406091a SWDEV-400644: Reset the mutex only if errors
To prevent reset the mutex while using it, only reset the mutex
if it cannot acquire it.

Change-Id: I95e0ed1bf543f285ce81b4df9c51e16a88081d38


[ROCm/rocm_smi_lib commit: 160c99d12d]
2023-05-22 11:20:44 -04:00
Charis Poag 99bc3fb502 [SWDEV-398070] Adding logging to ROCm SMI (by default off)
Updates:
    * [rocm-smi] Provide a thread-safe logging feature
    * [rocm-smi] Adding logrotation into install/upgrade/remove
      scripts
    * [rocm-smi] Updated cmake lists to include rocm_smi_logger
    * [rocm-smi] Updated DEB/RPM install/remove logging file &
      folder with all users having r/w privledges for
      /var/log/rocm_smi_lib/ROCm-SMI-lib.log
    * [rocm-smi] Added ability to do a glob search for multiple files
      (globFileExists), assists doing file searches with * strings
    * [rocm-smi] Added ability to log system details when RSMI_LOGGING
      is turned on (getSystemDetails())
    * [rocm-smi] Added logging to provide which ROCm API is being called
      when RSMI_LOGGING is on
    * [rocm-smi] Added logging to provide SYSFS path and read value,
      when RSMI_LOGGING is on. Provides error reponse on failure.
    * [rocm-smi] Added logging to provide SYSFS path and read value,
      when RSMI_LOGGING is on. Provides error reponse on failure.
    * [rocm-smi] Added environment variable RSMI_LOGGING to control
      when logging is enabled or disabled. By default, by not
      setting this env. variable, logging is turned off. When
      setting RSMI_LOGGING=<any value>, logging is enabled
      which is placed in /var/log/rocm_smi_lib/ROCm-SMI-lib.log file.
      Setting RSMI_LOGGING is allowed in both debug and release builds.
    * [rocm-smi] Removed an initialize procedure which keeps
      debug_inf_loop. Seems this feature is not being used.

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


[ROCm/rocm_smi_lib commit: c3a095a180]
2023-05-17 21:18:52 -05:00
Sam Wu 2496c1bc33 sphinx documentation
ref: https://github.com/RadeonOpenCompute/rocm_smi_lib/pull/119

fix formatting in docs/index.md

Change-Id: I940ef8147a40bd3b702aa591bd56557a870621fb


[ROCm/rocm_smi_lib commit: ed74bc6eca]
2023-05-11 10:41:45 -04:00
Ranjith Ramakrishnan 919d21fdb1 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: I8941a96bdc1b921a7646ccb353130cb283957ff8


[ROCm/rocm_smi_lib commit: daffcdb930]
2023-05-08 16:56:52 -07:00
Hao Zhou e37e2d67c1 Merge amd-staging into amd-master 20230414
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I518af7182bb6537c9c03a30d53c44d2143f3064f


[ROCm/rocm_smi_lib commit: ecb1303732]
2023-04-14 12:17:58 +08:00
Charis Poag d38ba30a0f [SWDEV-392571] Fix concise info when missing VRAM info
Updates:
    * [rocm-smi] Added larger app width size, which helps
      display missing device info
    * [rocm-smi] Added better context when rsmi_ret_ok
      does not return with RSMI_STATUS_SUCCESS
    * [rocm-smi] Removed all references to an
      undefined function (printLogNoDev())
    * [rocm-smi] Fixed not detecting non-int
      values when setting the voltage curve
    * [rocm-smi] Added better context on missing
      sysfs file when setting clock overdrive
      values
    * [rocm-smi] Fixed getMemInfo() calls not
      referencing tuple values (making it easier
      to read)
    * [rocm-smi] Silenced concise info spitting
      out errors for missing VRAM files, instead
      display which metric is "unsupported" if
      the files are missing
    * [rocm-smi] Updated function descriptions for
      rsmi_ret_ok & getMemInfo
    * [rocm-smi] Updated getMemInfo to provide a
      quiet call, to silence for concise info calls.
      This provides a way to keep the output clean.
    * [rocm-smi-lib] Added when using debug sysfs
      files, to state, which enums are enabled
      for debug

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


[ROCm/rocm_smi_lib commit: 6be92b9e26]
2023-04-13 15:11:35 -04:00
Hao Zhou 79ed75a437 Merge amd-staging into amd-master 20230407
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: Icf2ea8ab76a521f31bc551b4cf644fc833765263


[ROCm/rocm_smi_lib commit: b21fe43ec1]
2023-04-07 11:06:58 +08:00
Bill(Shuzhou) Liu 050e38f2a1 Validate the clock frequency when set it
Add the check of the clock frequency when set it.

Change-Id: I707291bfb5007bb69100c780af50a4b0f697bb37


[ROCm/rocm_smi_lib commit: b6789891b0]
2023-04-06 11:54:38 -04:00
Charis Poag 91d8ea7165 [SWDEV-391036 + SWDEV-392933] Fixes for VoltRead and ComputePart.
Updates:
    * VoltRead - needed to properly send out RSMI_STATUS_NOT_SUPPORTED
      when device does not have voltage hwmon files
    * ComputePart. - test failure was likely caused due to EvtNotif
      causing conflicts (unknown exactly why). Test passes when
      moving it ahead of the event notifier. Both API calls may have
      a system resource issue, TBD.
    * rocm_smi_example - now indicates when an API call
      returns RSMI_STATUS_NOT_SUPPORTED or
      RSMI_STATUS_NOT_YET_IMPLEMENTED. Allows example to fully complete
      on systems which may not provide support for all API calls.

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


[ROCm/rocm_smi_lib commit: 78a0812f7f]
2023-04-05 12:44:29 -05:00
Hao Zhou 0befec7982 Merge amd-staging into amd-master 20230331
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I4d59f2bfb9a4f3cf64662d76437ddb808f6b510b


[ROCm/rocm_smi_lib commit: f454d46b31]
2023-03-31 10:34:00 +08:00
Bill(Shuzhou) Liu fe2c2835c9 Increase the max BDF ID length
Increase the max length from 256 to 512.

Change-Id: I3114f7ce6852aafa9dfec0186f27c1121c939c69


[ROCm/rocm_smi_lib commit: 58c83eb379]
2023-03-29 10:04:28 -04:00
Bill(Shuzhou) Liu e328b16358 Correct subsystem name by matching device id.
The rsmi_dev_subsystem_name_get() only matches subvendor id and
subdevice id for a vendor. The change will also match device id.

Change-Id: Ife3aedaf6fc7390ed7fa62edbde40c2340689b23


[ROCm/rocm_smi_lib commit: 0c82a9d577]
2023-03-28 15:48:31 -05:00
Hao Zhou 77eb3c3938 Merge amd-staging into amd-master 20230323
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I2155fa727d4a2a46cbeca3e65f6ae2d9c31c91a5


[ROCm/rocm_smi_lib commit: 230b5bcee3]
2023-03-23 17:11:34 +08:00
AravindanC 3958626b0a SWDEV-351540 - ASAN packaging for rocm_smi_lib
Change-Id: Iab354d02d261a0270a3d118b825835fc6f021c15


[ROCm/rocm_smi_lib commit: 778f3b7fdc]
2023-03-20 13:14:53 -07:00
Charis Poag e264bf6c02 [SWDEV-387906] Fix rocm-smi initialize crash
Fix was needed due to hwmon updates.
Several voltage sensors (ex. vddgfx/vddnb)
are unsupported or not applicable
to upcoming hardware. This was not the case
for previous hardware sensors, resulting in
the rocm-smi crash observed.

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


[ROCm/rocm_smi_lib commit: f44d1ea8bc]
2023-03-17 15:04:34 -05:00
Hao Zhou e6136fc1e4 Merge amd-staging into amd-master 20230317
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: Iad8075d8aae2e0577dd6a36ce789d4f07741a448


[ROCm/rocm_smi_lib commit: 74c96dbbff]
2023-03-17 11:20:57 +08:00
Bill(Shuzhou) Liu 3c829750a8 Fix cppcheck static analysis report warning
Fix some warning from static anaysis tool.

Change-Id: I7e8c2f5d6f79aff5fdcad81b1fd832900f213c47


[ROCm/rocm_smi_lib commit: 1b7eb4e1f4]
2023-03-13 09:27:19 -05:00
Ranjith Ramakrishnan c9b70a79e6 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: Ib49633501aa6eb6d97158b1ecfc47de6f18fba85


[ROCm/rocm_smi_lib commit: 14b86107a7]
2023-03-10 08:56:45 -08:00
Hao Zhou bc1540e3e2 Merge amd-staging into amd-master 20230307
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: Iec37aa680c552f98eca97279e0b7d99475a7795e


[ROCm/rocm_smi_lib commit: 68ca36e43c]
2023-03-07 10:00:44 +08:00
Bill(Shuzhou) Liu 73f8c1563a Filter out the GPUs not assigned to a container in showpid
The process ids of other container are still visible in the sysfs file,
filter it out to prevent crash.

Change-Id: I665912cd09c606804186aff8cba5c24f5e58ded7


[ROCm/rocm_smi_lib commit: 710649ab66]
2023-03-06 11:05:02 -06:00
Charis Poag da7b59046b [SWDEV-335697 + SWDEV-342812] Fix NPS & Compute tests
Updates:
    * Fixed rsmi_dev_compute_partition_get
      & rsmi_dev_nps_mode_get to properly check
      for invalid arguments
    * Updated compute partition & NPS mode tests
      - Now properly confirms the invalid
        argument is seen
      - Spacing for multiple devices is added
        to better see distinction between
        separate device's tests (for verbose output)
      - Changed expect to assert calls, so errors
        are observed faster for test failures
      - Fixed multiple device testing where a
        variable should have been unset, but
        having multiple devices caused it to
        set
      - Updated multiple device testing to iterate
        accross all devices (previously returned,
        instead of continuing checking support
        after RSMI_STATUS_NOT_SUPPORTED detected)
      - Fixed a few spelling errors & verbose output

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


[ROCm/rocm_smi_lib commit: c252ecccd1]
2023-03-02 13:24:38 -06:00
Hao Zhou 8a7fa92639 Merge amd-staging into amd-master 20230302
Signed-off-by: Hao Zhou <Hao.Zhou@amd.com>
Change-Id: I17c723b907c988754d2da5d04092c1d435e29cc1


[ROCm/rocm_smi_lib commit: c189126be6]
2023-03-02 14:13:00 +08:00