public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/4] perf script: Add script per-event-dump support
@ 2017-09-24 11:12 yuzhoujian
  2017-09-24 11:12 ` [PATCH v2 1/4] Add a new element for the struct perf_tool, and add the --per-event-dump option for perf script yuzhoujian
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: yuzhoujian @ 2017-09-24 11:12 UTC (permalink / raw)
  To: peterz, mingo, alexander.shishkin, jolsa, dsahern, namhyung,
	milian.wolff, arnaldo.melo, yuzhoujian
  Cc: linux-perf-users, linux-kernel

Introduce a new option to print trace output to files named by the
monitored events and update perf-script documentation accordingly.

 Shown below is output of perf script command with the newly introduced
 option.

         $perf record -e cycles -e cs -ag -- sleep 10
         $perf script --per-event-dump
         $ls /
         perf.data-script-dump-cycles.txt perf.data-script-dump-cs.txt

 Without per-event-dump support, drawing flamegraphs for different events
 is really hard. You can only monitor one event at a time for perf record.
 Using this option, we can get the trace output files named by the monitored
 events, and could draw flamegraphs according to the event's name.

yuzhoujian (4):
  Add a new element for the struct perf_tool, and add the
    --per-event-dump option for perf script
  Add fp argument to print functions
  Replace printf with fprintf for all print functions
  Make all print functions receive the fp argument, and opens a dump    
    file in process_event.

changes in v2:
	- remove the set of script.tool.per_event_dump variable.
	- add the __maybe_unused attribute for the fp argument in the second patch.
	- remove the fp_selection_helper function for setting the fp argument.
	- split the original second patch(Makes all those related functions receive the FILE pointer) to two patches.
	- modify the file name of per-event-dump to <ORIGINAL PERF DATA FILE NAME>-script-dump-<EVENT NAME>.txt

 tools/perf/builtin-script.c | 452 ++++++++++++++++++++++++--------------------
 tools/perf/util/tool.h      |   1 +
 2 files changed, 250 insertions(+), 203 deletions(-)

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 9+ messages in thread
* [PATCH v2 0/4] perf script: Add script per-event-dump support
@ 2017-09-26  6:48 yuzhoujian
  2017-09-26  6:48 ` [PATCH v2 1/4] Add a new element for the struct perf_tool, and add the --per-event-dump option for perf script yuzhoujian
  0 siblings, 1 reply; 9+ messages in thread
From: yuzhoujian @ 2017-09-26  6:48 UTC (permalink / raw)
  To: peterz, mingo, alexander.shishkin, jolsa, dsahern, namhyung,
	milian.wolff, arnaldo.melo, yuzhoujian
  Cc: linux-perf-users, linux-kernel

Introduce a new option to print trace output to files named by the 
monitored events and update perf-script documentation accordingly.

Shown below is output of perf script command with the newly introduced
option.

         $perf record -e cycles -e cs -ag -- sleep 10
         $perf script --per-event-dump
         $ls
         perf.data-script-dump-cycles.txt perf.data-script-dump-cs.txt

Without per-event-dump support, drawing flamegraphs for different events
would be a very troublesome thing. You can monitor only one event at a time 
if you want to get flamegraphs for different events. Using this option, you 
can get the trace output files named by the monitored events, and could draw 
flamegraphs according to the event's name.

yuzhoujian (4):
Patch 1: Add a new element for the struct perf_tool, and add the 
        --per-event-dump option for perf script.
Patch 2: Add fp argument to print functions.
Patch 3: Replace printf with fprintf for all print functions.
Patch 4: Make all print functions receive the fp argument, and opens a dump    
        file in process_event.

