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

Use SIMD #40

Closed
jimrybarski opened this issue Dec 12, 2018 · 6 comments
Closed

Use SIMD #40

jimrybarski opened this issue Dec 12, 2018 · 6 comments

Comments

@jimrybarski
Copy link

Would it be feasible and beneficial to add SIMD instructions?

@ejmahler
Copy link
Collaborator

ejmahler commented Dec 12, 2018 via email

@ejmahler
Copy link
Collaborator

ejmahler commented Dec 12, 2018 via email

@superblaubeere27
Copy link

I looked into the assembly of DFT and there is definitely no auto-vectorization going on. I will try to fix it and create a PR afterward

@ejmahler
Copy link
Collaborator

Hi @superblaubeere27 and @jimrybarski you might be interested to know that in the "simd" branch, I currently have an AVX implementation that outperforms FFTW.

It's not ready for release yet (Requires nightly, will fail to compile if you're not targeting x86_64, no way to opt-out of all the AVX code, way too much unsafe) but if you want some faster FFTs, I would love to have someone test it out!

@ejmahler
Copy link
Collaborator

The simd branch in my own fork https://github.com/ejmahler/RustFFT/tree/simd

@ejmahler
Copy link
Collaborator

ejmahler commented Jan 5, 2021

RustFFT 5.0 has an implementation of AVX. I will implement SSE Some Time Soon, and neon/avx512 when i can get a machine to test them on + rust stabilizes them.

FYI, all rust developemt will be happening in https://github.com/ejmahler/RustFFT from now on.

@ejmahler ejmahler closed this as completed Jan 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants