Commit Graph

2379 Commits

Author SHA1 Message Date
9f00d904b0 Revert "libsysprof: add rwlock for symbol cache"
This reverts commit d1b4308af7.
2023-08-16 15:43:50 -07:00
48dc402c3b Revert "libsysprof: parallelize capture symbolizing"
This reverts commit a7a0c782d1.
2023-08-16 15:43:49 -07:00
3b97252a8e Revert "libsysprof: be defensive against null traceable"
This reverts commit c75022c257.
2023-08-16 15:43:46 -07:00
c75022c257 libsysprof: be defensive against null traceable 2023-08-16 14:06:40 -07:00
a7a0c782d1 libsysprof: parallelize capture symbolizing 2023-08-15 22:17:34 -07:00
d1b4308af7 libsysprof: add rwlock for symbol cache
This is necessary so we can start looking at threading symbolizers.
2023-08-15 19:21:31 -07:00
10807758aa sysprof: use sampled model for marks scrubber
This can save a tramendous number of items to look at in the scrubber.
2023-08-15 19:08:15 -07:00
9792759ba9 sysprof: cleanup n-items handling 2023-08-15 17:40:49 -07:00
efee8bda79 sysprof: use sampled model to limit input to xy series 2023-08-15 17:36:25 -07:00
08664bdcda sysprof: limit number of samples sent for normalization 2023-08-15 17:30:37 -07:00
6eb6514cd4 sysprof: add a new sampled model
The goal here is to allow us to look at way fewer items in a model rather
than every item. For example, we don't want to draw 32,000,000 stack
traces in the overview chart.
2023-08-15 17:30:13 -07:00
3598755963 libsysprof: flush incoming events when finalizing ring source
This just helps ensure we've not lost anything during the shutdown of the
profiler here.
2023-08-15 15:38:02 -07:00
c45aba997d libsysprof-capture: sleep and try again to get an event
Unless we've failed before, then just bail immediately so that applications
which loose their controller keep running with minimal overhead.
2023-08-15 15:37:24 -07:00
b96bf5c969 libsysprof: increase priority of mapped ring buffer source
We want to reduce the chances we've lost anything in these, which is
pretty important for memory tracing.
2023-08-15 14:41:23 -07:00
a9cf64903c libsysprof-capture: increase ring buffer size
Make sure there is less chance of losing information in these buffers.
2023-08-15 14:40:31 -07:00
f00773702a preload: always track realloc changes
We might go to zero, or we might change our size. Either way we want to
have accurate information about that size change.
2023-08-15 14:29:01 -07:00
9e87206c37 sysprof: set window title to include document
That way we can differentiate multiple windows.
2023-08-15 13:44:46 -07:00
c576df92db libsysprof: allow specifying type in index model 2023-08-14 21:48:51 -07:00
fad5f0381b sysprof: filter memory allocations by selected time 2023-08-14 16:49:47 -07:00
f1f71e0135 sysprof: add leak detection
This was one of the last pieces missing for 45.
2023-08-14 16:44:16 -07:00
a1499a62ac sysprof: update memory allocation icon 2023-08-14 16:43:59 -07:00
4967d5faeb libsysprof: add test for leak detection 2023-08-14 16:02:46 -07:00
f7a32750e2 libsysprof: add leak detector helper
This is a leak detector by finding allocations which do not have a
corresponding free record.
2023-08-14 16:02:46 -07:00
a27eee8087 libsysprof: give internal access to allocations bitset 2023-08-14 16:02:46 -07:00
45f08e07c9 libsysprof: externalize access to frames array
This can be useful to optimize some walking paths in other layers.
2023-08-14 16:02:46 -07:00
751337a47a sysprof: make zoom in/out sticky to left edge
Fixes #37
2023-08-14 11:27:40 -07:00
a141d9a194 sysprof-cli: bump default buffer size to 8mb
The goal here is just to reduce the number of file system transactions during
the recording process.
2023-08-14 10:26:24 -07:00
336d4a6e91 cli: add option to specify buffer size in pages 2023-08-14 10:22:33 -07:00
6e72cb3497 ui: Mark two strings translatable
- Logs
- Stack Traces
2023-08-13 02:22:08 +03:00
4ad44609d0 build: remove optional support for libunwind
backtrace() was only ever used for bringup, not actually meant to be used
in any production capacity.
2023-08-11 12:22:57 -07:00
912f8e8852 sysprof-cli: avoid erroring on non-zero exit 2023-08-09 22:49:24 -07:00
fd705063bf libsysprof: defend against empty symbol lists 2023-08-08 14:15:51 -07:00
3a875aaf26 sysprof: add missing CPU usage recording to template 2023-08-08 12:16:08 -07:00
a1211ec298 libsysprof: add some memory counters
We will probably add a bunch more here too.
2023-08-07 18:02:05 -07:00
fba4642451 build: fix static dep race in enums 2023-08-07 15:41:43 -07:00
8d2fe823a3 window: don't let window disposal cause app exit with greeter
If the greeter was shown and the window got closed, the whole app could
exit without this.
2023-08-07 15:27:49 -07:00
4aef0ffe12 sysprof: add greeter menu back
We don't have a way to show this until the main window is available
currently, which can be problematic if you need to get the help or
about info for troubleshooting.
2023-08-07 15:22:01 -07:00
13a1f97cad sysprof: disable frame-timings from compositor by default 2023-08-07 15:12:58 -07:00
5f60ae8f94 sysprof: fix window loading after recording 2023-08-07 15:12:16 -07:00
2e2c53ad6b sysprof: add --version option 2023-08-07 15:04:57 -07:00
b6692e8faa build: prepare for beta 2023-08-07 15:04:48 -07:00
6fbf7250b1 build: fix warning from release build 2023-08-07 14:52:37 -07:00
a40f330096 sysprof: fix check for development build 2023-08-07 14:50:47 -07:00
954e06ca14 sysprof: setup document subtitle for window 2023-08-07 14:47:18 -07:00
7ec7cb9b84 libsysprof: add a subtitle property
To make things easier to bind from the window.
2023-08-07 14:47:13 -07:00
2b57315bae sysprof: show loading information in window title 2023-08-07 14:36:02 -07:00
65515cfe64 sysprof: add progressbar while loading
And try to keep some of the window disabled during the loading process.
2023-08-07 14:32:49 -07:00
170122abc8 sysprof: show window while document is loading
That way the user knows something is actually going on.
2023-08-07 14:07:15 -07:00
4b89afd718 sysprof: ensure type for cpu section 2023-08-07 14:06:59 -07:00
08927ef4f7 sysprof: hoist capture open dialog into sysprof-window.c
This allows it to be reused from the window without having to have pages
in the greeter.
2023-08-07 13:48:54 -07:00