This repository has been archived by the owner on Jul 7, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
TODO
40 lines (38 loc) · 2.43 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Link the DflTask and DflSource which handles its idle callback and render a link between them
Try systemtap on various distro VMs
Add a details pane for viewing more detailed information about something selected in the timeline
Keep thread IDs visible all the time in the timeline
Add keyboard shortcuts for the timeline
Jump to source creation
Cycle through source dispatches
Add a search function to look for a particular GSource, GTask or dispatch
Add a command line stats tool
Can/Should we record subprocesses?
Verify buffered-input-stream correctness and add unit tests
Add parsing and analysis performance tests (see contexts.log)
Finish documenting everything
Include the recorded process’ command line in the recorded log: https://sourceware.org/systemtap/tapsets/API-cmdline-str.html — but this doesn't work with stapusr
Fuzz-test the parser
Add an LD_PRELOAD-based dunfell-record for the times when SystemTap doesn’t want to behave
Make it work for other event loops?
Generalise event sequence handling for other kinds of event sequences? GStreamer?
rotate the viewer 90 degrees
frame clock events? or highlight source dispatches which take more than 1/60s?
use format from sys prof?
collapse columns for when threads join
add stap probes to GTK+ (gtk_container_idle_sizer)
take a look at Chromium trace view
group related GSources
use monotonic clock in stap file
look at thread scheduling to avoid/highlight gaps in timeline
look at perf probes or stackwalkAPI for grabbing backtraces
check whether systemtap can attach part-way through a process' lifetime; would be useful for gnome-shell (telling a random user on the internet to debug a particular perf bug; or bugs which only appear after a few days)
maybe look at GooCanvas?
cursor which shows what's alive at some point in time
look at thread pools; how big is the queue; how many threads are there and when do they get spawned/joined; expose some of the internal state of the pool
ensure thread pool threads are named obviously
collapse periods of time where the process is context switched out?
https://www.chromium.org/_/rsrc/1441252029512/developers/how-tos/trace-event-profiling-tool/trace-event-reading/Screen%20Shot%202015-09-02%20at%208.46.48%20PM.png
write overview documentation of how it all fits together and what the policy is on tracing/visualising other things, like Clutter frame clock
auto-generate dunfell-record.stp?
work out how systemtap works and whether we could do probe points from JS