Commit Graph

15 Commits

Author SHA1 Message Date
cd4a22ed4b libsysprof-ui: use AdwPreferencesPage for memprof page 2022-07-22 14:46:59 -07:00
14a1a2f8df libsysprof-ui: fix spread of left-side paned 2022-04-02 15:12:10 -07:00
7f9599bd3e libsysprof-ui: fix missing toggle button usage 2022-04-01 17:12:52 -07:00
b048b78429 libsysprof-ui: cleanup builder ui style a bit
We can remove lots of things and be more consistent with conventions.
2022-04-01 14:09:31 -07:00
d26f1d8d75 memprofpage: fix togglebuttons and panels 2022-04-01 13:17:12 -07:00
8e9497b277 libsysprof-ui: use EggPaned 2022-04-01 13:16:35 -07:00
50def59469 memprofpage: remove use of packing 2022-04-01 13:15:49 -07:00
40c5f0a483 memprofpage: use Adwaita and cleanup usage 2022-04-01 13:15:49 -07:00
9a9ac2b3f6 libsysprof-ui: port a number of properties to GTK 4 2022-04-01 13:15:49 -07:00
6cc12c0779 memprofpage: port to GTK 4 2022-04-01 13:15:48 -07:00
7a040a6032 memprof: add section for allocation leaks
These are defined by allocation records that do not have a corresponding
release record.
2021-11-04 21:10:44 -07:00
8e81b1fcf9 libsysprof: add summary information for memprof profile 2020-02-19 00:16:36 -08:00
dd6b44cb2f libsysprof-ui: move controls above stack 2020-02-18 19:56:30 -08:00
16e35c1fa6 libsysprof-ui: allow switching to temporary allocations 2020-02-18 19:20:38 -08:00
33c81a3a9c memprof: add memory profiling using LD_PRELOAD
This brings over some of the techniques from the old memprof design.
Sysprof and memprof shared a lot of code, so it is pretty natural to
bring back the same callgraph view based on memory allocations.

This reuses the StackStash just like it did in memprof. While it
would be nice to reuse some existing tools out there, the fit of
memprof with sysprof is so naturally aligned, it's not really a
big deal to bring back the LD_PRELOAD. The value really comes
from seeing all this stuff together instead of multiple apps.

There are plenty of things we can implement on top of this that
we are not doing yet such as temporary allocations, cross-thread
frees, graphing the heap, and graphing differences between the
heap at to points in time. I'd like all of these things, given
enough time to make them useful.

This is still a bit slow though due to the global lock we take
to access the writer. To improve the speed here we need to get
rid of that lock and head towards a design that allows a thread
to request a new writer from Sysprof and save it in TLS (to be
destroyed when the thread exits).
2020-02-07 19:00:33 -08:00