[PATCH i-g-t v3] tests/intel/xe_pm_residency: Print execution and sleep times
Poosa, Karthik
karthik.poosa at intel.com
Mon Sep 23 09:16:53 UTC 2024
On 20-09-2024 17:16, Riana Tauro wrote:
> Hi Karthik
>
> On 9/20/2024 2:01 PM, Gupta, Anshuman wrote:
>>
>>
>>> -----Original Message-----
>>> From: Poosa, Karthik <karthik.poosa at intel.com>
>>> Sent: Friday, September 20, 2024 2:03 PM
>>> To: igt-dev at lists.freedesktop.org
>>> Cc: Gupta, Anshuman <anshuman.gupta at intel.com>; Nilawar, Badal
>>> <badal.nilawar at intel.com>; Tauro, Riana <riana.tauro at intel.com>; Poosa,
>>> Karthik <karthik.poosa at intel.com>
>>> Subject: [PATCH i-g-t v3] tests/intel/xe_pm_residency: Print
>>> execution and sleep
>>> times
>>>
>>> Print the workload execution and sleep times of the test to help
>>> diagnose
>>> timeouts.
>>>
>>> v2: Patchwork test re-run.
>>>
>>> v3:
>>> - Assert if syncobj_wait took more than 1.2 seconds, as it causes
>>> the test
>>> to timeout because test would sleep for more than 120 seconds which
>>> triggers per task timeout.
>>>
>>> Signed-off-by: Karthik Poosa <karthik.poosa at intel.com>
>>> Reviewed-by: Riana Tauro <riana.tauro at intel.com>
>>> ---
>>> tests/intel/xe_pm_residency.c | 5 ++++-
>>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/tests/intel/xe_pm_residency.c
>>> b/tests/intel/xe_pm_residency.c index
>>> 0e687558b..343fdd694 100644
>>> --- a/tests/intel/xe_pm_residency.c
>>> +++ b/tests/intel/xe_pm_residency.c
>>> @@ -139,11 +139,14 @@ static void exec_load(int fd, struct
>>> drm_xe_engine_class_instance *hwe, unsigned
>>> elapsed = igt_nsec_elapsed(&tv);
>>> igt_assert_eq(data->data, done[1]);
>>>
>>> - igt_debug("Execution took %.3fms (submit %.1fus, wait
>>> %.1fus)\n",
>>> + igt_info("Execution took %.3fms (submit %.1fus, wait
>>> %.1fus)\n",
>>> 1e-6 * elapsed,
>>> 1e-3 * submit,
>>> 1e-3 * (elapsed - submit));
>> We don't need to change to igt_info upon igt_assert it will dump each
>> igt_debug log.
>>>
>>> + /* Assert if syncobj_wait took more than 1.2 seconds */
>> Explain by comment why 1.2 seconds ?
>>> + igt_assert((uint64_t)(elapsed - submit) < (uint64_t)(1.2 *
>>> +NSEC_PER_SEC));
>
> Why are we checking (elapsed-submit) here when sleep is calculated
> only based on elapsed?
Hi Riana,
Because I wanted to assert on syncobj_wait time. We dont expect it to
take in seconds for MI_STORE.
'elapsed' would have both submit and wait time.
See the sample log below.
Execution took 1.202ms (submit 302.4us, wait 899.8us)
>
> Thanks,
> Riana
>> Your calculation is based upon the igt runner per test timeout which
>> can change.
>> So better to stick with 1 second. Or better to get per test timeout
>> via igt environment
>> variable.
>> Cc: Kamil
>> Is it possible to get the per test igt timeout value in igt test ?
>>
>> Thanks,
>> Anshuman
>>> +
>>> syncobj_reset(fd, &syncobj, 1);
>>>
>>> /*
>>> --
>>> 2.25.1
>>
More information about the igt-dev
mailing list