MCPcopy Create free account

hub / github.com/cool-japan/oxifft / functions

Functions4,171 in github.com/cool-japan/oxifft

↓ 1 callersMethodexecute_inplace
Execute the distributed FFT in-place. Input layout: `data[row * n1 + col]` where `row` is local (0..local_n0). Output layout depends on `transposed_o
oxifft/src/mpi/plans/plan_2d.rs:141
↓ 1 callersMethodexecute_inplace
Execute the distributed 3D FFT in-place. Input/output layout: `data[i0 * local_n1 * n2 + i1 * n2 + i2]` where `i0 in [0, local_n0)`, `i1 in [0, local
oxifft/src/mpi/plans/plan_3d_pencil.rs:316
↓ 1 callersMethodexecute_input_pruned
Execute input-pruned FFT.
oxifft/src/pruned/plan.rs:254
↓ 1 callersMethodexecute_integer_order
Execute for integer order (0, 1, 2, 3).
oxifft/src/frft/mod.rs:243
↓ 1 callersMethodexecute_multirank
Execute the multi-rank 3D pencil FFT (called when `row_pool.is_some()`). Algorithm (Z→Y→X): 1. Z-FFT: local, on the `[local_n0, local_n1, n2]` slab.
oxifft/src/mpi/plans/plan_3d_pencil.rs:351
↓ 1 callersMethodexecute_nd
Execute an N-dimensional transform using row-column decomposition.
oxifft/src/api/plan/types_guru.rs:261
↓ 1 callersFunctionexecute_output_pruned
Output-pruned: Goertzel on bins 0..m.
oxifft/src/pruned/partial.rs:244
↓ 1 callersMethodexecute_output_pruned
Execute output-pruned FFT.
oxifft/src/pruned/plan.rs:204
↓ 1 callersMethodexecute_row_ffts
Execute row FFTs on an N1×N2 matrix stored in row-major order. For each row i (0..N1), the elements are contiguous: matrix[i*N2 .. (i+1)*N2].
oxifft/src/dft/solvers/cache_oblivious.rs:167
↓ 1 callersMethodexecute_simple
Simplified execute for cases where input_base and output_base are 0.
oxifft/src/dft/solvers/indirect.rs:180
↓ 1 callersMethodexecute_split_radix
Split-radix FFT out-of-place. Implements the split-radix FFT algorithm which combines radix-2 and radix-4 decompositions to achieve near-optimal oper
oxifft/src/dft/solvers/ct.rs:784
↓ 1 callersMethodexecute_split_radix_inplace
Split-radix FFT in-place.
oxifft/src/dft/solvers/ct.rs:797
↓ 1 callersMethodexecute_type3
Execute Type 3 NUFFT: non-uniform → non-uniform. # Arguments `values` - Values at source points (set during plan creation) `target_points` - Target
oxifft/src/nufft/mod.rs:446
↓ 1 callersFunctionextended_gcd
reason: helper for mod_inv; not called when modular inverse path is inactive
oxifft/src/kernel/primes.rs:146
↓ 1 callersFunctionfactorize
Return the distinct prime factors of `n`.
oxifft/src/ntt/arith.rs:146
↓ 1 callersFunctionfft2_inplace
(data: &mut [Complex<f64>; N])
oxifft/src/const_fft/radix2.rs:96
↓ 1 callersFunctionfft3d_inplace
Execute a 3D FFT on a flat C-contiguous array of shape `[n0][n1][n2]`. Uses three passes of 1-D FFTs: first along dimension 2 (innermost), then dimen
oxifft/src/nufft/nufft3d.rs:87
↓ 1 callersFunctionfft4_inplace
(data: &mut [Complex<f64>; N])
oxifft/src/const_fft/radix2.rs:120
↓ 1 callersMethodfft_along_dimension
reason: &mut self needed for future multi-rank transpose plans; API consistency
oxifft/src/mpi/plans/plan_nd.rs:187
↓ 1 callersFunctionfft_bluestein_inplace
Convenience function for in-place forward FFT using Bluestein.
oxifft/src/dft/solvers/bluestein.rs:361
↓ 1 callersFunctionfft_dual
Compute FFT with forward-mode automatic differentiation. Returns (output, output_tangent) where output_tangent is the directional derivative of FFT i
oxifft/src/autodiff/mod.rs:323
↓ 1 callersFunctionfft_f32
(real: &[f32], imag: &[f32])
oxifft/src/wasm/bindings.rs:307
↓ 1 callersFunctionfft_f64
(real: &[f64], imag: &[f64])
oxifft/src/wasm/bindings.rs:228
↓ 1 callersFunctionfft_pruned_input_butterfly
reason: public API for input-pruned FFT; not all call sites are compiled in every feature configuration
oxifft/src/pruned/input_pruned.rs:131
↓ 1 callersFunctionfft_pruned_output_butterfly
reason: public API for output-pruned FFT; not all call sites are compiled in every feature configuration
oxifft/src/pruned/output_pruned.rs:95
↓ 1 callersFunctionfft_radix2_inplace
Convenience function for in-place forward FFT.
oxifft/src/dft/solvers/ct.rs:1056
↓ 1 callersFunctionfft_radix4_inplace
Convenience function for in-place forward FFT using radix-4.
oxifft/src/dft/solvers/ct.rs:1066
↓ 1 callersFunctionfft_radix8_inplace
Convenience function for in-place forward FFT using radix-8.
oxifft/src/dft/solvers/ct.rs:1081
↓ 1 callersMethodfft_real
(&self)
oxifft/src/integrations/ndarray_ext.rs:315
↓ 1 callersFunctionfft_split_radix_inplace
Convenience function for in-place forward FFT using split-radix.
oxifft/src/dft/solvers/ct.rs:1091
↓ 1 callersFunctionfftw_destroy_plan
Destroy (free) a 1-D DFT plan. Corresponds to FFTW's `fftw_destroy_plan`. In OxiFFT this is a no-op: Rust's ownership system automatically frees the
oxifft/src/compat/mod.rs:403
↓ 1 callersFunctionfftw_export_wisdom_to_string
()
oxifft/src/compat/mod.rs:433
↓ 1 callersFunctionfftwf_plan_dft_1d
(n: usize, direction: Direction, flags: Flags)
oxifft/src/compat/mod.rs:122
↓ 1 callersMethodfiber_below_count
Count how many fiber coordinates are "below" dimension d (excluding dim_idx).
oxifft/src/api/parallel.rs:476
↓ 1 callersMethodfiber_below_count
Count how many fiber coordinates are "below" dimension d (excluding dim_idx).
oxifft/src/api/plan/types_nd.rs:193
↓ 1 callersMethodfiber_start_index
Compute the starting index for a fiber along dimension `dim_idx`. Given a linear fiber index, compute the base index in the flat array.
oxifft/src/api/parallel.rs:449
↓ 1 callersMethodfiber_start_index
Compute the starting index for a fiber along dimension `dim_idx`. Given a linear fiber index, compute the base index in the flat array.
oxifft/src/api/plan/types_nd.rs:178
↓ 1 callersMethodfill_from_fft
Fill buckets from subsampled FFT result. # Arguments `subsampled_fft` - FFT of subsampled signal (length = num_buckets)
oxifft/src/sparse/bucket.rs:111
↓ 1 callersMethodfilter_by_magnitude
Filter frequencies by minimum magnitude threshold.
oxifft/src/sparse/result.rs:97
↓ 1 callersMethodfind_singletons
Find singleton buckets across all stages.
oxifft/src/sparse/decoder.rs:130
↓ 1 callersMethodfirst
(&self)
oxifft/src/kernel/tensor.rs:167
↓ 1 callersFunctionfixed_inputs_size4
()
oxifft/src/dft/codelets/simd_codelet_tests.rs:507
↓ 1 callersFunctionfixed_inputs_size8
()
oxifft/src/dft/codelets/simd_codelet_tests.rs:516
↓ 1 callersMethodfmadd
(self, a: Self, b: Self)
oxifft/src/wasm/simd.rs:150
↓ 1 callersMethodfmadd
(self, a: Self, b: Self)
oxifft/src/simd/sve.rs:222
↓ 1 callersMethodfmsub
(self, a: Self, b: Self)
oxifft/src/simd/avx2.rs:125
↓ 1 callersMethodforward_interleaved
Execute forward FFT with interleaved input. # Arguments `interleaved` - Interleaved complex input [re0, im0, re1, im1, ...] # Returns Interleaved
oxifft/src/wasm/bindings.rs:152
↓ 1 callersMethodforward_into
Forward NTT, out-of-place. Copies `input` into `output`, then performs the forward transform on `output`. # Panics Panics if `input.len() != self.n
oxifft/src/ntt/plan.rs:200
↓ 1 callersMethodforward_r2c
Execute a real-to-complex forward FFT on the Metal GPU. # Strategy Real input is zero-extended to complex (imaginary parts = 0), then a full C2C for
oxifft/src/gpu/metal.rs:203
↓ 1 callersMethodforward_r2c
Execute a real-to-complex forward FFT. // KNOWN LIMITATION: CUDA R2C/C2R runs on CPU until oxicuda-launch kernel dispatch is integrated Wraps the ex
oxifft/src/gpu/cuda.rs:235
↓ 1 callersMethodgather_nd
Gather N-dimensional data into contiguous buffer.
oxifft/src/api/plan/types_guru.rs:277
↓ 1 callersFunctiongcd
Calculate GCD using Euclidean algorithm.
oxifft/src/sparse/hash.rs:221
↓ 1 callersFunctiongcd_usize
Greatest common divisor.
oxifft/src/sparse/bucket.rs:255
↓ 1 callersFunctiongen_avx2_f32_v8_size2_soa
Emit the AVX2 f32, V=8, size-2 `SoA` multi-transform SIMD function. Processes 8 transforms of size 2 simultaneously using AVX2 `__m256` vectors. Each
oxifft-codegen-impl/src/gen_simd/multi_transform/simd_avx2_f32.rs:40
↓ 1 callersFunctiongen_avx2_f32_v8_size4_soa
Emit the AVX2 f32, V=8, size-4 `SoA` multi-transform SIMD function. Processes 8 transforms of size 4 simultaneously using AVX2 `__m256` vectors. # `
oxifft-codegen-impl/src/gen_simd/multi_transform/simd_avx2_f32.rs:105
↓ 1 callersFunctiongen_avx2_f32_v8_size8_soa
()
oxifft-codegen-impl/src/gen_simd/multi_transform/simd_avx2_f32.rs:186
↓ 1 callersFunctiongen_avx2_size_2
AVX2+FMA size-2 butterfly on f64 data. Loads both complexes as a single 256-bit vector, splits into 128-bit halves, butterflies, and stores as a sing
oxifft-codegen-impl/src/gen_simd/avx2.rs:13
↓ 1 callersFunctiongen_avx2_size_2_f32
AVX2+FMA size-2 butterfly on f32 data. Size-2 f32 data is only 4×f32 = 128 bits — cannot fill a 256-bit YMM. We use 128-bit SSE `_ps` intrinsics unde
oxifft-codegen-impl/src/gen_simd/avx2.rs:273
↓ 1 callersFunctiongen_avx2_size_4
AVX2+FMA size-4 radix-4 butterfly on f64 data. Uses 256-bit operations for the pair-wise stages: - `v_01` = [x0, x1], `v_23` = [x2, x3] (each 256 bit
oxifft-codegen-impl/src/gen_simd/avx2.rs:57
↓ 1 callersFunctiongen_avx2_size_4_f32
AVX2+FMA size-4 radix-4 butterfly on f32 data. A single `__m256` holds 4 complexes as 8 f32 lanes: [re0,im0,re1,im1,re2,im2,re3,im3].
oxifft-codegen-impl/src/gen_simd/avx2.rs:303
↓ 1 callersFunctiongen_avx2_size_8
AVX2+FMA size-8 radix-2 DIT butterfly on f64 data. Uses 256-bit loads/stores and FMA for twiddle application.
oxifft-codegen-impl/src/gen_simd/avx2.rs:130
↓ 1 callersFunctiongen_avx2_size_8_f32
()
oxifft-codegen-impl/src/gen_simd/avx2.rs:370
↓ 1 callersFunctiongen_avx512_size_16_f32
()
oxifft-codegen-impl/src/gen_simd/avx512.rs:573
↓ 1 callersFunctiongen_avx512_size_2_f32
AVX-512F size-2 butterfly on f32 data. Size-2 f32 data is only 4 f32 = 128 bits. Uses XMM operations under the `avx512f` feature umbrella (same as AV
oxifft-codegen-impl/src/gen_simd/avx512.rs:303
↓ 1 callersFunctiongen_avx512_size_2_f64
AVX-512F size-2 butterfly on f64 data (radix-2 DIT). Holds 4 complex f64 pairs in one ZMM: [re0,im0,re1,im1,re2,im2,re3,im3]. Processes 4 simultaneou
oxifft-codegen-impl/src/gen_simd/avx512.rs:25
↓ 1 callersFunctiongen_avx512_size_4_f32
AVX-512F size-4 radix-4 DIT butterfly on f32 data. One ZMM holds 8 complex f32 = 16 f32 lanes: [re0,im0,...,re7,im7]. We process 8 simultaneous size-
oxifft-codegen-impl/src/gen_simd/avx512.rs:340
↓ 1 callersFunctiongen_avx512_size_4_f64
AVX-512F size-4 radix-4 DIT butterfly on f64 data. One ZMM holds 4 complex f64: [re0,im0,re1,im1,re2,im2,re3,im3]. We load both halves (x0..x1 and x2
oxifft-codegen-impl/src/gen_simd/avx512.rs:71
↓ 1 callersFunctiongen_avx512_size_8_f32
()
oxifft-codegen-impl/src/gen_simd/avx512.rs:411
↓ 1 callersFunctiongen_avx512_size_8_f64
()
oxifft-codegen-impl/src/gen_simd/avx512.rs:142
↓ 1 callersFunctiongen_avx_size_2_f64
Pure-AVX size-2 butterfly on f64 data. Loads both complexes as a single 256-bit vector, splits into 128-bit halves, butterflies, and repacks via `_mm
oxifft-codegen-impl/src/gen_simd/avx.rs:28
↓ 1 callersFunctiongen_avx_size_4_f64
Pure-AVX size-4 radix-4 butterfly on f64 data. Uses 256-bit loads and pure-AVX permutation to perform the two butterfly stages. The ±i rotation on t3
oxifft-codegen-impl/src/gen_simd/avx.rs:74
↓ 1 callersFunctiongen_avx_size_8_f64
()
oxifft-codegen-impl/src/gen_simd/avx.rs:154
↓ 1 callersFunctiongen_dispatcher_16
Generate the dispatcher for size-16 (f32 only via AVX-512F; scalar fallback). Size-16 is only available as f32 via AVX-512F. All other paths fall thr
oxifft-codegen-impl/src/gen_simd/mod.rs:337
↓ 1 callersFunctiongen_hc2r
(n: usize)
oxifft-codegen-impl/src/gen_rdft.rs:214
↓ 1 callersFunctiongen_neon_size_2
NEON size-2 butterfly on f64 data.
oxifft-codegen-impl/src/gen_simd/neon.rs:11
↓ 1 callersFunctiongen_neon_size_2_f32
NEON size-2 butterfly on f32 data. Uses `float32x2_t` (2 lanes = 1 complex) for clean structural match with the f64 path.
oxifft-codegen-impl/src/gen_simd/neon.rs:222
↓ 1 callersFunctiongen_neon_size_4
NEON size-4 radix-4 butterfly on f64 data.
oxifft-codegen-impl/src/gen_simd/neon.rs:35
↓ 1 callersFunctiongen_neon_size_4_f32
NEON size-4 radix-4 butterfly on f32 data. Uses `float32x2_t` — 1 complex per register, mirrors f64 structural layout.
oxifft-codegen-impl/src/gen_simd/neon.rs:249
↓ 1 callersFunctiongen_neon_size_8
NEON size-8 radix-2 DIT butterfly on f64 data.
oxifft-codegen-impl/src/gen_simd/neon.rs:87
↓ 1 callersFunctiongen_neon_size_8_f32
NEON size-8 radix-2 DIT butterfly on f32 data. Uses `float32x2_t` — 1 complex per register, mirrors the f64 path exactly.
oxifft-codegen-impl/src/gen_simd/neon.rs:305
↓ 1 callersFunctiongen_outer_body
Build the outer `AoS` function body for any config (scalar loop over all transforms). The outer function always processes transforms sequentially (sc
oxifft-codegen-impl/src/gen_simd/multi_transform/mod.rs:193
↓ 1 callersFunctiongen_r2hc
(n: usize)
oxifft-codegen-impl/src/gen_rdft.rs:103
↓ 1 callersFunctiongen_scalar_butterfly
Emit the scalar butterfly body for a single transform of `size`. The body references `input`, `output`, `istride`, `ostride`, `base_in`, `base_out` f
oxifft-codegen-impl/src/gen_simd/multi_transform/scalar.rs:15
↓ 1 callersFunctiongen_scalar_butterfly_size2
Emit a size-2 radix-2 butterfly body. `out[0] = x[0] + x[1]`, `out[1] = x[0] - x[1]`.
oxifft-codegen-impl/src/gen_simd/multi_transform/scalar.rs:27
↓ 1 callersFunctiongen_scalar_butterfly_size4
Emit a size-4 radix-4 DIF butterfly body (forward sign). Stages: t0=x0+x2, t1=x0-x2, t2=x1+x3, t3=x1-x3. Forward rotation: `t3 *= -i` → `(im, -re)`.
oxifft-codegen-impl/src/gen_simd/multi_transform/scalar.rs:51
↓ 1 callersFunctiongen_scalar_butterfly_size8
(precision: Precision)
oxifft-codegen-impl/src/gen_simd/multi_transform/scalar.rs:98
↓ 1 callersFunctiongen_scalar_size_16
()
oxifft-codegen-impl/src/gen_simd/scalar.rs:149
↓ 1 callersFunctiongen_scalar_size_2
Scalar size-2 butterfly (generic over any Float type).
oxifft-codegen-impl/src/gen_simd/scalar.rs:7
↓ 1 callersFunctiongen_scalar_size_4
Scalar size-4 radix-4 butterfly (generic).
oxifft-codegen-impl/src/gen_simd/scalar.rs:24
↓ 1 callersFunctiongen_scalar_size_8
Scalar size-8 radix-2 DIT butterfly (generic).
oxifft-codegen-impl/src/gen_simd/scalar.rs:62
↓ 1 callersFunctiongen_simd_inner
Emit the inner `SoA` SIMD function `TokenStream` for the given config. Returns `None` if the config has no SIMD implementation.
oxifft-codegen-impl/src/gen_simd/multi_transform/mod.rs:168
↓ 1 callersFunctiongen_simd_size_16
Generate size-16 SIMD radix-2 DIT codelet (f32 only via AVX-512F). Size-16 FFT: radix-2 DIT with 4 butterfly stages. SIMD strategy: - AVX-512F (`x86
oxifft-codegen-impl/src/gen_simd/mod.rs:182
↓ 1 callersFunctiongen_simd_size_2
Generate size-2 SIMD butterfly codelet. Size-2 butterfly: out[0] = a + b, out[1] = a - b SIMD strategy: - AVX-512F (`x86_64`): 256-bit YMM under avx
oxifft-codegen-impl/src/gen_simd/mod.rs:75
↓ 1 callersFunctiongen_simd_size_4
Generate size-4 SIMD radix-4 codelet. Size-4 FFT: radix-4 butterfly with sign-dependent ±i rotation. SIMD strategy: - AVX-512F (`x86_64`): 256-bit f
oxifft-codegen-impl/src/gen_simd/mod.rs:111
↓ 1 callersFunctiongen_simd_size_8
Generate size-8 SIMD radix-8 codelet. Size-8 FFT: radix-2 DIT with 3 butterfly stages. SIMD strategy: - AVX-512F (`x86_64`): 256-bit + FMA via ZMM p
oxifft-codegen-impl/src/gen_simd/mod.rs:147
↓ 1 callersFunctiongen_size_16
()
oxifft-codegen-impl/src/gen_notw.rs:190
↓ 1 callersFunctiongen_size_2
()
oxifft-codegen-impl/src/gen_notw.rs:39
↓ 1 callersFunctiongen_size_3
()
oxifft-codegen-impl/src/gen_odd.rs:80
↓ 1 callersFunctiongen_size_32
()
oxifft-codegen-impl/src/gen_notw.rs:216
↓ 1 callersFunctiongen_size_4
()
oxifft-codegen-impl/src/gen_notw.rs:56
← previousnext →1,001–1,100 of 4,171, ranked by callers