Brian Anderson
ecaf9e39c9
Convert alt to match. Stop parsing alt
2012-08-06 15:36:30 -07:00
Eric Holk
c973732a23
Enabling pingpong benchmark.
2012-08-06 13:25:34 -07:00
Eric Holk
bd9d5e50be
Add missing =>
2012-08-06 09:55:53 -07:00
Eric Holk
9f287c211e
Refcount tasks in packets to avoid races.
...
Revert "Once again, revert "Use pipes in compiletest""
Fixes #3098
2012-08-06 09:10:19 -07:00
Brian Anderson
025d86624d
Switch alts to use arrows
2012-08-05 22:08:09 -07:00
Ben Blum
f57760c609
Add task-perf-linked-failure.rs
2012-08-03 20:24:41 -04:00
Eric Holk
739e83d859
Xfailing until the pipe race is fixed.
2012-08-03 15:22:33 -07:00
Niko Matsakis
31c5cec55b
Purge placement new; Make borrowck know about unary move.
...
cc #3071
2012-08-02 22:36:36 -07:00
Eric Holk
f76a46242b
Convert pfib to pipes. This is a useful stress test.
2012-08-02 18:55:44 -07:00
Eric Holk
1f2178e2d3
Removing an obsolete benchmark
2012-08-02 18:55:44 -07:00
Niko Matsakis
97452c0ca1
Remove modes from map API and replace with regions.
...
API is (for now) mostly by value, there are options to use it by
reference if you like. Hash and equality functions must be pure
and by reference (forward looking to the day when something
like send_map becomes the standard map).
2012-08-02 15:53:28 -07:00
Ben Blum
8d7dfa44b0
Linked failure: Add '100 generations' bench test ( #1868 )
2012-08-02 00:07:12 -04:00
Brian Anderson
b355936b4d
Convert ret to return
2012-08-01 19:16:06 -07:00
Brian Anderson
c5437c0bbf
Fix failing tests
2012-07-31 21:13:57 -07:00
Paul Stansifer
a9cc5066ee
Change syntax extension syntax: #m[...]
-> m!{...}
.
2012-07-30 18:38:15 -07:00
Elliott Slaughter
416584d339
Revert "Fix build by xfailing tests which produce irreducible CFGs."
...
This reverts commit 9ca2a11137
.
2012-07-30 15:58:23 -07:00
Tim Chevalier
082d8314da
Rewrite bitv to use classes and optimize its representation
...
Rewrote bitv as a class that uses a 32-bit int as its representation
for bit vectors of 32 bits or less, and a vector (the old representation)
otherwise. I didn't benchmark very much, but a bit of informal benchmarking
suggested this is a win.
Closes #2341
2012-07-29 18:39:15 -07:00
Patrick Walton
93c2f5e0e4
rustc: Use coherence for operator overloading.
...
The only use of the old-style impls is now placement new.
2012-07-27 19:35:24 -07:00
Eric Holk
3c731df890
re-xfailing pingpong
2012-07-26 17:11:04 -07:00
Eric Holk
79f5d62d47
Added .peek for recv_packets
2012-07-26 17:10:48 -07:00
Eric Holk
c918bd01b0
Fix borrow check errors in k-nucleotide.
2012-07-26 17:10:48 -07:00
Eric Holk
65beca4e01
Use iteration protocol for ebml, use vec::view in more places (issue #2880 )
2012-07-26 17:10:48 -07:00
Damian Gryski
74d60a619a
shootout-mandelbrot: devnull writer needs get_type impl
2012-07-26 17:05:13 -07:00
Graydon Hoare
43867bf6f3
Merge pull request #3014 from elliottslaughter/fix-failed-build-by-xfailing-tests
...
Fix build by xfailing tests which produce irreducible CFGs.
2012-07-25 14:50:02 -07:00
Elliott Slaughter
9ca2a11137
Fix build by xfailing tests which produce irreducible CFGs.
2012-07-25 14:42:37 -07:00
Eric Holk
6748f78cb1
Polymorphic protocols work well enough to do MapReduce.
...
I did some horrible things with type variable naming here. It should do the right thing in most cases, but we'll need to go through and make it correct someday.
2012-07-25 12:12:26 -07:00
Eric Holk
f5be06fa1f
Added infrastructure to spin for a bit on recv. A spin count > 0 makes bench/pingpong.rs about 10x faster, but makes msgsend-ring-pipes unbearably slow.
2012-07-25 12:12:25 -07:00
Eric Holk
35576168dc
Added a benchmark of bounded vs unbounded. Bounded is 8-12% faster. The macros currently don't work without pretty printing first.
2012-07-25 12:12:25 -07:00
Ben Blum
b30a58abe2
Convert bench and run-pass tests to new task_builder interface
2012-07-23 20:09:17 -04:00
Niko Matsakis
e0ea67a2a6
prevent regions from escaping in ifaces; remove &r.T syntax
2012-07-18 11:48:58 -07:00
Patrick Walton
db020ab63c
rustc: Implement and enforce instance coherence
2012-07-17 15:46:43 -07:00
Gareth Daniel Smith
fe43d66613
replace core::tuple functions with methods
2012-07-16 22:33:20 +01:00
Michael Sullivan
92743dc2a6
Move the world over to using the new style string literals and types. Closes #2907 .
2012-07-14 01:03:43 -07:00
Eric Holk
05543fd04d
Make tests pass
2012-07-12 20:09:30 -07:00
Eric Holk
fec8059ed5
Move port_set and shared_chan into core.
2012-07-12 18:16:01 -07:00
Eric Holk
ba10819800
Added a message send that uses shared chans. They are slower than port selectors, but scale better.
2012-07-12 18:16:01 -07:00
Eric Holk
75e55c1b12
Faster select. This version gives us about a 4x speedup.
2012-07-12 18:16:01 -07:00
Eric Holk
c56a38ac2a
Added a version of msgsend that uses pipes and select. Here, select is way too slow to be useful, but this can be optimized.
2012-07-12 18:16:00 -07:00
Eric Holk
1a276dba52
Switch map-reduce control protocol to use pipes. This exposed a bug in the pipe compiler, which is now fixed.
...
Use hashmaps in MapReduce
Tweak word-count difficulty
2012-07-12 18:16:00 -07:00
Michael Sullivan
1c62f5ff74
Get rid of all of the remaining /~s in the code base.
2012-07-12 15:13:18 -07:00
Eric Holk
bf88ff5217
Remove slow vec+=, and make word-count difficulty harder.
2012-07-11 11:36:37 -07:00
Eric Holk
a00478b7c9
word-count-generic now generates random words in benchmark mode.
2012-07-11 11:36:37 -07:00
Eric Holk
22e955a76a
Move streams into core.
2012-07-10 22:00:48 -07:00
Eric Holk
594d9a0554
Use protocol compiler in future.rs. Also split recv into recv and try_recv.
2012-07-10 22:00:48 -07:00
Brian Anderson
71fd542f26
test: Fix shootout-binarytrees
2012-07-10 12:09:36 -07:00
Brian Anderson
1e8ae18ba1
test: Fix shootout-fasta
2012-07-10 12:05:23 -07:00
Graydon Hoare
c26d02557e
Switch 'cont' to 'again' everywhere. Close #2229 .
2012-07-09 14:37:48 -07:00
Brian Anderson
02ef651f95
Increase the difficulty of chameneos-redux under 'make perf'
2012-07-07 22:39:23 -07:00
Kevin Cantu
638ee23fcf
Add improvements suggested by erickt and bblum
2012-07-07 22:27:00 -07:00
Kevin Cantu
2bd482ef11
Add the Alioth chameneos-redux benchmark
...
This adds a Rust implementation of the Alioth chameneos-redux benchmark:
http://shootout.alioth.debian.org/u64q/performance.php?test=chameneosredux
This version already seems faster than Clojure, Ruby, and OCaml. I'm running
with N=6,000,000 in about 1m 50s. Further optimization would be good, though.
I'm talking right now with @eholk about how pipes could be used (this is 1:many)...
2012-07-07 22:27:00 -07:00
Eric Holk
b925648ac7
Added a k-nucleotide version that uses pipes. 31% speedup.
2012-07-06 15:16:16 -07:00
Eric Holk
604f7c66ff
Removing locked queue port/chan prototype.
2012-07-06 11:05:28 -07:00
Eric Holk
7b03832c95
Updating tests to use pipes.
2012-07-06 10:42:41 -07:00
Eric Holk
a787f40013
Select on pipes.
...
Updating syntax and test cases.
2012-07-06 10:42:39 -07:00
Eric Holk
a4838c93aa
Enabling pipes for all stages, and updating closure syntax.
2012-07-06 10:42:39 -07:00
Eric Holk
67b0760592
Moved pipes runtime support to libcore, and add a test that will help verify that busy waiting is no longer happening.
...
Fixing the result of a bad merge.
2012-07-06 10:42:39 -07:00
Eric Holk
5c3889a02f
Contracts work well enough to do the message ring benchmark, and it's really fast.
...
Fixing old-style vector, and xfail-prettying th contracts test because the pretty printer is unhappy.
2012-07-06 10:42:38 -07:00
Tim Chevalier
889be71cb4
Comments only: change TODOs to FIXMEs and annotate them
2012-07-05 16:10:29 -07:00
Gareth Daniel Smith
be0141666d
convert doc-attributes to doc-comments using ./src/etc/sugarise-doc-comments.py (and manually tweaking) - for issue #2498
2012-07-04 19:18:13 -07:00
Ben Striegel
f2e2a14f36
Remove empty argument lists from do expressions
2012-07-04 17:21:29 -07:00
Brian Anderson
41bca84dd9
core: Convert iter::repeat to the for protocol
2012-07-03 17:31:31 -07:00
Graydon Hoare
7762c80d1b
Fix more future::future breakage.
2012-07-03 16:16:45 -07:00
Graydon Hoare
debb7e4641
Switch 'native' to 'extern' (or 'foreign' in some descriptions)
2012-07-03 16:11:00 -07:00
Lindsey Kuper
7a4ebcefcb
Update nbody benchmark to more idiomatic Rust; nix obsolete comments
2012-07-02 15:20:59 -07:00
Brian Anderson
d1fc2b5995
Convert to new closure syntax
2012-07-01 19:19:32 -07:00
Brian Anderson
a3382b6f26
Eliminate usages of old sugared call syntax
2012-06-30 16:01:49 -07:00
Michael Sullivan
98e161f00e
Switch the compiler over to using ~[] notation instead of []/~. Closes #2759 .
2012-06-29 17:41:45 -07:00
Michael Sullivan
e7760470b4
Make a bunch of tests stop using the deprecated vector syntax.
2012-06-28 17:33:15 -07:00
Eric Holk
61b1875c16
make core-std respect RUST_BENCH
2012-06-27 22:30:08 -07:00
Eric Holk
0c42a3ffee
vec::append reuses its left hand side when possible. (issue #2719 )
2012-06-27 16:19:49 -07:00
Eric Holk
133fdc1148
Remove unnecessary bounds checks in vec::push_all (issue #2719 )
...
Don't needlessly drop closures (issue #2603 )
2012-06-27 11:32:22 -07:00
Eric Holk
ccd2394ff9
perf: improved the core-std benchmark
2012-06-26 14:08:16 -07:00
Eric Holk
a08281616f
More perf tweaks (issue #2719 )
2012-06-26 14:08:16 -07:00
Michael Sullivan
329eca6044
Make vectors uglier ([]/~). Sorry. Should be temporary. Closes #2725 .
2012-06-25 20:00:46 -07:00
Eric Holk
b19c98ea9a
Some perf fixes, although vec::slice is still too slow (Issue #2719 )
2012-06-25 16:38:12 -07:00
Tim Chevalier
da470ff5b8
Merge
2012-06-25 13:29:41 -07:00
Tim Chevalier
e9f19283b3
Remove resources from a few places I missed
2012-06-25 12:20:51 -07:00
Eric Holk
3ba7ca5c9f
Improved perf for msgsend (Issue #2719 )
2012-06-25 11:27:32 -07:00
Eric Holk
07e1d1c6b6
Improved graph500 performance (Issue #2719 )
2012-06-25 11:15:45 -07:00
Eric Holk
26c11f7b50
Use must_have_lock instead of private functions. (Issue #2700 )
...
I hereby declare that messages sent from the same source arrive in order (Issue #2605 )
Removing FIXME, owned is the correct type here. (Issue #2704 )
Remove outdated FIXME (Issue #2703 )
Updating test for spawning native functions (Issue #2602 )
Removing bogus FIXME (Issue #2599 )
2012-06-22 15:14:42 -07:00
Tim Chevalier
588c1eb41f
Remove resources from remaining test cases
2012-06-22 13:11:29 -07:00
Eric Holk
40559ea839
Adding a benchmark for the new message passing code
2012-06-21 16:11:11 -07:00
Eric Holk
4d1e415611
Remove some commented out code so the pretty printer doesn't get confused.
2012-06-21 16:11:11 -07:00
Eric Holk
9bdb2c9e48
Library vecs are fast now.
2012-06-21 16:11:11 -07:00
Eric Holk
0e5cfd9f33
Move vector addition out of trans and into libcore.
2012-06-21 16:11:11 -07:00
Tim Chevalier
1b4dcbecac
Comments only: typos
2012-06-20 20:12:14 -07:00
Brian Anderson
4dcf84e4f4
Remove bind. Issue #2189
2012-06-20 17:27:28 -07:00
Eric Holk
be664ddd29
Moved arc to libcore and added an arc that allows shared mutable state through mutual exclusion.
2012-06-19 10:31:12 -07:00
Eric Holk
9ee1480fd1
Another benchmark
2012-06-19 10:31:12 -07:00
Tim Chevalier
0276a3376b
Revert "Moved arc to libstd and added an arc that allows shared mutable state through mutual exclusion."
...
This reverts commit 015527b0ce
.
2012-06-16 15:21:08 -07:00
Eric Holk
015527b0ce
Moved arc to libstd and added an arc that allows shared mutable state through mutual exclusion.
2012-06-15 22:00:58 -04:00
Tim Chevalier
0a6ef35c8c
while => for
2012-06-14 15:35:43 -07:00
Tim Chevalier
13d4b61182
Comments only: annotate FIXMEs in tests
2012-06-14 15:35:43 -07:00
Brian Anderson
748bd12dc7
bench: xfail-pretty shootout-k-nucleotide
2012-06-09 16:12:28 -07:00
Brian Anderson
03e186cd04
bench: Modify shootout-k-nucleotide to not read from the filesystem
2012-06-09 13:57:18 -07:00
Brian Anderson
a884044066
bench: Increase the difficulty of fasta
2012-06-09 13:25:05 -07:00
Kevin Cantu
c2a9cc9394
Add the Alioth k-nucleotide benchmark
...
This is not particularly well performing yet (60x slower than C++ or
worse). I think the slicing and the copies made for the hashmap
are mostly responsible, but YMMV.
By default shootout-fasta writes to stdout and shootout-k-nucleotide
reads from stdin. To use an intermediate file with a fixed name,
set RUST_BENCH...
2012-06-09 12:58:12 -07:00
Eric Holk
1e8f501343
Machine types are different from int/uint, etc (Issue #2187 )
2012-06-04 19:16:47 -07:00
Brian Anderson
6e0085210c
core: Make uint::to_str faster
2012-06-04 14:30:57 -07:00
Ted Horst
3c4a1ab0c4
fix args to shootout-mandelbrot benchmark
2012-06-03 09:45:23 -05:00