[Intel-gfx] [igt-dev] [PATCH i-g-t v2] intel_gpu_top: Hide unused clients

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Mon Feb 1 10:05:21 UTC 2021


On 01/02/2021 09:57, Chris Wilson wrote:
> Quoting Tvrtko Ursulin (2021-02-01 09:53:20)
>>
>> On 01/02/2021 09:31, Chris Wilson wrote:
>>> Hide inactive clients by pressing 'i' (toggle in interactive mode).
>>>
>>> v2: Fix location of filter_idle.
>>>
>>> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
>>> Cc: Tvrtko Ursulin <tvrtko.ursulin at linux.intel.com>
>>> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin at linux.intel.com>
>>> ---
>>>    tools/intel_gpu_top.c | 9 +++++++++
>>>    1 file changed, 9 insertions(+)
>>>
>>> diff --git a/tools/intel_gpu_top.c b/tools/intel_gpu_top.c
>>> index 60ff62d28..d88b6cc61 100644
>>> --- a/tools/intel_gpu_top.c
>>> +++ b/tools/intel_gpu_top.c
>>> @@ -1595,6 +1595,7 @@ print_imc(struct engines *engines, double t, int lines, int con_w, int con_h)
>>>    }
>>>    
>>>    static bool class_view;
>>> +static bool filter_idle;
>>>    
>>>    static int
>>>    print_engines_header(struct engines *engines, double t,
>>> @@ -2115,6 +2116,9 @@ static void process_stdin(unsigned int timeout_us)
>>>                case 'q':
>>>                        stop_top = true;
>>>                        break;
>>> +             case 'i':
>>> +                     filter_idle ^= true;
>>> +                     break;
>>>                case '1':
>>>                        class_view ^= true;
>>>                        break;
>>> @@ -2323,9 +2327,14 @@ int main(int argc, char **argv)
>>>    
>>>                                for_each_client(clients, c, j) {
>>>                                        assert(c->status != PROBE);
>>> +
>>>                                        if (c->status != ALIVE)
>>>                                                break; /* Active clients are first in the array. */
>>>    
>>> +                                     /* Active clients before idle */
>>> +                                     if (filter_idle && !c->total_runtime)
>>> +                                             break;
>>> +
>>
>> Break won't be correct for id sort. I don't see what did not work with
>> v1? It should be effectively the same apart from the break.
> 
> We didn't the client to peek into.

Ahaha did not spot you put the diff in wrong function. :)

> Maybe you want to do v3 :)

Sure.

Regards,

Tvrtko



More information about the Intel-gfx mailing list