diff options
author | Andi McClure <andi.mcclure@xamarin.com> | 2016-04-09 04:16:10 +0300 |
---|---|---|
committer | Rodrigo Kumpera <kumpera@gmail.com> | 2016-04-20 00:34:46 +0300 |
commit | 6637a6532c99c9ef55516b6fb6d4a68c7700d181 (patch) | |
tree | ad9625378f769f06bda557145f227e308b778a68 /man/mprof-report.1 | |
parent | 962fcc1198ed70572b5d4586cd176445893804cf (diff) |
[profiler] Limit the number of allocated sample hit structures.
Diffstat (limited to 'man/mprof-report.1')
-rw-r--r-- | man/mprof-report.1 | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/man/mprof-report.1 b/man/mprof-report.1 index 71b3e0dfd75..af61efa37cb 100644 --- a/man/mprof-report.1 +++ b/man/mprof-report.1 @@ -171,6 +171,24 @@ TIMER can have the following values: collect \f[I]NUM\f[] frames at the most. The default is 8. .IP \[bu] 2 +\f[I]maxsamples=NUM\f[]: stop allocating reusable sample events +once \f[I]NUM\f[] events have been allocated (a value of zero for +all intents and purposes means unlimited). By default, the value +of this setting is the number of CPU cores multiplied by 1000. This +is usually a good enough value for typical desktop and mobile apps. +If you're losing too many samples due to this default (which is +possible in apps with an unusually high amount of threads), you +may want to tinker with this value to find a good balance between +sample hit rate and performance impact on the app. The way it works +is that sample events are enqueued for reuse after they're flushed +to the output file; if a thread gets a sampling signal but there are +no sample events in the reuse queue and the profiler has reached the +maximum number of sample allocations, the sample gets dropped. So a +higher number for this setting will increase the chance that a +thread is able to collect a sample, but also necessarily means that +there will be more work done by the profiler. You can run Mono with +the \f[I]--stats\f[] option to see statistics about sample events. +.IP \[bu] 2 \f[I]calldepth=NUM\f[]: ignore method enter/leave events when the call chain depth is bigger than NUM. .IP \[bu] 2 |