node/deps/v8/tools
Ben Noordhuis 6ebd85e105 v8: don't busy loop in cpu profiler thread
Reduce the overhead of the CPU profiler by replacing sched_yield() with
nanosleep() in V8's tick event processor thread.  The former only yields
the CPU when there is another process scheduled on the same CPU.

Before this commit, the thread would effectively busy loop and consume
100% CPU time.  By forcing a one nanosecond sleep period rounded up to
the task scheduler's granularity (about 50 us on Linux), CPU usage for
the processor thread now hovers around 10-20% for a busy application.

PR-URL: https://github.com/joyent/node/pull/8789
Ref: https://github.com/strongloop/strong-agent/issues/3
Reviewed-by: Trevor Norris <trev.norris@gmail.com>
2015-01-12 16:49:07 -08:00
..
gcmole Update v8 to 3.9.9 2012-02-27 12:11:09 -08:00
gyp v8: don't busy loop in cpu profiler thread 2015-01-12 16:49:07 -08:00
oom_dump Upgrade V8 to 3.5.3 2011-08-04 12:18:09 -07:00
testrunner deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
visual_studio Upgrade V8 to 3.4.10 2011-07-08 16:40:11 -07:00
android-build.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
android-ll-prof.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
android-run.py deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
android-sync.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
bash-completion.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
check-static-initializers.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
codemap.js Upgrade V8 to 3.6.4 2011-09-15 09:42:06 -07:00
common-includes.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
consarray.js Upgrade v8 to version 1.2.3. 2009-05-12 00:12:56 +02:00
csvparser.js Upgrade V8 to 3.1.5 2011-02-16 10:38:49 -08:00
disasm.py Update v8 to 3.9.9 2012-02-27 12:11:09 -08:00
freebsd-tick-processor Upgrade V8 to 3.4.10 2011-07-08 16:40:11 -07:00
fuzz-harness.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
gc-nvp-trace-processor.py Upgrade V8 to 3.8.2 2011-12-21 10:54:24 -08:00
gdb-v8-support.py Upgrade V8 to 3.6.1 2011-09-07 21:23:29 -07:00
gen-postmortem-metadata.py gyp: fix post-mortem in v0.11 2014-07-23 18:56:49 +04:00
generate-ten-powers.scm Upgrade V8 to 2.1.7 2010-03-23 15:19:32 -07:00
grokdump.py deps: downgrade v8 to 3.14.5 2013-02-25 23:45:02 +01:00
js2c.py v8: upgrade to v3.11.10 2012-06-14 01:37:13 +02:00
jsmin.py v8: upgrade to v3.11.10 2012-06-14 01:37:13 +02:00
linux-tick-processor V8: Upgrade to 3.13.7.1 2012-09-21 01:52:24 +02:00
ll_prof.py deps: downgrade v8 to 3.14.5 2013-02-25 23:45:02 +01:00
logreader.js Upgrade V8 to 3.7.12 2011-12-05 16:29:01 -08:00
mac-nm Upgrade v8 to 1.3.5 2009-08-19 16:37:15 +02:00
mac-tick-processor Upgrade V8 to 1.3.1 2009-07-31 14:36:48 +02:00
merge-to-branch.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
presubmit.py deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
process-heap-prof.py Upgrade V8 to 3.6.1 2011-09-07 21:23:29 -07:00
profile.js Upgrade V8 to 3.4.12.1 2011-07-15 17:47:20 -07:00
profile_view.js Upgrade V8 to 3.1.5 2011-02-16 10:38:49 -08:00
push-to-trunk.sh deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
run-tests.py V8: Upgrade to 3.14.5.8 2013-03-06 12:59:58 -08:00
run-valgrind.py V8: Upgrade to 3.13.7.1 2012-09-21 01:52:24 +02:00
splaytree.js Upgrade V8 to 3.4.12.1 2011-07-15 17:47:20 -07:00
stats-viewer.py Upgrade V8 to 3.4.10 2011-07-08 16:40:11 -07:00
status-file-converter.py deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
test-server.py deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
test-wrapper-gypbuild.py V8: Upgrade to 3.13.7.1 2012-09-21 01:52:24 +02:00
test.py deps: update v8 to 3.15.11 2013-01-01 16:07:02 +04:00
tickprocessor-driver.js V8: Upgrade to 3.13.7.1 2012-09-21 01:52:24 +02:00
tickprocessor.js deps: downgrade v8 to 3.14.5 2013-02-25 23:45:02 +01:00
utils.py Upgrade V8 to 3.7.12 2011-12-05 16:29:01 -08:00
windows-tick-processor.bat Upgrade V8 to 2.5.2 2010-10-30 11:13:37 -07:00