Wykres commitów

87 Commity

Autor SHA1 Wiadomość Data
Chris Freehill a0c99bc972 Correct TestPerfLevelReadWrite test
Enums referenced in the test did not match what's in rocm_smi.h.
Added static assert to try to catch this. Also moved enum string
map to test_common.cc/h where other such maps are.

Also, fixed some cpplint issues.

Change-Id: I683553248ceb2fabb28ce1a1208bc9744aaf88d6


[ROCm/amdsmi commit: 7e17684532]
2020-12-16 17:12:04 -06:00
Chris Freehill 3be45e2ea9 Fix process killed while holding mutex
Previously, when a process holding a shared mutex was killed,
the next time an RSMI application was started, it would not be
able to obtain the mutex--the application would have to exit.
This fix uses pthread_mutexattr_setrobust() to detect this
situation and act accordingingly.

Also, add some missing, needed mutexes and move mutexes
closer to where the protect resource is used.

Change-Id: Icfdc3a246f4cfa3fd008e3f13472199abd76fd35


[ROCm/amdsmi commit: f4938b0ac9]
2020-12-04 12:59:55 -05:00
Divya Shikre 4fd8d18e22 Adding Performance Determinism Mode to rocm_smi lib, CLI & gtest.
A special mode of operation to achieve minimal performance variation by letting
the user have the ability to provide the desired frequency to be set as the soft limit.
The user can control the entry and exit to the mode via rocm-smi a mechanism to
enter / exit performance determinism mode as below.

Enter performance determinism mode:
- hold a lock
- write performance_determinism to power_dpm_force_performance_level
- write input clk_freq to pp_dpm_sclk
- release lock

Exit performance determinism_mode:
- hold a lock
- write auto to power_dpm_force_performance_level
- release lock

Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: Ia24e27954cdf1c4337ffc83d8948fbdfaf4552d2


[ROCm/amdsmi commit: 60d0f3052f]
2020-12-02 11:11:00 -05:00
Mukul Joshi c017960507 Update Event Notification test for GPU Reset event
Update the event notification tests to handle both GPU pre reset
and GPU post reset events. GPU post reset event takes sometime to
be generated after the pre reset event, so issue another
notification read to wait for post reset event.

Change-Id: I2812760b184d5357130e478cc35d27b14592abb3


[ROCm/amdsmi commit: 446ab5c8c7]
2020-11-23 10:53:23 -05:00
Chris Freehill bd9e47a53c rsmitst address sanitizer support
Also, add libasan flag variants for librocm_smi

Change-Id: Ibd012e40d26907addf8c0550aaf9f78c11b8d51f


[ROCm/amdsmi commit: bf6af90908]
2020-11-10 15:45:56 -06:00
Chris Freehill c6a58d91cb Quiet address sanitizer warnings
Also,
* Fix some doxygen issues
* Fix address sanitizer issues in rsmitst

Change-Id: Ie6c6fd9af5c418210b7064e79650fb92cd4a5e2b


[ROCm/amdsmi commit: 63064b0000]
2020-11-10 14:16:39 -06:00
Ramesh Errabolu c69c210a6e Update ROCm SMI library with ability to read CU occupancy
Change-Id: Ib9882fa2d81c13604af282279bfa116bc2fd05a4


[ROCm/amdsmi commit: 328878343c]
2020-10-14 09:33:37 -04:00
Divya Shikre 207d6339ec Adding gtest for gpu metrics read
Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: I66edb15c8b7380f3427822b33e845202bfac7a2b


[ROCm/amdsmi commit: f397cba414]
2020-10-08 13:37:47 -04:00
Chris Freehill 137e33a1e6 Revert "Revert "Support for RSMI_EVNT_GRP_XGMI_DATA_OUT counters""
This reverts commit 1be2933806.



Change-Id: Ic412a64d35aab74caf12bf4c791f0a66ac15b061


