Commit Graph

6 Commits

Author SHA1 Message Date
Ell
ea17d18d1b tools: in performance-log-viewer.py, defer UI updates util needed
In the performance-log viewer, defer updates to the various UI
elements when the selection changes until they're actually shown.
This improves responsiveness when changing the selection.

(cherry picked from commit a7afbe13ec)
2018-09-23 00:53:30 -04:00
Ell
cb26c31a96 tools: only show object/source basename in performance-log backtraces
... to reduce their verbosity.  Show the full path in the
corresponding tooltip.

(cherry picked from commit 2c8e3f8e0a)
2018-09-21 09:29:13 -04:00
Ell
e839794d36 tools: replace performance-log viewer call-graph direction icons
Use the less-ambiguous, if just as clumsy,
"format-indent-more/less" icons, to stand for the
caller -> callee, and callee -> caller, directions, respectively.

(cherry picked from commit c7a4eb4602)
2018-09-21 07:45:19 -04:00
Ell
c0e82c0381 tools: a few improvements in performance-log-viewer.py
Fix searching for samples by thread name, in particular, when there
are unnamed threads.

Use GtkMenuButton, instead of GtkButton, for the find-samples
header button.

Add mnemonics to the find-samples popover.

(cherry picked from commit c537341d35)
2018-09-21 02:42:05 -04:00
Ell
3d24dfbc6e tools: in performance-log-viewer.py, fix profile viewer search column
(cherry picked from commit f8dd444e98)
2018-09-16 12:35:09 -04:00
Ell
cc18c2f890 tools: add performance-log-viewer.py and driver
performance-log-viewer.py is a viewer for GIMP performance logs.
The viewer is made up of two parts: a sample-selection area at the
top, and an information area at the bottom.

The sample-selection area visualizes the sampled variables and
markers using a simultaneous set of plots, and displays the
currently selected samples.  Samples can be selected directly
through the sample-selection area, or by other means, such as
searching for all samples satisfying a certain condition, or
containing a certain function.

The information area shows global information stored in the log, as
well as information specific to the currently selected samples,
including variable listing and statistics, full backtrace, and
profile/call-graph information.

Note that performance-log-viewer.py takes its input from STDIN,
like the rest of the performance-log tools, and is therefore
suitable for use as part of a pipeline.  For standalone use, the
performance-log-viewer driver is also included, which takes the log
file as a command-line argument, and processes it through an
appropriate pipeline before feeding it to the viewer.

(cherry picked from commit 3601c9189b)
2018-09-16 12:05:35 -04:00