Commit Graph

729 Commits

Author SHA1 Message Date
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
Bill(Shuzhou) Liu 06028876b0 mem_use_pct uninitialized error
Initialize mem_use_pct if the memory info is not available.

Change-Id: Id8e285050149c51077356826c8f99719b473060d


[ROCm/rocm_smi_lib commit: fcb6afa289]
2023-02-27 16:47:45 -06:00