qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/3] Add Scripts for Finding Top 25 Executed Functions
@ 2020-06-26 16:45 Ahmed Karaman
  2020-06-26 16:45 ` [PATCH v4 1/3] scripts/performance: Add topN_perf.py script Ahmed Karaman
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Ahmed Karaman @ 2020-06-26 16:45 UTC (permalink / raw)
  To: qemu-devel, aleksandar.qemu.devel, alex.bennee, rth, eblake,
	ldoktor, ehabkost, crosa
  Cc: Ahmed Karaman

Greetings,

As a part of the TCG Continous Benchmarking project for GSoC this
year, detailed reports discussing different performance measurement
methodologies and analysis results will be sent here on the mailing
list.

The project's first report was published on the mailing list on the
22nd of June:
https://lists.gnu.org/archive/html/qemu-devel/2020-06/msg06692.html

A section in this report deals with measuring the top 25 executed
functions when running QEMU. It includes two Python scripts that
automatically perform this task.

This series adds these two scripts to a new performance directory
created under the scripts directory. It also adds a new
"Miscellaneous" section to the end of the MAINTAINERS file with a
"Performance Tools and Tests" subsection.

Previous versions of the series:
v3:
https://lists.nongnu.org/archive/html/qemu-devel/2020-06/msg07856.html
v2:
https://lists.nongnu.org/archive/html/qemu-devel/2020-06/msg06147.html
v1:
https://lists.nongnu.org/archive/html/qemu-devel/2020-06/msg04868.html

Best regards,
Ahmed Karaman

v3->v4:
- Save all intermediate files generated by the scripts in the '/tmp'
  directory instead of the current working directory of the user.
- Use more descriptive variable names and table headers.

v2->v3:
- Use a clearer "Syntax" and "Example of usage" in the script comment
  and commit message.
- Manually specify the instructions required to run Perf instead of
  relying on the stderr produced by Perf.
- Use more descriptive variable names.

v1->v2:
- Add an empty line at the end of the MAINTAINERS file.
- Move MAINTAINERS patch to be the last in the series.
- Allow custom number of top functions to be specified.
- Check for vallgrind and perf before executing the scripts.
- Ensure sufficient permissions when running the topN_perf script.
- Use subprocess instead of os.system
- Use os.unlink() for deleting intermediate files.
- Spread out the data extraction steps.
- Enable execution permission for the scripts.
- Add script example output in the commit message.


Ahmed Karaman (3):
  scripts/performance: Add topN_perf.py script
  scripts/performance: Add topN_callgrind.py script
  MAINTAINERS: Add 'Performance Tools and Tests'subsection

 MAINTAINERS                           |   7 ++
 scripts/performance/topN_callgrind.py | 140 ++++++++++++++++++++++++
 scripts/performance/topN_perf.py      | 149 ++++++++++++++++++++++++++
 3 files changed, 296 insertions(+)
 create mode 100755 scripts/performance/topN_callgrind.py
 create mode 100755 scripts/performance/topN_perf.py

-- 
2.17.1



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-06-27 17:59 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-06-26 16:45 [PATCH v4 0/3] Add Scripts for Finding Top 25 Executed Functions Ahmed Karaman
2020-06-26 16:45 ` [PATCH v4 1/3] scripts/performance: Add topN_perf.py script Ahmed Karaman
2020-06-27 17:58   ` Aleksandar Markovic
2020-06-26 16:45 ` [PATCH v4 2/3] scripts/performance: Add topN_callgrind.py script Ahmed Karaman
2020-06-27 17:57   ` Aleksandar Markovic
2020-06-26 16:45 ` [PATCH v4 3/3] MAINTAINERS: Add 'Performance Tools and Tests'subsection Ahmed Karaman
2020-06-27 17:58   ` Aleksandar Markovic

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).