FFTW-WISDOM-TO-CONF(1)

✨ FFTW-WISDOM-TO-CONF(1) ✨

okay bestie, welcome to the fftw manual section, we're doing fftw-wisdom-to-conf today and it's actually so underrated πŸ’–


πŸŽ€ NAME πŸŽ€

fftw-wisdom-to-conf β€” generate FFTW wisdom (pre-planned transforms)


πŸ¦‹ SYNOPSIS πŸ¦‹

fftw-wisdom-to-conf [< INPUT] [> OUTPUT]

like. she reads from stdin and writes to stdout, that's the whole vibe πŸ’…


🌸 DESCRIPTION 🌸

so fftw-wisdom-to-conf is this little utility that generates C configuration routines from FFTW wisdom files. and what's a wisdom file? it's the saved info about how to optimally compute (Fourier) transforms of various sizes. iconic, right? ✨

and a configuration routine? it's a C subroutine that you link into your program β€” it replaces a routine of the same name in the FFTW library β€” and it determines which parts of FFTW are callable by your program. she's the bouncer at the club fr fr 🫢

so why would you even do this? here's the tea πŸ“: if you only need transforms of a limited set of sizes and types, and if you're statically linking your program, then using a configuration file generated from wisdom for those types can substantially reduce the size of your executable. (otherwise, because of FFTW's dynamic nature, all of FFTW's transform code must be linked into any program using FFTW. every last byte. no cap. πŸ’€)

FFTW is a free library to compute discrete Fourier transforms in one or more dimensions, for arbitrary sizes, and of both real and complex data, among other related operations. more info on FFTW lives at the FFTW home page: http://www.fftw.org 🌈

fftw-wisdom-to-conf reads wisdom from standard input and writes the configuration to standard output. and she plays SO nicely with the fftw-wisdom tool, like, look at this combo:

fftw-wisdom -n -o wisdom cof1024 cob1024
fftw-wisdom-to-conf < wisdom > conf.c

that will create a configuration conf.c containing only those parts of FFTW needed for the optimized complex forwards and backwards out-of-place transforms of size 1024 (also saving the wisdom itself in wisdom). she ate and left no crumbs πŸ‘‘

alternatively, you can run your actual program, export wisdom for all plans that were created (ideally in FFTW_PATIENT or FFTW_EXHAUSTIVE mode), use this as input for fftw-wisdom-to-conf, and then re-link your program with the resulting configuration routine. glow-up arc 🌟

⚠️ lowkey important: note that the configuration routine does not contain the wisdom, only the routines necessary to implement the wisdom, so your program should also import the wisdom in order to benefit from the pre-optimized plans. don't skip that step bestie, i'm begging πŸ™ˆ

πŸ’… OPTIONS πŸ’…

  • -h, --help β€” Display help on the command-line options and usage. (she's telling you how she works, we love a self-aware queen ✨)
  • -V, --version β€” Print the version number and copyright information. (the receipts, basically 🧾)

πŸ’€ BUGS πŸ’€

found a bug? Send bug reports to fftw@fftw.org. they wanna hear it, fr fr πŸ“¬


πŸ‘‘ AUTHORS πŸ‘‘

Written by Steven G. Johnson and Matteo Frigo. legends only 🫢

Copyright (c) 2003, 2007-14 Matteo Frigo
Copyright (c) 2003, 2007-14 Massachusetts Institute of Technology

πŸ”₯ SEE ALSO πŸ”₯


and that's the whole page bestie, you're officially certified in wisdom-to-conf πŸ’œ this was the fftw manual, February, 2003 edition β€” go forth and shrink your executables, mwah πŸŽ€πŸ’–βœ¨

πŸ“¦ where this page comes from