[ROCm/amdsmi commit: 5465d872aa]
2020-10-08 10:36:30 -04:00
Chris Freehill 1be2933806 Revert "Support for RSMI_EVNT_GRP_XGMI_DATA_OUT counters"
This reverts commit dc48f149f0.

Temporarily reverting until the driver side of this is upstream

Change-Id: I2d8243208c1271ebad90bc2ee0fda2dfefb0831b


[ROCm/amdsmi commit: ae6d3fbdd0]
2020-10-07 18:42:56 -04:00
Chris Freehill dc48f149f0 Support for RSMI_EVNT_GRP_XGMI_DATA_OUT counters
Also some format fixes

Change-Id: Id3c0f6b3cf5b327bb9ca6acb6091dc67764c8032


[ROCm/amdsmi commit: 946bf93dfb]
2020-10-05 17:22:19 -05:00
Chris Freehill e775527ffc Add gtest lib dir to library search path
Change-Id: I57bb20e2a67a4eaac2d0e24314e22d1a5fbe3533


[ROCm/amdsmi commit: 3522e94ed0]
2020-10-01 23:46:33 -04:00
Mukul Joshi cdb6fd8870 Add support for GPU reset SMI events
Add handling for both pre GPU reset and post GPU reset SMI
events.

Change-Id: I64d5e006bef58cb28b1c580c75f482a4590427da


[ROCm/amdsmi commit: 8b95705e6f]
2020-09-16 13:25:06 -04:00
Mukul Joshi e6f5d59edf Add support for KFD Thermal Throttling SMI event
Add handling for receiving thermal throttling SMI event from the
kernel.
Also, update the event notification test to work with the new event.

Change-Id: Ib89c12b244f90998ccbae0a38b37f25705d156e0


[ROCm/amdsmi commit: aff75c955f]
2020-09-16 13:24:57 -04:00
Mukul Joshi d7e3e0f579 Update KFD SMI event notification handling
Event bitmask in KFD SMI event is now replaced with event index in
the SMI event message. Sending a event bitmask, which was a 64-bit
field with only 1 bit set, was quite wasteful of memory and also
potentially limiting to 64 events. Instead the kernel would send
event index in the SMI event message. As a result, update the
KFD SMI event handling to expect the event index in the message.

Change-Id: I3e74620788d3c1f7c0bdaa69e9d9ab3d1aba2c92


[ROCm/amdsmi commit: 406859ca8a]
2020-09-16 13:24:50 -04:00
Chris Freehill 01f61b49f1 Clean up comments for rsmitst
Change-Id: Iea5322a5fd3bffe77557fa2cecbce70716e1258c


[ROCm/amdsmi commit: 7be97ec2aa]
2020-08-17 11:48:07 -05:00
Mukul Joshi 60a28ac3ed Fix compiler warning in TestPciReadWrite
Use unsigned number for left shift operation. If not specificed as
unsigned, compiler throws warning about left shift of negative
number.

Change-Id: I05948073b0c40700bee69399b08df6031fc49d70


[ROCm/amdsmi commit: 9d24fc9175]
2020-07-13 17:32:17 -04:00
Mukul Joshi 7c6027d790 Add support to retrieve process SDMA usage information.
Also, print SDMA usage information in TestProcInfoRead.

Change-Id: I8d19be3b8653e298c81237e5067eca75a1743e70


[ROCm/amdsmi commit: eea1ed8c3d]
2020-07-13 17:32:08 -04:00
Chris Freehill 55c91f9c24 Handle un-readable kfd properties files
Some systems have kfd sysfs properties entries that
are unreadable--for example, when a multi-gpu system is
dividing the gpus among containers, each container may
only be able to access certain gpus.

Previously, all kfd topology node properties entries were
assumed to be valid. Now, we check for readability before
declaring them "valid".

Fixes SWDEV-240169

Also:
* remove an assertion that would happen when no pcie
device identifier files are found on the system.
* fix cpplint issues

Change-Id: I74321b685159dd2628c890b33c39ad82988cb9dd


