rust/src
bors bcd27eb7d5 Auto merge of #28891 - cristicbz:new-nbody, r=alexcrichton
This new version takes inspiration from the C implementation of the benchmark, but instead of explicitly using SIMD operations which can't be done on stable, it instead arranges everything the same way and leaves the actual vectorization up to LLVM.

In addition to the ~20% speed gains (see below), this PR also adds some general niceties which showcase the language a little bit: a `Vec3` type to cut down on `(x, y, z)` repetition,  using `while let` instead of `loop-if-break`, iterator adapters instead of for loops etc.

Here are the times in seconds of 10 runs each on my workstation:

```
before: 6.254, 6.260, 6.263, 6.264, 6.265, 6.267, 6.334, 6.341, 6.441, 6.509
before-min: 6.254
before-median: 6.266
before-max: 6.509

after: 4.823, 4.824, 4.826, 4.827, 4.837, 4.839, 4.881, 4.959, 4.990, 5.377
after-min: 4.823
after-median: 4.838
after-max: 5.377

gcc: 4.674, 4.676, 4.680, 4.682, 4.695, 4.696, 4.701, 4.708, 4.794, 5.297
gcc-min: 4.674
gcc-median: 4.696
gcc-max: 5.297
```

On my i7 laptop the speed up is less impressive, from ~5.4s to ~4.7s, but still significant. On my Vultr VPS the numbers look closer to the workstation results. Surprisingly my laptop beats both office workstation and VPS...
2015-10-08 10:04:12 +00:00
..
compiler-rt@58ab642c30
compiletest Allow multi-digit GDB minor version numbers 2015-09-24 13:04:22 -04:00
doc Auto merge of #28867 - panicbit:german-trpl, r=steveklabnik 2015-10-07 12:13:32 +00:00
driver
error-index-generator
etc Tweak Travis to use GCE 2015-09-29 16:56:35 -07:00
grammar Cleanup interfaces of Name, SyntaxContext and Ident 2015-09-24 23:05:02 +03:00
jemalloc@e24a1a025a
liballoc std: Add AsRef/AsMut impls to Box/Rc/Arc 2015-10-02 08:57:48 -07:00
liballoc_jemalloc rustc: Swap link order of native libs/rust deps 2015-09-30 20:17:54 -07:00
liballoc_system
libarena
libbacktrace Clean newlines 2015-10-06 11:14:11 -04:00
libcollections doc: Mention split_whitespace in split doc 2015-10-07 00:44:55 +06:00
libcollectionstest Minor code cleanup. 2015-09-28 19:21:18 -06:00
libcore core: Derive Default for Wrapping<T> 2015-10-07 21:31:36 +01:00
libcoretest Auto merge of #28539 - rkruppe:shuffle-num-internals, r=alexcrichton 2015-09-20 23:14:58 +00:00
libflate
libfmt_macros
libgetopts
libgraphviz
liblibc Add PATH_MAX to liblibc's Linux bindings. 2015-09-27 21:06:54 +05:30
liblog
librand
librbml improve the tyencode abbrev format 2015-10-01 22:10:09 +03:00
librustc Auto merge of #28865 - GuillaumeGomez:patch-1, r=Manishearth 2015-10-07 10:27:31 +00:00
librustc_back Fill in some missing parts in the default HIR visitor 2015-09-29 00:23:54 +03:00
librustc_bitflags
librustc_borrowck move direct accesses of node to go through as_local_node_id, unless 2015-10-01 10:37:19 -04:00
librustc_data_structures
librustc_driver rename dump to mir_map, which seems more suitable 2015-10-06 12:37:43 -04:00
librustc_front rustfmt librustc_front 2015-10-06 11:22:34 +13:00
librustc_lint Auto merge of #28779 - alexcrichton:ffi-isize-usize, r=nrc 2015-10-06 01:26:13 +00:00
librustc_llvm
librustc_mir Partially format librustc_mir with rustfmt. 2015-10-07 14:37:45 +02:00
librustc_platform_intrinsics
librustc_privacy Make calling def_id on a DefSelfTy an error; the previous defids that 2015-10-01 10:37:19 -04:00
librustc_resolve Rollup merge of #28554 - christopherdumas:E0422, r=arielb1 2015-10-02 13:07:22 +05:30
librustc_trans Auto merge of #28841 - jld:const-slice-ice, r=Aatch 2015-10-07 01:59:31 +00:00
librustc_typeck Fix reborrows of &mut pointers 2015-10-07 17:23:51 +02:00
librustc_unicode Write a bunch of docs for char 2015-10-06 17:58:51 -04:00
librustdoc Auto merge of #28573 - ruud-v-a:rustdoc-license, r=brson 2015-10-04 23:30:40 +00:00
libserialize Miscellaneous cleanup for old issues. 2015-09-20 11:37:08 +01:00
libstd Replace multiple trailing newlines with a single trailing newline 2015-10-06 13:06:39 -04:00
libsyntax Add comment for the use of Ident in hash map in mtwt 2015-10-06 01:47:35 +03:00
libterm
libtest
llvm@62ad301a24 Tweak Travis to use GCE 2015-09-29 16:56:35 -07:00
rt Upgrade hoedown to 3.0.5. 2015-09-21 21:07:45 +01:00
rust-installer@c37d3747da
rustbook fixes #17017 (update padding:11px line 142 of rustbook.css) 2015-09-28 12:11:18 -05:00
rustllvm Tweak Travis to use GCE 2015-09-29 16:56:35 -07:00
test Auto merge of #28891 - cristicbz:new-nbody, r=alexcrichton 2015-10-08 10:04:12 +00:00
snapshots.txt