[igt-dev] [PATCH i-g-t 2/2] i915/i915_power: Also show requested and actual freq's

Riana Tauro riana.tauro at intel.com
Thu Mar 23 05:03:39 UTC 2023



On 3/23/2023 4:34 AM, Ashutosh Dixit wrote:
> When power limits are in effect, in addition to measured power it is also
> important to see the requested and actual freq's and see how they change
> with set power limits. Add this to the test output.
> 
> v2: Display power for each gt (Riana)
> 
> Signed-off-by: Ashutosh Dixit <ashutosh.dixit at intel.com>
Looks good to me
Reviewed-by: Riana Tauro <riana.tauro at intel.com>
> ---
>   tests/i915/i915_power.c | 10 +++++++++-
>   1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/i915/i915_power.c b/tests/i915/i915_power.c
> index f2fd228698a..abf458573ef 100644
> --- a/tests/i915/i915_power.c
> +++ b/tests/i915/i915_power.c
> @@ -5,6 +5,7 @@
>   
>   #include "igt.h"
>   #include "i915/gem.h"
> +#include "igt_sysfs.h"
>   #include "igt_power.h"
>   
>   IGT_TEST_DESCRIPTION("i915 power measurement tests");
> @@ -27,6 +28,7 @@ static void sanity(int i915)
>   	double idle, busy;
>   	igt_spin_t *spin;
>   	uint64_t ahnd;
> +	int dir, gt, req, act;
>   
>   #define DURATION_SEC 2
>   
> @@ -34,6 +36,7 @@ static void sanity(int i915)
>   	igt_require(!igt_power_open(i915, &pwr, "gpu"));
>   	gem_quiescent_gpu(i915);
>   	idle = measure_power(&pwr, DURATION_SEC);
> +	igt_info("Measured idle power: %g mW\n", idle);
>   
>   	/* Busy power */
>   	ctx = intel_ctx_create_all_physical(i915);
> @@ -44,12 +47,17 @@ static void sanity(int i915)
>   	/* Wait till at least one spinner starts */
>   	igt_spin_busywait_until_started(spin);
>   	busy = measure_power(&pwr, DURATION_SEC);
> +	i915_for_each_gt(i915, gt, dir) {
> +		req = igt_sysfs_get_u32(dir, "rps_cur_freq_mhz");
> +		act = igt_sysfs_get_u32(dir, "rps_act_freq_mhz");
> +		igt_info("gt %d: req MHz: %d, act MHz: %d\n", gt, req, act);
> +	}
>   	igt_free_spins(i915);
>   	put_ahnd(ahnd);
>   	intel_ctx_destroy(i915, ctx);
>   	igt_power_close(&pwr);
>   
> -	igt_info("Measured power: idle: %g mW, busy: %g mW\n", idle, busy);
> +	igt_info("Measured busy power: %g mW\n", busy);
>   	igt_assert(idle >= 0 && busy > 0 && busy > idle);
>   }
>   


More information about the igt-dev mailing list