[ROCm/amdsmi commit: 68155baed5]
2020-07-10 12:35:31 -04:00
Chris Freehill 2f703b3a44 TestPerfCntrReadWrite fail rsmitst if not supported
Fixes SWDEV-243639

Change-Id: I087171231fbbe5939f239efad25a5485529381a3


[ROCm/amdsmi commit: e2c7ef6422]
2020-07-08 18:41:30 -04:00
Chris Freehill 51d5c02343 Ensure no device mutexes are left held on shut_down
Also, fix TestMutualExclusion and TestEvtNofifReadWrite.
Previously, some of the normal SetUp function was not
being done for this test. In some cases, no DRM
devices are being found on the test machine. Skip
those.

Change-Id: Iaa5a257841eb459aa57491ae9680c34a60d5ac2b


[ROCm/amdsmi commit: 59394f3354]
2020-06-19 13:59:20 -05:00
Mike Li 9375ef92fc Add support to retrieve XGMI hive id
Change-Id: I1eee05dd85ecb856889d1cfe0565454d2f538856
Signed-off-by: Mike Li <Tianxinmike.Li@amd.com>


[ROCm/amdsmi commit: 488bbb668a]
2020-06-19 07:35:23 -07:00
Chris Freehill 1309615850 Fix line endings for init_shutdown_refcount.*
* Also, add assert that check for proper usage of
rand_sleep_mod().

Change-Id: Ieb4179e1ad12fbbf85c2e4f7c7f119b0bb30b197


[ROCm/amdsmi commit: 9e0ebb250c]
2020-06-17 21:26:12 -05:00
Chris Freehill 1739bf2777 Make verbosity level 0 completely quiet
Also, support --iterations flag for certain functions that will
likely be repeated frequently.

Change-Id: I7ed76835001b5cbca30042d6bf26484258c7b9a6


[ROCm/amdsmi commit: efc9b7658c]
2020-06-17 21:26:12 -05:00
Divya Shikre 50c41fc401 Adding current voltage feature & gtest.
Signed-off-by: Divya Shikre <DivyaUday.Shikre@amd.com>
Change-Id: Ic555a3af265e603419e2875d1989a366abc82596


[ROCm/amdsmi commit: 2805ed16a4]
2020-06-16 11:48:56 -04:00
Chris Freehill b30200cd48 Update XGMI perf counter test to show utilization
Also:
* When destroying a counter, make sure to stop the counter first
* In the test, do not stop (disable) the counter before
  reading it.
* Clean up some whitespace in other tests
* Re-add manual pdf file

Change-Id: I0786ef3a994ca568299c77e44f092af8943ac33d


[ROCm/amdsmi commit: f946ea37ef]
2020-06-10 12:49:49 -04:00
Kent Russell 4b08ffa5bd Make an empty unique_id file non-fatal
This isn't supported on all models, so just comment out on failure
instead of fully failing

Change-Id: Id36d5df7c87abbb41f7b6be43abfea82004703a6


[ROCm/amdsmi commit: 8cf44548c0]
2020-06-04 10:31:53 -04:00
Mukul Joshi b32c30ab03 Print VRAM usage in rsmitst
Print VRAM usage information in TestProcInfoRead.
Also, fix output formatting when running TestProcInfoRead.

Change-Id: I9efed808458ef4645145610f6f564f0f2baadea2


[ROCm/amdsmi commit: 633c852f5d]
2020-05-29 15:48:06 -04:00
Chris Freehill b1c550f82d Add RSMI ref manual to packages
Also,
* remove extraneous test files
* fix Doxygen docs. issues
* fix whitespace issues

Change-Id: I9b58b0d68bd125a34f4fe0dc84d609c7b0b6e30e


[ROCm/amdsmi commit: 8ced9c986a]
2020-05-18 23:40:38 -04:00
Mike Li 84e3d0f0e9 Add functions that are used to query Hardware topology.
Change-Id: I0f4cd02b237bde4d6dccfb0e83e65376ecb1cfaa
Signed-off-by: Mike Li <Tianxinmike.Li@amd.com>


