Eli Barzilay
554f026c71
"The Great Computer Language Shootout" -> "The Computer Language Benchmarks Game"
...
As requested by Isaac Gouy.
2010-06-20 22:19:43 -04:00
Eli Barzilay
ee57029a92
One more optimization, getting it to 60x.
2010-06-20 18:37:07 -04:00
Eli Barzilay
eec0f4bf66
Yet another 2x factor.
...
(Total ~22x.)
2010-06-20 18:37:06 -04:00
Eli Barzilay
c78f367d9f
Another simple improvement, making things about twice faster.
...
Total speedup is now ~14x.
2010-06-20 18:37:06 -04:00
Eli Barzilay
26c89b2ac6
And one more optimization gets this to a total of 6x improvement.
2010-06-20 18:37:06 -04:00
Eli Barzilay
e975e8e0c8
Another optimization, makes the `fl->fx' issue from the last one
...
irrelevant since it's not using it in the tight loop, but buys a bigger
improvement anyway.
2010-06-20 18:37:06 -04:00
Eli Barzilay
96006264ad
Some improved shootout benchmarks.
...
* An improved version of the `fasta' benchmark: ~2.5 times faster, and
if an inlined `unsafe-fl->fx' is added it is probably going to be
about ~3.5 times faster.
* `reversecomplement' -- revised code that is ~2.5 times faster, further
tweaks and unsafe ops gets it to ~4.5 times.
* Doing the structs differently in `binarytrees' and a few minor tweaks
get it to be ~1.5 times faster. This is probably because a leaf has
now only one field.
* `mandelbrot' improved a little (~1.2x), but the code is pretty much a
rewrite. (Given some more flonum inlining it can probably do much
better.)
* Added a comment to `pidigits-gmp' saying that it was used without
attribution.
These versions use unsafe operations, but I'm not putting them in
separate files since it's easy to turn them off. I've also removed
"mandelbrot-unsafe.rkt", since it was identical to the safe version.
2010-06-20 18:36:25 -04:00
Vincent St-Amour
f16732adbe
Fixed a typo in the shootout harness.
2010-06-18 20:30:15 -04:00
Vincent St-Amour
416f4fd3c3
Added input generation for the regexmatch benchmark.
2010-06-18 17:43:06 -04:00
Vincent St-Amour
894d159123
Disabled thread-ring in the harness, since it calls exit and doesn't
...
display its running time.
2010-06-18 17:43:05 -04:00
Vincent St-Amour
1dc963684b
Rewrote the typed partialsums benchmark to be closer to the untyped
...
version.
2010-06-18 17:43:04 -04:00
Vincent St-Amour
31f285d23c
Adjusted benchmark sizes.
2010-06-18 17:43:04 -04:00
Vincent St-Amour
343e9d23b4
Ported some new benchmarks and variants to Typed Scheme.
2010-06-18 17:43:04 -04:00
Vincent St-Amour
ffad1edd7a
Added the fannkuch-redux benchmark, which replaced fannkuch on the
...
shootout roster.
2010-06-18 17:43:03 -04:00
Vincent St-Amour
7ccae0fb1d
Got rid of assertions in the benchmarks caused by naturals as indices.
2010-06-18 17:43:02 -04:00
Vincent St-Amour
54eefc52ed
Relaxed some type constraints on the ray tracer benchmark.
2010-06-18 17:43:01 -04:00
Vincent St-Amour
e0b880d1ea
Fixed the sumcol benchmark to obey the new type for read-line.
2010-06-18 17:43:01 -04:00
Vincent St-Amour
72ec18cc68
Rewrote the moments benchmark to potentially benefit from unboxing of
...
loop accumulators.
2010-06-18 17:43:01 -04:00
Vincent St-Amour
06eb544fd6
Fixes to the shootout benchmarks to reflect the new weaker promotion
...
rules.
2010-06-18 17:43:00 -04:00
Vincent St-Amour
ff1c3874cc
Added a coercion to inexact to avoid the case: (* <float> 0) -> exact 0
...
which causes a segfault when the result is used with an unsafe-fl
operation.
2010-06-18 17:43:00 -04:00
Vincent St-Amour
cff4eef7b2
Adjusted input size for the shootout benchmarks.
2010-06-18 17:43:00 -04:00
Vincent St-Amour
31d4da6f39
Added an empty benchmark to measure Typed Scheme's startup time.
2010-06-18 17:42:59 -04:00
Vincent St-Amour
7bb8405871
Fixed a bug in the shootout harness, which threw away generated input.
2010-06-18 17:42:59 -04:00
Vincent St-Amour
3e0446d774
Modified some of the untyped shootout benchmarks to be closer to the
...
typed versions.
2010-06-18 17:42:58 -04:00
Vincent St-Amour
7f3db138e7
Integrated the typed shootout benchmarks to the untyped harness.
2010-06-18 17:42:58 -04:00
Vincent St-Amour
d48f1bb6aa
Racketified the untyped shootout benchmarks.
2010-06-18 17:42:58 -04:00
Vincent St-Amour
4fde1e8ccb
Ported most of the shootout benchmarks to Typed Scheme.
2010-06-18 17:42:57 -04:00
Vincent St-Amour
93e5d0e9dc
Added an option to subtract the running time of the empty benchmark to
...
the tabulator.
2010-06-15 16:39:32 -04:00
Vincent St-Amour
a33372eb78
Added an option to display the coefficient of variation to the
...
tabulator.
2010-06-15 16:21:51 -04:00
Vincent St-Amour
fe09ce3dee
Added Jeff Siskind's ray tracer to the racket-specific benchmarks.
2010-06-11 19:48:23 -04:00
Vincent St-Amour
727000fbfb
Fixed the common benchmark harness to compile the typed benchmarks
...
before running them.
2010-06-11 19:48:22 -04:00
Matthew Flatt
d6d5c914f7
cases when number functions produce 0: clarify docs and fix (atan 0 x)
...
for positive exact x;
also clarify docs on some cases when divide-by-zero exception is raised
2010-06-11 15:04:24 -06:00
Stevie Strickland
7b38cef4e8
Fix first-order cons/c check in mzlib contract tests.
2010-06-09 15:52:29 -04:00
Vincent St-Amour
f42880c320
Moved the typed common benchmarks to a separate subdirectory.
2010-06-09 14:54:33 -04:00
Vincent St-Amour
077e1d9bca
Increased the size of the pseudoknot benchmark and ported it to
...
idiomatic racket, then to Typed Scheme.
2010-06-09 14:51:52 -04:00
Stevie Strickland
99bb46d225
Fix flat immutable container ctcs so that errors pinpoint specific elements.
...
* Fixes immutable container contract combinators so that, if given flat
contracts, they report blame errors in terms of the specific element
that failed, instead of reporting the entire container as failing.
This fixes issues seen with contracts such as (listof string?), where
the contract is applied to a list with far too many elements to print
all at once and the failing element is never printed.
* Fixes vector-immutable/c so that if all the element contracts are flat,
we create a flat contract, like the other immutable container contract
combinators.
* Also have more appropriate first-order checks for each combinator
than just "Is it the right type of container?".
These changes affect:
listof
non-empty-listof
vector-immutableof
cons/c
box-immutable/c
vector-immutable/c
2010-06-09 13:29:04 -04:00
Matthew Flatt
d6ddbe15d5
support kw/opt args in define-syntax' and
define-for-syntax'
2010-06-09 13:05:43 -04:00
Sam Tobin-Hochstadt
6d2b5569f4
Remove bogus #lang line
2010-06-08 13:08:13 -04:00
Sam Tobin-Hochstadt
9fc7a1eca4
Use `assert' for casts in typed benchmarks.
2010-06-08 12:05:58 -04:00
Sam Tobin-Hochstadt
5f5dca4c69
Undo changes to benchmarks to use `sub1'.
2010-06-08 12:05:57 -04:00
Matthew Flatt
61d39f2568
bytecode compiler convert (apply f .... (list arg ...))
2010-06-01 19:22:39 -06:00
Eli Barzilay
d0ecc73df5
More plt-scheme -> racket-lang, specifically for planet and bugs urls.
2010-05-31 15:11:27 -04:00
Vincent St-Amour
64ff5555fb
Corrected some of the typed benchmarks to typecheck with Naturals as indices.
2010-05-29 14:23:11 -04:00
Vincent St-Amour
311be27422
Changed the common benchmark harness to compile benchmarks before
...
running them.
2010-05-28 19:05:45 -04:00
Matthew Flatt
9f7a08663d
fix bug in JIT handling of with-continuation-mark
...
The bug was specific to the case of a wcm in tail position
of another wcm, where its mark should replace the outer one,
and where the outer one is not in tail position with respect
to the enclosing function
Merge to v5.0
2010-05-28 14:28:06 -06:00
Matthew Flatt
6006a4c84d
fix helper file for raco ctool test
2010-05-27 13:33:51 -06:00
Vincent St-Amour
44a7a71923
Corrected the typed versions of some benchmarks to be closer to the
...
untyped versions.
2010-05-27 09:30:49 -04:00
Vincent St-Amour
ca9e35b9be
Changed some of the benchmarks to run for more iterations.
2010-05-26 19:48:32 -04:00
Vincent St-Amour
61f6a2579b
Documented the typed benchmarks.
2010-05-26 19:48:31 -04:00
Matthew Flatt
7442f14305
fix problems with raco exe
...
Merge to v5.0
2010-05-26 17:07:09 -06:00