Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documenting building with simd feature #882

Closed
andygrove opened this issue Aug 14, 2021 · 9 comments Β· Fixed by #976
Closed

Documenting building with simd feature #882

andygrove opened this issue Aug 14, 2021 · 9 comments Β· Fixed by #976
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers

Comments

@andygrove
Copy link
Member

Describe the bug

~/release/apache-arrow-datafusion-5.0.0 via πŸ¦€ v1.54.0 
✦ ❯ cargo build --release --features "simd"
   Compiling packed_simd_2 v0.3.5
error[E0554]: `#![feature]` may not be used on the stable release channel
   --> /home/andy/.cargo/registry/src/github.aaakk.us.kg-1ecc6299db9ec823/packed_simd_2-0.3.5/src/lib.rs:214:1
    |
214 | / #![feature(
215 | |     const_generics,
216 | |     repr_simd,
217 | |     rustc_attrs,
...   |
227 | |     llvm_asm
228 | | )]
    | |__^

To Reproduce
Run command above.

@andygrove andygrove added the bug Something isn't working label Aug 14, 2021
@andygrove andygrove changed the title Cannot bulid with simd feature Cannot build with simd feature Aug 14, 2021
@andygrove
Copy link
Member Author

I am probably doing something wrong and/or we need better docs around this

@jorgecarleitao
Copy link
Member

jorgecarleitao commented Aug 14, 2021 via email

@alamb
Copy link
Contributor

alamb commented Aug 15, 2021

cargo +nightly build --release --features "simd"

@Dandandan Dandandan changed the title Cannot build with simd feature Documenting building with simd feature Aug 15, 2021
@Dandandan Dandandan added documentation Improvements or additions to documentation good first issue Good for newcomers and removed bug Something isn't working labels Aug 15, 2021
@Dandandan
Copy link
Contributor

I changed the issue to add some docs around this.

Btw, @andygrove AFAIK the SIMD option doesn't help a lot with the TPC-H queries. Building with snmalloc or mimalloc and fat LTO (longer build time) does improve execution times.

@houqp
Copy link
Member

houqp commented Aug 15, 2021

It would be good if we can provide doc on how to produce the most optimized build: simd + snmalloc + LTO.

@alamb
Copy link
Contributor

alamb commented Aug 16, 2021

I also think we should suggest building with native and/or at least avx2 instructions (by default my rustc only used sse/sse2, presumably for compatibility)

@Dandandan
Copy link
Contributor

Here is an example of using all the options:

https://github.com/h2oai/db-benchmark/pull/182/files

@matthewmturner
Copy link
Contributor

Hello. I could try this. To confirm - is the idea to add docs just for SIMD? Or for the most optimized build?

@houqp
Copy link
Member

houqp commented Sep 7, 2021

I would love to have docs for the most optimized build, but we can start with SIMD if that's too much :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants