[PATCH v5 0/8] Add support for Firefox's gecko profile format

Anup Sharma posted 8 patches 2 years, 3 months ago
Only 7 patches received!
.../perf/scripts/python/bin/perf-gecko-record |   2 +
.../perf/scripts/python/bin/perf-gecko-report |   3 +
tools/perf/scripts/python/perf-gecko.py       | 339 ++++++++++++++++++
tools/perf/tests/shell/test_perf_gecko.sh     | 188 ++++++++++
4 files changed, 532 insertions(+)
create mode 100644 tools/perf/scripts/python/bin/perf-gecko-record
create mode 100644 tools/perf/scripts/python/bin/perf-gecko-report
create mode 100644 tools/perf/scripts/python/perf-gecko.py
create mode 100755 tools/perf/tests/shell/test_perf_gecko.sh
[PATCH v5 0/8] Add support for Firefox's gecko profile format
Posted by Anup Sharma 2 years, 3 months ago
This patch series adds support for Firefox's gecko profile format.
The format is documented here [1].

I have incorporated several changes based on feedback from the
previous version of the patch.

Changes in v5:
- Reorganized the patch series to ensure that each patch works independently.
- Renamed the file to perf-gecko.py.
- Added command exection support for the script. The script can now be
  executed as "perf script report perf-gecko > output.json."
- Simplified the usage information; previously it was "perf script
  perf-gecko.py > output.json," now it is "perf script report
  perf-gecko > output.json."
- Merged the test and command execution patches into this series,
  which were previously in a separate series.

Committer Testing:
- Tested with a perf.data file generated for single and multiple cpu
  cores enabled.
- Uploaded the stdout into profiler.firefox.com and verified the
  output.
- Verified the output with the output generated by the existing
  script as mentioned here [2].

Method:
- perf record -F 99 -a -g -- sleep 5
- perf script report perf-gecko > output.json
- upload output.json to profiler.firefox.com

[1] https://github.com/firefox-devtools/profiler/blob/main/docs-developer/gecko-profile-format.md
[2] https://perf.wiki.kernel.org/index.php/Tutorial#Firefox_Profiler

Anup Sharma (8):
  perf scripts python: Add initial script file with usage information
  perf scripts python: Extact necessary information from process event
  perf scripts python: Add classes and conversion functions
  perf scripts python: Add trace end processing and PRODUCT and
    CATEGORIES information
  perf scripts python: Implement add sample function and thread
    processing
  perf scripts python: Implement add sample function and thread
    processing
  perf scripts python: Add command execution for firefox gecko converter
    script
  perf test: Add support for testing firefox gecko converter script

 .../perf/scripts/python/bin/perf-gecko-record |   2 +
 .../perf/scripts/python/bin/perf-gecko-report |   3 +
 tools/perf/scripts/python/perf-gecko.py       | 339 ++++++++++++++++++
 tools/perf/tests/shell/test_perf_gecko.sh     | 188 ++++++++++
 4 files changed, 532 insertions(+)
 create mode 100644 tools/perf/scripts/python/bin/perf-gecko-record
 create mode 100644 tools/perf/scripts/python/bin/perf-gecko-report
 create mode 100644 tools/perf/scripts/python/perf-gecko.py
 create mode 100755 tools/perf/tests/shell/test_perf_gecko.sh

-- 
2.34.1