| Commit message (Collapse) | Author | Age |
|
|
|
| |
We are going to re-use them in the profile CLI tool.
|
|
|
|
|
|
|
| |
We want to have access to more metadata, including the application id,
when capturing profiling data for later review, as the immediate
association between a process and its profiling data is not available in
that case.
|
|
The EosProfileProbe API allows defining profiling probes that can be
used to efficiently measure the time spent in a critical section.
The Profiling API is meant to collect samples and generate a report
at the end of the lifetime of the process, either by printing out the
results once the process terminates; or by saving the raw data in a
binary file that can be loaded at a later date.
This profiling API is meant to be as close as possible to a zero cost
abstraction:
- probes are only allocated if profiling is enabled
- all profiling API is a no-op if profiling isn't enabled
- the C API is meant to be easily tied to a scope, through the
use of auto-cleanup macros provided by GLib
This allows projects using the Endless SDK to keep the profiling probes
in place, instead of conditionally compile them in.
https://phabricator.endlessm.com/T18514
|