Doug Coleman
f3c8423382
Fix require-hook
2011-11-02 17:26:13 -07:00
Doug Coleman
03a5293ed1
Add stack effects for the sampling profiler
2011-11-02 17:26:13 -07:00
Joe Groff
10764be703
oops, typo in factor.sh
2011-11-02 17:18:26 -07:00
Joe Groff
8cf18d1a82
remove BSD,solaris,etc. misc platform support code
2011-11-02 17:13:51 -07:00
Doug Coleman
7378ba7717
Unbreakify the new profiler, add a couple of unit tests to demonstrate displaying output.
2011-11-02 17:01:43 -07:00
Doug Coleman
a09a278981
Add a unit test vocabulary for vocabs.loadeer.
2011-11-02 16:47:53 -07:00
Doug Coleman
4d66cd26dc
Keep the profiling results even when the quotation throws an exception.
2011-11-02 16:47:27 -07:00
Doug Coleman
05c96477f3
Use -reuseview in jedit by default.
2011-11-02 16:47:10 -07:00
Doug Coleman
fb44adef99
Clean up formatting, rename load-vocab-hook to require-hook. Add a unit test for vocabs.loader.
2011-11-02 16:31:42 -07:00
Doug Coleman
86e3817e40
Actually let the user pick an editor after editor protocol change.
2011-11-02 16:05:39 -07:00
Joe Groff
6ac8478d80
sequences: relate max, min, supremum, infimum docs
...
Suggested by @yac. Closes #321 .
2011-11-02 13:43:06 -07:00
Joe Groff
82a62181ce
vm: count samples during unoptimized compiler
2011-11-02 13:23:21 -07:00
Joe Groff
e0c68d5a3f
vm: fix scrub-league assert abuse
2011-11-02 13:23:21 -07:00
Joe Groff
2fc6b0b9be
vm: forgot to add atomic.hpp
2011-11-02 13:23:20 -07:00
Joe Groff
7de62e8dbb
hashtables.identity: test assoc-like
2011-11-02 13:23:20 -07:00
Joe Groff
73845fdad9
vm: separate 'current_gc_p' from 'current_gc'
...
The 'current_gc' handle doesn't need to be volatile, just the state of GC-ness
2011-11-02 13:23:19 -07:00
Joe Groff
4d39e59054
vm: add atomic::load and atomic::store functions
...
Abstract out the fence-and-load and store-and-fence patterns
2011-11-02 13:23:19 -07:00
Joe Groff
81aac9359f
tools.profiler.sampling: fix stack effect name
2011-11-02 13:23:19 -07:00
Joe Groff
1745e22211
tools.profiler.sampling: make rate a global var
2011-11-02 13:23:19 -07:00
Joe Groff
4330a645f4
tools.profiler.sampling: groom flat profile
2011-11-02 13:23:18 -07:00
Joe Groff
be8db5aed3
vm: sample thread object rather than raw context
2011-11-02 13:23:18 -07:00
Joe Groff
fb837b91dc
tools.profiler.sampling: flat profile report
2011-11-02 13:23:18 -07:00
Joe Groff
fd96103d50
tools.profiler.sampling: smoke test compact-gc
2011-11-02 13:23:18 -07:00
Joe Groff
575f7fd663
hashtables.identity: support assoc-like
2011-11-02 13:23:17 -07:00
Joe Groff
7da8a9776f
vm: sample code block owners instead of blocks
2011-11-02 13:23:17 -07:00
Joe Groff
e880095da3
vm: fix data roots in get-samples primitive
2011-11-02 13:23:17 -07:00
Joe Groff
4037c981eb
vm: die if we fault in a fault
2011-11-02 13:23:16 -07:00
Joe Groff
f645c82b8a
tools.profiler.sampling: add detail to profile.
2011-11-02 13:23:16 -07:00
Joe Groff
d4736d4e3a
tools.profiler.sampling: "top-down" and "profile."
2011-11-02 13:23:16 -07:00
Joe Groff
29fa23c40a
vm: quell MSVC warnings
2011-11-02 13:23:16 -07:00
Joe Groff
30ed9b535b
vm: parameterize sampling rate
2011-11-02 13:23:15 -07:00
Joe Groff
43c832c991
help.handbook: update link to counting profiler
2011-11-02 13:23:15 -07:00
Joe Groff
87316ae28f
tools.profiler.sampling: smoke tests and metadata
2011-11-02 13:23:15 -07:00
Joe Groff
799053661e
vm: better organize atomics and sample counter
2011-11-02 13:23:15 -07:00
Joe Groff
6d3d8392d1
tools.profiler.counting: rename help article
2011-11-02 13:23:14 -07:00
Joe Groff
eb749bb535
tools.profiler.sampling: very basic frontend words
2011-11-02 13:23:14 -07:00
Joe Groff
89ea69b61b
vm: fix comments mangled by find & replace
2011-11-02 13:23:14 -07:00
Joe Groff
38a5184fdf
math.statistics: fix stack effect on collect-by
2011-11-02 13:23:13 -07:00
Joe Groff
27ac4c60f4
vm: factor out sample counting code
2011-11-02 13:23:13 -07:00
Joe Groff
baebb317e4
whitespace
2011-11-02 13:23:13 -07:00
Joe Groff
34ea20beca
vm: only show factorbug help the first time
2011-11-02 13:23:13 -07:00
Joe Groff
1a665f3eac
vm: more accurate sample timing on windows
2011-11-02 13:23:12 -07:00
Joe Groff
d9afe92c97
get sampler working under windows
2011-11-02 13:23:12 -07:00
Joe Groff
252915a37c
fix platform dependency in leaf-signal-handler
2011-11-02 13:23:12 -07:00
Joe Groff
abaa051768
vm: fix build on windows
2011-11-02 13:23:12 -07:00
Joe Groff
1351e30e52
vm: sampling profiler timer for windows
...
Spawn a thread and have it spin on the performance counter, triggering safepoints on the main thread every sample time
2011-11-02 13:23:11 -07:00
Joe Groff
981862f35e
Revert "syntax: make it so PRIMITIVE: verifies primitives"
...
This reverts commit 200ea70cffc4bdc74a97e4981442161f64cdbaa3.
2011-11-02 13:23:11 -07:00
Joe Groff
a08ba5103a
primitives: fix effect of (clear-samples)
2011-11-02 13:23:11 -07:00
Joe Groff
125c46c10f
vm: stub out windows sampling timer implementation
...
AFAIK Windows has no equivalent to setitimer. We'll probably need to use a thread that periodically pauses and samples the main VM thread.
2011-11-02 13:23:10 -07:00
Joe Groff
f5cdfaeb2a
vm: count samples from foreign threads
...
On OS X it appears the mach exception thread and libdispatch queue threads occasionally get the SIGALRM from the itimer. Count those as foreign_thread_samples instead of letting the signal kill the process.
2011-11-02 13:23:10 -07:00