Cargo Features

[dependencies]
rustfft = { version = "6.2.0", default-features = false, features = ["avx", "neon", "wasm_simd"] }
default = avx, neon, sse

These default features are set whenever rustfft is added without default-features = false somewhere in the dependency tree.

avx default

On x86_64, the "avx" feature enables compilation of AVX-acclerated code.
Similarly, the "sse" feature enables compilation of SSE-accelerated code.
Enabling these improves performance if the client CPU supports AVX or SSE, while disabling them reduces compile time and binary size.
If both are enabled, RustFFT will use AVX if the CPU supports it. If not, it will check for SSE4.1.
If neither instruction set is available, it will fall back to the scalar code.

On AArch64, the "neon" feature enables compilation of Neon-accelerated code.

On wasm32, the "wasm_simd" feature enables compilation of Wasm SIMD accelerated code.

For all of the above features, on every platform other than the intended platform for the feature, these features do nothing, and RustFFT will behave like they are not set.

sse neon default
wasm_simd