# fftw-wisdom-to-conf(1) [centos man page]

FFTW-WISDOM-TO-CONF(1) fftw FFTW-WISDOM-TO-CONF(1)NAME

fftw-wisdom-to-conf - generate FFTW wisdom (pre-planned transforms)SYNOPSIS

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

fftw-wisdom-to-conf is a utility to generate C configuration routines from FFTW wisdom files, where the latter contain saved information about how to optimally compute (Fourier) transforms of various sizes. A configuration routine is a C subroutine that you link into your program, replacing a routine of the same name in the FFTW library, that determines which parts of FFTW are callable by your program. The reason to do this is that, if you only need transforms of a limited set of sizes and types, and if you are statically linking your pro- gram, then using a configuration file generated from wisdom for those types can substantially reduce the size of your executable. (Other- wise, because of FFTW's dynamic nature, all of FFTW's transform code must be linked into any program using FFTW.) 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 information on FFTW can be found 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. It can easily be combined with the fftw-wisdom tool, for example: fftw-wisdomcof1024 cob1024-nwisdom fftw-wisdom-to-conf < wisdom > conf.c 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"). 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. 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.-oOPTIONS

,-hDisplay help on the command-line options and usage.--help,-VPrint the version number and copyright information.--versionBUGS

Send bug reports to fftw@fftw.org.AUTHORS

Written by Steven G. Johnson and Matteo Frigo. Copyright (c) 2003, 2007-11 Matteo Frigo Copyright (c) 2003, 2007-11 Massachusetts Institute of TechnologySEE ALSO

fftw-wisdom(1)fftwFebruary, 2003 FFTW-WISDOM-TO-CONF(1)

## Check Out this Related Man Page

FFTW-WISDOM(1) fftw FFTW-WISDOM(1)NAME

fftw-wisdom - create wisdom (pre-optimized FFTs)SYNOPSIS

fftw-wisdom [OPTION]... [SIZE]...DESCRIPTION

fftw-wisdom is a utility to generate FFTW wisdom files, which contain saved information about how to optimally compute (Fourier) transforms of various sizes. 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 information on FFTW can be found at the FFTW home page: http://www.fftw.org Programs using FFTW can be written to load wisdom from an arbitrary file, string, or other source. Moreover, it is likely that many FFTW- using programs will load the system wisdom file, which is stored in /etc/fftw/wisdom by default. fftw-wisdom can be used to create or add to such wisdom files. In its most typical usage, the wisdom file can be created to pre-plan a canonical set of sizes (see below) via: fftw-wisdom-c-vwisdom (this will take many hours, which can be limited by the-ooption) and the output wisdom file can then be copied (as root) to /etc/fftw/ or whatever. The fftw-wisdom program normally writes the wisdom directly to standard output, but this can be changed via the-toption, as in the exam- ple above. If the system wisdom file /etc/fftw/wisdom already exists, then fftw-wisdom reads this existing wisdom (unless the-ooption is specified) and outputs both the old wisdom and any newly created wisdom. In this way, it can be used to add new transform sizes to the existing sys- tem wisdom (or other wisdom file, with the-noption).-wSPECIFYING SIZES

Although a canonical set of sizes to optimize is specified by theoption, the user can also specify zero or more non-canonical transform sizes and types to optimize, via the SIZE arguments following the option flags. Alternatively, the sizes to optimize can be read from standard input (whitespace-separated), if a SIZE argument of "-" is supplied. Sizes are specified by the syntax: <type><inplace><direction><geometry> <type> is either 'c' (complex), 'r' (real, r2c/c2r), or 'k' (r2r, per-dimension kinds, specified in the geometry, below). <inplace> is either 'i' (in place) or 'o' (out of place). <direction> is either 'f' (forward) or 'b' (backward). The <direction> should be omitted for 'k' transforms, where it is specified via the geometry instead. <geometry> is the size and dimensionality of the transform, where different dimensions are separated by 'x' (e.g. '16x32' for a two-dimen- sional 16 by 32 transform). In the case of 'k' transforms, the size of each dimension is followed by a "type" string, which can be one of f/b/h/e00/e01/e10/e11/o00/o01/o10/o11 for R2HC/HC2R/DHT/REDFT00/.../RODFT11, respectively, as defined in the FFTW manual. For example, 'cif12x13x14' is a three-dimensional 12 by 13 x 14 complex DFT operating in-place. 'rob65536' is a one-dimensional size-65536 out-of-place complex-to-real (backwards) transform operating on Hermitian-symmetry input. 'ki10hx20e01' is a two-dimensional 10 by 20 r2r transform where the first dimension is a DHT and the second dimension is an REDFT01 (DCT-III).-cOPTIONS

,-hDisplay help on the command-line options and usage.--help,-VPrint the version number and copyright information.--version,-vVerbose output. (You can specify this multiple times, or supply a numeric argument greater than 1, to increase the verbosity level.) Note that the verbose output will be mixed with the wisdom output (making it impossible to import), unless you write the wisdom to a file via the--verboseoption.-o,-cOptimize/pre-plan a canonical set of sizes: all powers of two and ten up to 2^20 (1048576), including both real and complex, forward and backwards, in-place and out-of-place transforms. Also includes two- and three-dimensional transforms of equal-size dimensions (e.g. 16x16x16).--canonicalhours,-tStop after a time of hours (hours) has elapsed, outputting accumulated wisdom. (The problems are planned in increasing order of size.) Defaults to 0, indicating no time limit.--time-limit=hoursfile,-oSend wisdom output to file rather than to standard output (the default).--output-file=file, --measure;-m, --estimate;-e,-xNormally, fftw-wisdom creates plans in FFTW_PATIENT mode, but with these options you can instead use FFTW_MEASURE, FFTW_ESTIMATE, or FFTW_EXHAUSTIVE modes, respectively, as described in more detail by the FFTW manual. Note that wisdom is tagged with the planning patience level, and a single file can mix different levels of wisdom (e.g. you can mostly use the patient default, but plan a few sizes that you especially care about in--exhaustivemode).--exhaustive,-nDo not import the system wisdom from /etc/fftw/wisdom (which is normally read by default).--no-system-wisdomfile,-wImport wisdom from file (in addition to the system wisdom, unless--wisdom-file=fileis specified). Multiple wisdom files can be read via multiple-noptions. If file is "-", then read wisdom from standard input.-wBUGS

Send bug reports to fftw@fftw.org.AUTHORS

Written by Steven G. Johnson and Matteo Frigo. Copyright (c) 2003, 2007-11 Matteo Frigo Copyright (c) 2003, 2007-11 Massachusetts Institute of TechnologySEE ALSO

fftw-wisdom-to-conf(1)fftwFebruary, 2003 FFTW-WISDOM(1)