mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-13 02:46:23 +00:00
tests/pm_rps: add test descriptions
Document a copule of the subtests with their purpose, methods, and expected results. Reviewed-by: Ben Widawsky <benjamin.widawsky@intel.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
This commit is contained in:
parent
1765838e34
commit
392e8ee75f
@ -526,6 +526,26 @@ static void stabilize_check(int *freqs)
|
|||||||
igt_debug("Waited %d msec to stabilize cur\n", wait);
|
igt_debug("Waited %d msec to stabilize cur\n", wait);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* reset - test that turbo works across a ring stop
|
||||||
|
*
|
||||||
|
* METHOD
|
||||||
|
* Apply a low GPU load, collect the resulting frequencies, then stop
|
||||||
|
* the GPU by stopping the rings. Apply alternating high and low loads
|
||||||
|
* following the restart, comparing against the previous low load freqs
|
||||||
|
* and whether the GPU ramped to max freq successfully. Finally check
|
||||||
|
* that we return to idle at the end.
|
||||||
|
*
|
||||||
|
* EXPECTED RESULTS
|
||||||
|
* Low load freqs match, high load freqs reach max, and GPU returns to
|
||||||
|
* idle at the end.
|
||||||
|
*
|
||||||
|
* FAILURES
|
||||||
|
* Failures here could indicate turbo doesn't work across a ring stop
|
||||||
|
* or that load generation routines don't successfully generate stable
|
||||||
|
* or maximal GPU loads. It could also indicate a thermal limit if the
|
||||||
|
* GPU isn't able to reach its maximum frequency.
|
||||||
|
*/
|
||||||
static void reset(void)
|
static void reset(void)
|
||||||
{
|
{
|
||||||
int pre_freqs[NUMFREQ];
|
int pre_freqs[NUMFREQ];
|
||||||
@ -565,6 +585,27 @@ static void reset(void)
|
|||||||
idle_check();
|
idle_check();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* blocking - test that GPU returns to idle after a forced blocking boost
|
||||||
|
* and a low GPU load. Frequencies resulting from the low load are also
|
||||||
|
* expected to match.o
|
||||||
|
*
|
||||||
|
* METHOD
|
||||||
|
* Collect frequencies resulting from a low GPU load and compare with
|
||||||
|
* frequencies collected after a quiesce and a second low load, then
|
||||||
|
* verify idle.
|
||||||
|
*
|
||||||
|
* EXPECTED RESULTS
|
||||||
|
* Frequencies match and GPU successfully returns to idle afterward.
|
||||||
|
*
|
||||||
|
* FAILURES
|
||||||
|
* Failures in this test could be due to several possible bugs:
|
||||||
|
* - load generation creates unstable frequencies, though stabilize_check()
|
||||||
|
* is supposed to catch this
|
||||||
|
* - quiescent_gpu() call does not boost GPU to max freq
|
||||||
|
* - frequency ramp down is too slow, causing second set of collected
|
||||||
|
* frequencies to be higher than the first
|
||||||
|
*/
|
||||||
static void blocking(void)
|
static void blocking(void)
|
||||||
{
|
{
|
||||||
int pre_freqs[NUMFREQ];
|
int pre_freqs[NUMFREQ];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user