about summary refs log tree commit diff
path: root/src/test/bench/shootout-binarytrees.rs
AgeCommit message (Collapse)AuthorLines
2016-01-29Remove src/test/benchBrian Anderson-122/+0
I don't believe these test cases have served any purpose in years. The shootout benchmarks are now upstreamed. A new benchmark suite should rather be maintained out of tree.
2015-04-21std: Bring back f32::from_str_radix as an unstable APIAlex Crichton-2/+1
This API was exercised in a few tests and mirrors the `from_str_radix` functionality of the integer types.
2015-04-14Fallout: move from scoped to spawnAaron Turon-2/+2
2015-03-31std: Clean out #[deprecated] APIsAlex Crichton-3/+2
This commit cleans out a large amount of deprecated APIs from the standard library and some of the facade crates as well, updating all users in the compiler and in tests as it goes along.
2015-03-23Require feature attributes, and add them where necessaryBrian Anderson-0/+2
2015-03-01Make Int::pow() take exp as u32 instead usizeGuillaume Gomez-1/+1
2015-02-17Test fixes and rebase conflictsAlex Crichton-3/+3
2015-02-17rollup merge of #22435: aturon/final-stab-threadAlex Crichton-1/+1
Conflicts: src/test/bench/rt-messaging-ping-pong.rs src/test/bench/rt-parfib.rs src/test/bench/task-perf-spawnalot.rs
2015-02-17Fallout from stabilizationAaron Turon-1/+1
2015-02-16Replace some uses of deprecated os functionsSimonas Kazlauskas-4/+3
This commit mostly replaces some of the uses of os::args with env::args.
2015-02-13Cleanup getenv from tests and benchmarksSimonas Kazlauskas-1/+1
2015-02-05cleanup: replace `as[_mut]_slice()` calls with deref coercionsJorge Aparicio-1/+1
2015-02-02`for x in xs.into_iter()` -> `for x in xs`Jorge Aparicio-1/+1
Also `for x in option.into_iter()` -> `if let Some(x) = option`
2015-01-21Fix type inference problems in tests and docsAaron Turon-15/+17
2015-01-10Improvement of shootout-binarytrees.rsGuillaume Pinot-17/+21
Part of #18085 Instead of using an Enum, we use a struct with Option<&Tree> as leaves. It allow to limit a lot of allocation. before: ``` texitoi@vaio:~/dev/benchmarksgame-rs$ time ./bin/binary-trees-orig 20 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 real 0m3.860s user 0m11.032s sys 0m3.572s ``` after: ``` texitoi@vaio:~/dev/benchmarksgame-rs$ time ./bin/binary-trees 20 stretch tree of depth 21 check: -1 2097152 trees of depth 4 check: -2097152 524288 trees of depth 6 check: -524288 131072 trees of depth 8 check: -131072 32768 trees of depth 10 check: -32768 8192 trees of depth 12 check: -8192 2048 trees of depth 14 check: -2048 512 trees of depth 16 check: -512 128 trees of depth 18 check: -128 32 trees of depth 20 check: -32 long lived tree of depth 20 check: -1 real 0m2.824s user 0m9.224s sys 0m1.428s ```
2015-01-08bench: fix a few compiler warningsTshepang Lekhonkhobe-1/+1
2015-01-06Fallout from stabilizationAaron Turon-1/+1
2015-01-02Rollup test fixes and rebase conflictsAlex Crichton-1/+1
2015-01-01std: Second pass stabilization of syncAlex Crichton-5/+5
This pass performs a second pass of stabilization through the `std::sync` module, avoiding modules/types that are being handled in other PRs (e.g. mutexes, rwlocks, condvars, and channels). The following items are now stable * `sync::atomic` * `sync::atomic::ATOMIC_BOOL_INIT` (was `INIT_ATOMIC_BOOL`) * `sync::atomic::ATOMIC_INT_INIT` (was `INIT_ATOMIC_INT`) * `sync::atomic::ATOMIC_UINT_INIT` (was `INIT_ATOMIC_UINT`) * `sync::Once` * `sync::ONCE_INIT` * `sync::Once::call_once` (was `doit`) * C == `pthread_once(..)` * Boost == `call_once(..)` * Windows == `InitOnceExecuteOnce` * `sync::Barrier` * `sync::Barrier::new` * `sync::Barrier::wait` (now returns a `bool`) * `sync::Semaphore::new` * `sync::Semaphore::acquire` * `sync::Semaphore::release` The following items remain unstable * `sync::SemaphoreGuard` * `sync::Semaphore::access` - it's unclear how this relates to the poisoning story of mutexes. * `sync::TaskPool` - the semantics of a failing task and whether a thread is re-attached to a thread pool are somewhat unclear, and the utility of this type in `sync` is question with respect to the jobs of other primitives. This type will likely become stable or move out of the standard library over time. * `sync::Future` - futures as-is have yet to be deeply re-evaluated with the recent core changes to Rust's synchronization story, and will likely become stable in the future but are unstable until that time comes. [breaking-change]
2014-12-14Mostly rote conversion of `proc()` to `move||` (and occasionally `Thunk::new`)Niko Matsakis-1/+1
2014-11-18auto merge of #19031 : nodakai/rust/libcore-pow-and-sq, r=bjzbors-2/+2
[breaking-change] Deprecates `core::num::pow` in favor of `Int::pow`.
2014-11-18libcore: add num::Int::pow() and deprecate num::pow().NODA, Kai-2/+2
Signed-off-by: NODA, Kai <nodakai@gmail.com>
2014-11-17Switch to purely namespaced enumsSteven Fackler-6/+6
This breaks code that referred to variant names in the same namespace as their enum. Reexport the variants in the old location or alter code to refer to the new locations: ``` pub enum Foo { A, B } fn main() { let a = A; } ``` => ``` pub use self::Foo::{A, B}; pub enum Foo { A, B } fn main() { let a = A; } ``` or ``` pub enum Foo { A, B } fn main() { let a = Foo::A; } ``` [breaking-change]
2014-09-16Fallout from renamingAaron Turon-1/+1
2014-06-24librustc: Remove the fallback to `int` from typechecking.Niko Matsakis-1/+1
This breaks a fair amount of code. The typical patterns are: * `for _ in range(0, 10)`: change to `for _ in range(0u, 10)`; * `println!("{}", 3)`: change to `println!("{}", 3i)`; * `[1, 2, 3].len()`: change to `[1i, 2, 3].len()`. RFC #30. Closes #6023. [breaking-change]
2014-06-17auto merge of #14855 : TeXitoi/rust/relicense-shootout-binarytrees, r=brsonbors-8/+38
Everyone agreed. Related to #14248, close #14720 @brson OK?
2014-06-12Relicense shootout-binarytrees.rsGuillaume Pinot-8/+38
Everyone agreed. Related to #14248, close #14720
2014-06-11sync: Move underneath libstdAlex Crichton-2/+1
This commit is the final step in the libstd facade, #13851. The purpose of this commit is to move libsync underneath the standard library, behind the facade. This will allow core primitives like channels, queues, and atomics to all live in the same location. There were a few notable changes and a few breaking changes as part of this movement: * The `Vec` and `String` types are reexported at the top level of libcollections * The `unreachable!()` macro was copied to libcore * The `std::rt::thread` module was moved to librustrt, but it is still reexported at the same location. * The `std::comm` module was moved to libsync * The `sync::comm` module was moved under `sync::comm`, and renamed to `duplex`. It is now a private module with types/functions being reexported under `sync::comm`. This is a breaking change for any existing users of duplex streams. * All concurrent queues/deques were moved directly under libsync. They are also all marked with #![experimental] for now if they are public. * The `task_pool` and `future` modules no longer live in libsync, but rather live under `std::sync`. They will forever live at this location, but they may move to libsync if the `std::task` module moves as well. [breaking-change]
2014-05-28std: Remove format_strbuf!()Alex Crichton-2/+2
This was only ever a transitionary macro.
2014-05-24core: rename strbuf::StrBuf to string::StringRicho Healey-1/+1
[breaking-change]
2014-05-22libcore: Remove all uses of `~str` from `libcore`.Patrick Walton-1/+1
[breaking-change]
2014-05-14test: Remove all uses of `~str` from the test suite.Patrick Walton-3/+3
2014-05-08Handle fallout in bench testsKevin Ballard-0/+1
2014-04-10Remove some internal ~[] from several libraries.Huon Wilson-1/+1
Some straggling instances of `~[]` across a few different libs. Also, remove some public ones from workcache.
2014-03-23iter: remove `to_owned_vec`Daniel Micay-1/+1
This needs to be removed as part of removing `~[T]`. Partial type hints are now allowed, and will remove the need to add a version of this method for `Vec<T>`. For now, this involves a few workarounds for partial type hints not completely working.
2014-02-14extern mod => extern crateAlex Crichton-2/+2
This was previously implemented, and it just needed a snapshot to go through
2014-02-05move concurrent stuff from libextra to libsyncJeremyLetang-2/+2
2014-01-29auto merge of #11868 : bytbox/rust/remove-do, r=alexcrichtonbors-2/+2
Fixes #10815.
2014-01-29Remove do keyword from test/Scott Lawrence-2/+2
2014-01-29extra: move arena to libarenaDavid Manescu-1/+2
In line with the dissolution of libextra - #8784 - moves arena to its own library libarena. Changes based on PR #11787. Updates .gitignore to ignore doc/arena.
2014-01-17Add a generic power functionFlavio Percoco-1/+1
The patch adds a `pow` function for types implementing `One`, `Mul` and `Clone` trait. The patch also renames f32 and f64 pow into powf in order to still have a way to easily have float powers. It uses llvms intrinsics. The pow implementation for all num types uses the exponentiation by square. Fixes bug #11499
2014-01-11Remove re-exports of std::io::stdio::{print, println} in the prelude.Brendan Zabarauskas-1/+1
The `print!` and `println!` macros are now the preferred method of printing, and so there is no reason to export the `stdio` functions in the prelude. The functions have also been replaced by their macro counterparts in the tutorial and other documentation so that newcomers don't get confused about what they should be using.
2014-01-07libextra: Introduce typed arenas.Patrick Walton-11/+12
A typed arena is a type of arena that can only allocate objects of one type. It is 3x faster than the existing arena and 13x faster than malloc on Mac.
2013-12-11Make 'self lifetime illegal.Erik Price-2/+2
Also remove all instances of 'self within the codebase. This fixes #10889.
2013-11-26test: Remove all remaining non-procedure uses of `do`.Patrick Walton-2/+2
2013-10-29rewrite shootout-binarytrees.rs to match shootout directivesGuillaume Pinot-50/+46
The old version didn't follow shootout's directives: no memory were deallocated. At the same time, parallelisation of the computation. fix #2913
2013-09-26Update the compiler to not use printf/printflnAlex Crichton-3/+3
2013-09-15Remove {uint,int,u64,i64,...}::from_str,from_str_radixblake2-ppc-1/+1
Remove these in favor of the two traits themselves and the wrapper function std::from_str::from_str. Add the function std::num::from_str_radix in the corresponding role for the FromStrRadix trait.
2013-08-30Revert "src/test/bench: restructure"Corey Richardson-0/+89
This reverts commit 14cdc26e8a7794e437946f46df5769362b42acdf.
2013-08-28src/test/bench: restructureCorey Richardson-89/+0