fft URL

from: http://www.fftw.org/

Introduction

FFTW is a Csubroutine library for computing the discrete Fourier transform (DFT)in one or more dimensions, of arbitrary input size, and of both realand complex data (as well as of even/odd data, i.e. the discretecosine/sine transforms or DCT/DST). We believe that FFTW,which is free software, should become the FFT library of choice for mostapplications.

The latest official release of FFTW is version 3.3.4,available from our download page. Version3.3 introduced support for the AVX x86 extensions, adistributed-memory implementation on top of MPI, and a Fortran 2003API. Version 3.3.1 introduced support for the ARM Neonextensions. See the release notes formore information.

The FFTW package was developed at MIT by Matteo Frigo and Steven G. Johnson.

Our benchmarks,performed on on a variety of platforms, show that FFTW's performanceis typically superior to that of other publicly available FFTsoftware, and is even competitive with vendor-tuned codes. Incontrast to vendor-tuned codes, however, FFTW's performance isportable: the same program will perform well on mostarchitectures without modification. Hence the name, "FFTW," whichstands for the somewhat whimsical title of "Fastest FourierTransform in the West."

Subscribe tothe fftw-announcemailing list to receive release announcements (or use the web feed RSS).

Features

FFTW 3.3.4 is the latest official version of FFTW (refer to the release notes to find out what is new). Here is a list of some of FFTW's more interesting features:
  • Speed. (Supports SSE/SSE2/Altivec, since version3.0. Version 3.3.1 supports AVX and ARM Neon.)
  • Both one-dimensional and multi-dimensional transforms.
  • Arbitrary-size transforms. (Sizes with small prime factors arebest, but FFTW uses O(N log N) algorithms even for prime sizes.)
  • Fast transforms of purely real input or output data.
  • Transforms of real even/odd data: the discrete cosine transform(DCT) and the discrete sine transform (DST), types I-IV. (Version 3.0 or later.)
  • Efficient handling of multiple, strided transforms. (This lets youdo things like transform multiple arrays at once, transform onedimension of a multi-dimensional array, or transform one field of amulti-component array.)
  • Parallel transforms: parallelizedcode for platforms with SMP machines with some flavorof threads(e.g. POSIX) or OpenMP. An MPI version for distributed-memory transforms isalso available in FFTW 3.3.
  • Portable to any platform with a C compiler.
  • Documentation in HTML and other formats.
  • Both C and Fortran interfaces.
  • Freesoftware, released under the GNU General Public License (GPL, see FFTW license).(Non-free licenses may also be purchased from MIT, for users who do not want their programs protected bythe GPL. Contact us for details.) (See also the FAQ.)

If you are still usingFFTW 2.x, please note that FFTW 2.x was last updated in 1999and it is obsolete. Please upgrade to FFTW 3.x. The API of FFTW 3.xis incompatible with that of FFTW 2.x, for reasons ofperformance and generality (seethe FAQorthe manual).

Documentation

First, read the FFTW Frequently Asked Questionsdocument.

Manual: HTML or PDF.

man pages:the fftw-wisdom and fftw-wisdom-to-conf utilities.

For general questions about Fourier transforms, see our links to FFT-related resources. People often askus how to compute a subset of the FFT outputs, so we have posted ashort discussion of pruned FFTs.

We benchmarked FFTW against many other FFT programs, in one tothree dimensions, on a variety of platforms. You can view the resultsfrom this benchmark, or download it to run on your own machine andcompiler, at the benchFFT webpage.

An audio interview of the FFTW authors is available from the RCE podcast program.

Downloading

Versions 3.3.4 and 2.1.5 of FFTW may be downloaded from this site. Feel free to postFFTW on your own site, but be sure to tell us so that we can link toyour page and notify you of updates to the software.

Literature.

Awards

FFTW receivedthe 1999J. H. Wilkinson Prize for Numerical Software, which is awardedevery four years to the software that "best addresses all phases ofthe preparation of high quality numerical software." Wilkinson was aseminal figure in modern numerical analysis as well as a key proponentof the notion of reusable, common libraries for scientific computing,and we are especially honored to receive this award in his memory.

Our paper "A Fast Fourier Transform Compiler" (in PLDI 1999) receivedthe Most Influential PLDI Paper award in 2009.

Acknowledgements

We are grateful for the support of many people and companies,including Sun, Intel, the GNU project, and the Linux community.Please see the acknowledgementssection of our manual for a more complete list of those who helpedus. We are especially thankful to all of our users for theircontinuing support, feedback, and interest in the development of FFTW.

Related Links

We have put together a list of links to otherinteresting sites with FFT-related code or information. This shouldbe helpful if you want to know more about Fourier transforms or if forsome reason FFTW doesn't satisfy your needs.

Feedback

If you have comments, questions, or suggestions regarding FFTW, don'thesitate to email us at fftw@fftw.org.We support encrypted/signed email. Use our public keys.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值