[ROCm/amdsmi commit: c7d349183a]
2020-05-18 12:37:27 -04:00
Chris Freehill 42aa39ac22 Add ref counting for rsmi init and shutdown
Also, clean lint from kfd_ioctl.h file.

Change-Id: I5a2ae127ab6ab6676a1b075ed10858d0ebfe13c1


[ROCm/amdsmi commit: 8e03d10035]
2020-05-11 15:57:42 -05:00
Chris Freehill b10500a770 Add event notification API
Change-Id: Ib6e8efbe6cdefaa7de1f74bd26993e9b4b011649


[ROCm/amdsmi commit: 2235ede34c]
2020-05-06 14:07:25 -05:00
Chris Freehill 922aa1b5dc Add checking for no-longer-existing process in test
When getting process information for a process, it's possible
that between the time the process ID was discovered and when
we attempt to collect data for that process, that the process
ended. This change is meant to handle that in the test case.

* Also, fix compile warning by removing unused variable.

Change-Id: I62f9a84a63548c856f0661fef15b7d248a330c05


[ROCm/amdsmi commit: 1c9ef44398]
2020-04-10 08:51:44 -05:00
Chris Freehill d592203ff5 Add device mutual exclusion tests and related fixes
* Added a new test to verify mutual exclusion of access to device
  resources
* Added some missing acquiring of mutexes to some RSMI calls, as
  well as try-catch blocks.

Change-Id: I87aac009878a0b2d1f975e1d5b794d887bb23ff9


[ROCm/amdsmi commit: f8b57c3b16]
2020-04-08 15:05:11 -05:00
Mukul Joshi b70850aa66 Add rsmi_topo_get_numa_affinity()
Given a device index, return the corresponding NUMA node for the
device.
Also, add NUMA node tests to Sys Info Read test.

Change-Id: I0df4937470e6362e6737ccea568d4b3e5890c91a


[ROCm/amdsmi commit: fd79e5c161]
2020-04-01 11:38:08 -04:00
Chris Freehill a2cf4e2ab4 Make rsmitst tests fail quickly if rsmi_init fails
Change-Id: I7b5d94b77305b30e08f33e1ddb6e2f089db0431f


[ROCm/amdsmi commit: d9ab846bee]
2020-03-11 12:13:28 -05:00
Chris Freehill abd01b37eb Add rsmi_compute_process_gpus_get()
Given a process ID, give the device indices that process is
currently using.

Also:
* made corrections to how RSMI, amdgpu (ie, "card#") and
  KFD indicies translate from one another
* add a few missing error codes to rsmi_status_string()
* fix some formatting

Change-Id: Icd2cae66bb4fec768da96af7cf9cf8b8b66ec7f9


[ROCm/amdsmi commit: 2d6e15190c]
2020-02-22 10:47:58 -06:00
Chris Freehill 35db3bb882 Disable TestFrequenciesReadWrite for arcturus
Change-Id: Ia20ec853cdba34ff3dcdc68b4f869890bf58b539


[ROCm/amdsmi commit: 1004a01094]
2019-11-07 16:22:45 -05:00
Chris Freehill 106c87ad0e Docs., error checking and test improvements
* Update doc. on api-support function
* Check for valid integer value when reading a monitor int. val.
* If fan-write test attempts to set speed higher than max.
   possible, then skip the test

Change-Id: I01ad0ab1f4caffdb0d2c26e9575f278c35a6b017


[ROCm/amdsmi commit: 52dfa4bcca]
2019-11-06 11:19:47 -05:00
Chris Freehill c7070324f3 Support rsmitst blacklisting by adding an exclude file
Change-Id: I9d581b8e24363a688b58a6ca59a6521c7be364d7


[ROCm/amdsmi commit: 3a26a7270c]
2019-10-17 13:47:02 -05:00
Chris Freehill cae8ad4321 Support checking for specific device-getter api support
For device-getter functions, allow users to specify a nullptr
for the provided buffer. In those cases, the function will return
RSMI_STATUS_NOT_SUPPORTED if the hardware or system software does
not support the function. If the function is supported, then
RSMI_STATUS_INVALID_ARGS will be returned, unless a different
error is encountered.