changes since v1: 
- Patch 1: Remove the set of script.tool.per_event_dump variable.
- Patch 2: Add the __maybe_unused attribute for the fp argument in the second patch.
- Patch 3: remove the fp_selection_helper function for setting the fp argument.
- Patch 2: split the original second patch(Makes all those related functions receive the FILE pointer) to two patches.
- Patch 4: modify the file name of per-event-dump to <ORIGINAL PERF DATA FILE NAME>-script-dump-<EVENT NAME>.txt

 tools/perf/builtin-script.c | 452 ++++++++++++++++++++++++--------------------
 tools/perf/util/tool.h      |   1 +
 2 files changed, 250 insertions(+), 203 deletions(-)

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 9+ messages in thread
* [PATCH v2 0/4] perf script: Add script per-event-dump support
@ 2017-09-24  3:37 yuzhoujian
  2017-09-24  3:37 ` [PATCH v2 1/4] Add a new element for the struct perf_tool, and add the --per-event-dump option for perf script yuzhoujian
  0 siblings, 1 reply; 9+ messages in thread
From: yuzhoujian @ 2017-09-24  3:37 UTC (permalink / raw)
  To: peterz, mingo, alexander.shishkin, jolsa, dsahern, namhyung,
	milian.wolff, arnaldo.melo, yuzhoujian
  Cc: linux-perf-users, linux-kernel

Introduce a new option to print trace output to files named by the
 monitored events and update perf-script documentation accordingly.

 Shown below is output of perf script command with the newly introduced
 option.

         $perf record -e cycles -e context-switches -ag -- sleep 10
         $perf script --per-event-dump
         $ls /
         cycles.stacks context-switches.stacks

 Without per-event-dump support, drawing flamegraphs for different events
 is really hard. You can only monitor one event at a time for perf record.
 Using this option, we can get the trace output files named by the monitored
 events, and could draw flamegraphs according to the event's name.

yuzhoujian (4):
  Add a new element for the struct perf_tool, and add the
    --per-event-dump     option for perf script
  Add fp argument to print functions
  Replace printf with fprintf for all print functions
  Makes all print functions receive the fp argument, and opens a dump   
     file in process_event.

changes in v2:
	- remove the set of script.tool.per_event_dump varible.
	- add the __maybe_unused attribute for the fp argument in the second patch.
	- remove the fp_selection_helper function for setting the fp argument.
	- split the original second patch(Makes all those related functions receive the FILE pointer) to two patches.
	- modify the file name of per-event-dump to <ORIGINAL PERF DATA FILE NAME>-script-dump-<EVENT NAME>.txt 
 tools/perf/builtin-script.c | 455 ++++++++++++++++++++++++--------------------
 tools/perf/util/tool.h      |   1 +
 2 files changed, 253 insertions(+), 203 deletions(-)

-- 
1.8.3.1

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

end of thread, other threads:[~2017-09-26  6:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-09-24 11:12 [PATCH v2 0/4] perf script: Add script per-event-dump support yuzhoujian
2017-09-24 11:12 ` [PATCH v2 1/4] Add a new element for the struct perf_tool, and add the --per-event-dump option for perf script yuzhoujian
2017-09-25 12:56   ` Jiri Olsa
     [not found]     ` <CAHCio2hkYkgqiMEaz=miTDGNvDwR89xVPvJWBw_3kkB42gUTNQ@mail.gmail.com>
2017-09-26  2:44       ` David Ahern
2017-09-24 11:12 ` [PATCH v2 2/4] Add fp argument to print functions yuzhoujian
2017-09-24 11:12 ` [PATCH v2 3/4] Replace printf with fprintf for all " yuzhoujian
2017-09-24 11:12 ` [PATCH v2 4/4] Make all print functions receive the fp argument, and opens a dump file in process_event yuzhoujian
  -- strict thread matches above, loose matches on Subject: below --
2017-09-26  6:48 [PATCH v2 0/4] perf script: Add script per-event-dump support yuzhoujian
2017-09-26  6:48 ` [PATCH v2 1/4] Add a new element for the struct perf_tool, and add the --per-event-dump option for perf script yuzhoujian
2017-09-24  3:37 [PATCH v2 0/4] perf script: Add script per-event-dump support yuzhoujian
2017-09-24  3:37 ` [PATCH v2 1/4] Add a new element for the struct perf_tool, and add the --per-event-dump option for perf script yuzhoujian

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox