[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAH0uvojRALoYJ6QqhvK1f5naoxCyQ0LuC5WcGm7NDuCUnjd5_w@mail.gmail.com>
Date: Tue, 5 Aug 2025 16:25:36 -0700
From: Howard Chu <howardchu95@...il.com>
To: Ian Rogers <irogers@...gle.com>
Cc: Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>, Namhyung Kim <namhyung@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Jiri Olsa <jolsa@...nel.org>,
Adrian Hunter <adrian.hunter@...el.com>, Kan Liang <kan.liang@...ux.intel.com>,
James Clark <james.clark@...aro.org>, Xu Yang <xu.yang_2@....com>,
"Masami Hiramatsu (Google)" <mhiramat@...nel.org>, Collin Funk <collin.funk1@...il.com>,
Weilin Wang <weilin.wang@...el.com>, Andi Kleen <ak@...ux.intel.com>,
"Dr. David Alan Gilbert" <linux@...blig.org>, Thomas Richter <tmricht@...ux.ibm.com>,
Tiezhu Yang <yangtiezhu@...ngson.cn>, Gautam Menghani <gautam@...ux.ibm.com>,
Thomas Falcon <thomas.falcon@...el.com>, Chun-Tse Shao <ctshao@...gle.com>,
linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org
Subject: Re: [PATCH v9 00/16] New perf ilist app
Hi Ian,
On Fri, Jul 25, 2025 at 11:52 AM Ian Rogers <irogers@...gle.com> wrote:
>
> This patch series builds up to the addition of a new ilist app written
> in python using textual [1] for the UI. The app presents perf PMUs and
> events, displays the event information as in `perf list` while at the
> bottom of the console showing recent activity of the event in total
> and across all CPUs. It also displays metrics, placed in a tree
> through their metric group, again with counts being displayed in the
> bottom panel.
>
> The first ground work patches of fixes, cleanup and refactoring were
> separated into their own series here:
> https://lore.kernel.org/lkml/20250709214029.1769089-1-irogers@google.com/
>
> The second part of the patches adds event json for the software PMU
> and makes the tracepoint PMU support iteration of events and the
> like. Without these improvements the tracepoint and software PMUs will
> appear to have no events in the ilist app. As the software PMU moves
> parsing to json, the legacy hard coded parsing is removed. This has
> proven controversial for hardware events and so that cleanup isn't
> done here.
>
> The final patches expand the perf python APIs and add the ilist
> command. To run it you need the updated perf.cpython.so in your
> PYTHONPATH and then execute the script. Expanding PMUs and then
> selecting events will cause event informatin to be displayed in the
> top-right and the counters values to be displayed as sparklines and
> counts in the bottom half of the screen.
>
> [1] https://textual.textualize.io/
>
Methinks this is a great series that opens up a ton of possibilities.
Fwiw, here are my opinions:
1)
Hitting enter while searching directly activates the collection, I'd
rather hit enter twice for more control.
2)
steps to execution:
~~~
sudo -s
source /home/howard/venv/bin/activate
pip install textual
PYTHONPATH=/tmp/perf/python python/ilist.py
~~~
For me, it's a lot of commands--especially since I need to install the
textual package myself. If the process were simplified or
well-documented on the perf wiki, I would have no problem entering all
the commands.
I don't have any issue running ilist.py using shabam (#!/usr/bin/env
python3), but to improve it slightly, ilist.py should be renamed to
ilist, just like b4 and yum.
3)
It would be better if the TreeNode could expand to the full height in
the left window when not collecting events, but only show their event
names, their parent, and positions.
4)
It'd be nice if I can pause the event collection.
5)
Sparkline's height can be bigger.
6)
If this is an interactive command that collects the count of events
why not name it istat? ilist sounds like reading the menu without
placing an order.
I apologize for the delay.
Thanks,
Howard
Powered by blists - more mailing lists