Additionally, tests and documentation were updated to reflect
this change.

Change-Id: Ie7db3a4c8c66af97ebd7ee1e3b95cd331ace9d9c


[ROCm/amdsmi commit: 68d25e82fd]
2019-10-05 15:55:18 -05:00
Ori Messinger 15844991b7 Display GPU vram vendor
Add support and testing for reading the vram vendor associated with
the GPU. The vram vendor can be found as a separate sysfs file at:
/sys/class/drm/card[X]/device/mem_info_vram_vendor
The vram vendor is displayed as a string value.

Change-Id: I12c8e56e57f45aa08d7d6c25338c4e468ed1c7fc
Signed-off-by: Ori Messinger <Ori.Messinger@amd.com>


[ROCm/amdsmi commit: 2412dff6a2]
2019-10-04 11:51:30 -04:00
Chris Freehill 948b82ed1a Add functions that tell what capabilities are supported
The new functions added in this commit allow a caller to tell up
front what functions, function variants and monitors are
supported.

Also,
* fixed a few documentation/formatting issues
* fixed a process_info test issue

Change-Id: I2184ab1a4a6898f847e791f273e2185d556e78e9


[ROCm/amdsmi commit: 551b15182b]
2019-09-23 13:30:47 -05:00
Ori Messinger 15c604930e Display GPU brand name
Add support and testing for reading the brand name associated with
a specific GPU (such as mi25, mi50, mi60, etc). The brand name is
associated with the SKU of the GPU, and some brand names can be
mapped from multiple different SKUs.

Change-Id: I36eb95ca8e72efdd294ccd684841195925dfe820
Signed-off-by: Ori Messinger <Ori.Messinger@amd.com>


[ROCm/amdsmi commit: 7f2d970a80]
2019-08-22 12:24:29 -04:00
Chris Freehill 6d6689b02c Adjust how we read ECC block counter status
This change corresponds to kernel changes.

Change-Id: Ibd977e8b3338349036cb16e55fb0b2c9c187726d


[ROCm/amdsmi commit: aaecfd6fff]
2019-08-09 16:06:43 -05:00
Kent Russell fe56aa131f Fix RAS change
RAS formatting changed, so get it to handle both types of sysfs output
until it's normalized
Change-Id: I56f2a2495af8ff4d01011bc614283376afb9ad0a


[ROCm/amdsmi commit: a34832f11e]
2019-08-08 12:09:18 -04:00
Chris Freehill c858103137 Add support for rsmi_dev_memory_reserved_pages_get()
Also, don't return an error for empty sysfs files. The reserved memory
page file will often have no lines. We don't want it to appear that
this function is not supported if the file is empty.

Change-Id: I1d28bb184ea587bb578fe71dd75adc2a812d09a8


[ROCm/amdsmi commit: 73c54e1fd0]
2019-08-06 11:42:03 -05:00
Chris Freehill 1f67dcece3 Add rsmi_dev_serial_number_get()
Also correct whitespace issues

Change-Id: I7ffe23672304c31ed08d7148b04a19a7d4c3d7ef


[ROCm/amdsmi commit: cf13d6f4d8]
2019-07-22 07:09:53 -05:00
Harish Kasiviswanathan 5c1b5241c3 Test rsmi_dev_drm_render_minor_get()
Change-Id: I5c0702efc8ed1bc155292e4c3a73d74e5c66204e
Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>


[ROCm/amdsmi commit: 904ea5fc27]
2019-07-11 13:13:03 -04:00
Chris Freehill 270c881cf8 Add rsmi_dev_firmware_version_get()
Change-Id: Iba3e5f3eaa0eb031fc013fc168bded22bc249b5c


[ROCm/amdsmi commit: 31e02fdc61]
2019-07-09 22:50:44 -05:00