aboutsummaryrefslogtreecommitdiffstats
path: root/lib/tools
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2018-05-15 16:32:26 +0200
committerLukas Larsson <[email protected]>2018-05-15 16:36:48 +0200
commitd5dc5584884488c8fcb5710997a14c2c418692f3 (patch)
tree1058b4ef8953d6b814d898b890873ae2627a16d3 /lib/tools
parent3b3e2f46841e3e86c991be92d62cbb0360ca80e3 (diff)
downloadotp-d5dc5584884488c8fcb5710997a14c2c418692f3.tar.gz
otp-d5dc5584884488c8fcb5710997a14c2c418692f3.tar.bz2
otp-d5dc5584884488c8fcb5710997a14c2c418692f3.zip
erts: Make cpu_timestamp use per thread on Linux
If we don't use per thread the value becomes completely nonsensical on systems with more than one scheduler. We keep the old solaris behaviour in order to support the option, but it only really works when using a single scheduler.
Diffstat (limited to 'lib/tools')
-rw-r--r--lib/tools/doc/src/fprof.xml10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/tools/doc/src/fprof.xml b/lib/tools/doc/src/fprof.xml
index 4c9e48045e..72624bd33b 100644
--- a/lib/tools/doc/src/fprof.xml
+++ b/lib/tools/doc/src/fprof.xml
@@ -328,10 +328,16 @@
purposes. This option is only
allowed with the <c>start</c> option.</item>
<tag><c>cpu_time</c>| <c>{cpu_time, bool()}</c></tag>
- <item>The options <c>cpu_time</c> or <c>{cpu_time, true></c>
+ <item>The options <c>cpu_time</c> or <c>{cpu_time, true}</c>
makes the timestamps in the trace be in CPU time instead
of wallclock time which is the default. This option is
- only allowed with the <c>start</c> option.</item>
+ only allowed with the <c>start</c> option.
+ <warning><p>Getting correct values out of cpu_time can be difficult.
+ The best way to get correct values is to run using a single
+ scheduler and bind that scheduler to a specific CPU,
+ i.e. <c>erl +S 1 +sbt db</c>.</p>
+ </warning>
+ </item>
<tag><c>{procs, PidSpec}</c>| <c>{procs, [PidSpec]}</c></tag>
<item>Specifies which processes that shall be traced. If
this option is not given, the calling process is