From 5e85f2577baf050cb6b8f8b186b1be28d6ab385e Mon Sep 17 00:00:00 2001 From: Andrew Gallant Date: Thu, 21 Jun 2018 20:10:53 -0400 Subject: deps: update to regex 1.0.1 This causes SIMD to kick in automatically when compiling with stable Rust 1.27+. We also update the README to describe the current state of things. Thanks to @hartley for pointing this out: https://twitter.com/hartley/status/1009950392862453760 --- Cargo.lock | 12 ++++++------ README.md | 17 +++++++++-------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7ba6d178..df657d03 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -102,7 +102,7 @@ dependencies = [ "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -111,7 +111,7 @@ version = "0.1.8" dependencies = [ "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "regex-syntax 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -124,7 +124,7 @@ dependencies = [ "lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "same-file 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -200,7 +200,7 @@ dependencies = [ [[package]] name = "regex" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -243,7 +243,7 @@ dependencies = [ "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "same-file 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "termcolor 0.3.6", "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -396,7 +396,7 @@ dependencies = [ "checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5" "checksum redox_syscall 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "0d92eecebad22b767915e4d529f89f28ee96dbbf5a4810d2b844373f136417fd" "checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76" -"checksum regex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "75ecf88252dce580404a22444fc7d626c01815debba56a7f4f536772a5ff19d3" +"checksum regex 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "13c93d55961981ba9226a213b385216f83ab43bd6ac53ab16b2eeb47e337cf4e" "checksum regex-syntax 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8f1ac0f60d675cc6cf13a20ec076568254472551051ad5dd050364d70671bf6b" "checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5" "checksum same-file 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "cfb6eded0b06a0b512c8ddbcf04089138c9b4362c2f696f3c3d76039d68f3637" diff --git a/README.md b/README.md index efc41683..eff247a7 100644 --- a/README.md +++ b/README.md @@ -306,13 +306,8 @@ If you're a **Rust programmer**, ripgrep can be installed with `cargo`. $ cargo install ripgrep ``` -If you're using Rust nightly, then use - -``` -$ cargo install ripgrep --features unstable -``` - -to get SIMD optimizations. +When compiling with Rust 1.27 or newer, this will automatically enable SIMD +optimizations for search. ripgrep isn't currently in any other package repositories. [I'd like to change that](https://github.com/BurntSushi/ripgrep/issues/10). @@ -333,7 +328,7 @@ $ ./target/release/rg --version ``` If you have a Rust nightly compiler and a recent Intel CPU, then you can enable -optional SIMD acceleration like so: +additional optional SIMD acceleration like so: ``` RUSTFLAGS="-C target-cpu=native" cargo build --release --features 'simd-accel avx-accel' @@ -343,6 +338,12 @@ If your machine doesn't support AVX instructions, then simply remove `avx-accel` from the features list. Similarly for SIMD (which corresponds roughly to SSE instructions). +The `simd-accel` and `avx-accel` features enable SIMD support in certain +ripgrep dependencies (responsible for counting lines and transcoding). They +are not necessary to get SIMD optimizations for search; those are enabled +automatically. Hopefully, some day, the `simd-accel` and `avx-accel` features +will similarly become unnecessary. + ### Running tests -- cgit v1.2.3