Code Monkey home page Code Monkey logo

ffte's Introduction

FFTE: A Fast Fourier Transform Package

Description:
    A package to compute Discrete Fourier Transforms of
    1-, 2- and 3- dimensional sequences of length (2^p)*(3^q)*(5^r).

Files:
    cuzfft1d.f : 1-D complex FFT routine (for NVIDIA GPUs)
    cuzfft2d.f : 2-D complex FFT routine (for NVIDIA GPUs)
    cuzfft3d.f : 3-D complex FFT routine (for NVIDIA GPUs)
    cuztrans.f : Transposition routine (for NVIDIA GPUs)
    dzfft2d.f  : 2-D real-to-complex FFT routine
    dzfft3d.f  : 3-D real-to-complex FFT routine
    factor.f   : Factorization routine
    fft235.f   : Radix-2,3,4,5 and 8 FFT routine
    kernel.f   : Radix-2,3,4,5 and 8 FFT kernel routine
    mfft235.f  : Radix-2,3,4,5 and 8 multiple FFT routine
    param.h    : Header file for parameters
    readme.txt : Readme file
    vzfft1d.f  : 1-D complex FFT routine (for vector machines)
    vzfft2d.f  : 2-D complex FFT routine (for vector machines)
    vzfft3d.f  : 3-D complex FFT routine (for vector machines)
    zdfft2d.f  : 2-D complex-to-real FFT routine
    zdfft3d.f  : 3-D complex-to-real FFT routine
    zfft1d.f   : 1-D complex FFT routine
    zfft2d.f   : 2-D complex FFT routine
    zfft3d.f   : 3-D complex FFT routine
    tests/     : Test Directory
        Makefile      : Makefile for test programs
        Makefile.cuda : Makefile for test programs (for NVIDIA GPUs)
        Makefile.vec  : Makefile for test programs (for vector machines)
        cuspeed1d.f   : Speed test program for zfft1d (for NVIDIA GPUs)
        cuspeed2d.f   : Speed test program for zfft2d (for NVIDIA GPUs)
        cuspeed3d.f   : Speed test program for zfft3d (for NVIDIA GPUs)
        cutest1d.f    : Test program for zfft1d (for NVIDIA GPUs)
        cutest2d.f    : Test program for zfft2d (for NVIDIA GPUs)
        cutest3d.f    : Test program for zfft3d (for NVIDIA GPUs)
        rspeed2d.f    : Speed test program for dzfft2d
        rspeed3d.f    : Speed test program for dzfft3d
        rtest2d.f     : Test program for dzfft2d and zdfft2d
        rtest3d.f     : Test program for dzfft3d and zdfft3d
        speed1d.f     : Speed test program for zfft1d
        speed2d.f     : Speed test program for zfft2d
        speed3d.f     : Speed test program for zfft3d
        test1d.f      : Test program for zfft1d
        test2d.f      : Test program for zfft2d
        test3d.f      : Test program for zfft3d
    mpi/        : MPI version Directory
        pcuzfft1d.f  : Parallel 1-D complex FFT routine (for NVIDIA GPUs)
        pcuzfft2d.f  : Parallel 2-D complex FFT routine (for NVIDIA GPUs)
        pcuzfft3d.f  : Parallel 3-D complex FFT routine (for NVIDIA GPUs)
        pcuzfft3dv.f : Parallel 3-D complex FFT routine (with 2-D decomposition, for NVIDIA GPUs)
        pdzfft2d.f   : Parallel 2-D real-to-complex FFT routine
        pdzfft3d.f   : Parallel 3-D real-to-complex FFT routine
        pdzfft3dv.f  : Parallel 3-D real-to-complex FFT routine (with 2-D decomposition)
        pfactor.f    : Parallel factorization routine
        pvzfft1d.f   : Parallel 1-D complex FFT routine (for vector machines)
        pvzfft2d.f   : Parallel 2-D complex FFT routine (for vector machines)
        pvzfft3d.f   : Parallel 3-D complex FFT routine (for vector machines)
        pzdfft2d.f   : Parallel 2-D complex-to-real FFT routine
        pzdfft3d.f   : Parallel 3-D complex-to-real FFT routine
        pzdfft3dv.f  : Parallel 3-D complex-to-real FFT routine (with 2-D decomposition)
        pzfft1d.f    : Parallel 1-D complex FFT routine
        pzfft2d.f    : Parallel 2-D complex FFT routine
        pzfft3d.f    : Parallel 3-D complex FFT routine
        pzfft3dv.f   : Parallel 3-D complex FFT routine (with 2-D decomposition)
        tests/       : Test Directory
            Makefile      : Makefile for test programs
            Makefile.cuda : Makefile for test programs (for NVIDIA GPUs)
            Makefile.vec  : Makefile for test programs (for vector machines)
            pcuspeed1d.f  : Speed test program for pzfft1d (for NVIDIA GPUs)
            pcuspeed2d.f  : Speed test program for pzfft2d (for NVIDIA GPUs)
            pcuspeed3d.f  : Speed test program for pzfft3d (for NVIDIA GPUs)
            pcuspeed3dv.f : Speed test program for pzfft3dv (for NVIDIA GPUs)
            pcutest1d.f   : Test program for pzfft1d (for NVIDIA GPUs)
            pcutest2d.f   : Test program for pzfft2d (for NVIDIA GPUs)
            pcutest3d.f   : Test program for pzfft3d (for NVIDIA GPUs)
            pcutest3dv.f  : Test program for pzfft3dv (for NVIDIA GPUs)
            prspeed2d.f   : Speed test program for pdzfft2d
            prspeed3d.f   : Speed test program for pdzfft3d
            prspeed3dv.f  : Speed test program for pdzfft3dv
            prtest2d.f    : Test program for pdzfft2d and pzdfft2d
            prtest3d.f    : Test program for pdzfft3d and pzdfft3d
            prtest3dv.f   : Test program for pdzfft3dv and pzdfft3dv
            pspeed1d.f    : Speed test program for pzfft1d
            pspeed2d.f    : Speed test program for pzfft2d
            pspeed3d.f    : Speed test program for pzfft3d
            pspeed3dv.f   : Speed test program for pzfft3dv
            ptest1d.f     : Test program for pzfft1d
            ptest2d.f     : Test program for pzfft2d
            ptest3d.f     : Test program for pzfft3d
            ptest3dv.f    : Test program for pzfft3dv

References:
    1. Daisuke Takahashi: A Blocking Algorithm for FFT on Cache-Based
       Processors, Proc. 9th International Conference on High
       Performance Computing and Networking Europe (HPCN Europe 2001),
       Lecture Notes in Computer Science, Vol. 2110, pp. 551-554,
       Springer (2001).

    2. Daisuke Takahashi: A Blocking Algorithm for Parallel 1-D FFT on
       Shared-Memory Parallel Computers, Proc. 6th International
       Conference on Applied Parallel Computing (PARA 2002),
       Lecture Notes in Computer Science, Vol. 2367, pp. 380-389,
       Springer (2002).

    3. Daisuke Takahashi: Efficient implementation of parallel
       three-dimensional FFT on clusters of PCs, Computer Physics
       Communications, Vol. 152, pp. 144-150, (2003).

    4. Daisuke Takahashi: A parallel 1-D FFT algorithm for the Hitachi
       SR8000, Parallel Computing, Vol. 29, pp. 679-690 (2003).

    5. Daisuke Takahashi: A Hybrid MPI/OpenMP Implementation of a
       Parallel 3-D FFT on SMP Clusters, Proc. 6th International
       Conference on Parallel Processing and Applied Mathematics
       (PPAM 2005), Lecture Notes in Computer Science, Vol. 3911,
       pp. 970-977, Springer (2006).

    6. Daisuke Takahashi: An Implementation of Parallel 3-D FFT with
       2-D Decomposition on a Massively Parallel Cluster of Multi-core
       Processors, Proc. 8th International Conference on Parallel
       Processing and Applied Mathematics (PPAM 2009), Part I,
       Workshop on Memory Issues on Multi- and Manycore Platforms,
       Lecture Notes in Computer Science, Vol. 6067, pp. 606-614,
       Springer (2010).

    7. Daisuke Takahashi: Implementation of Parallel 1-D FFT on GPU
       Clusters, Proc. 2013 IEEE 16th International Conference on
       Computational Science and Engineering (CSE 2013), pp. 174-180
       (2013).

    8. Daisuke Takahashi: Implementation of Parallel 3-D Real FFT with
       2-D Decomposition on Intel Xeon Phi Clusters, Proc. 13th
       International Conference on Parallel Processing and Applied
       Mathematics (PPAM 2019), Part I, Lecture Notes in Computer
       Science, Vol. 12043, pp. 151-161, Springer (2020).

Copyright:
    Copyright(C), 2000-2004, 2008-2014, 2020, Daisuke Takahashi
    Center for Computational Sciences
    University of Tsukuba
    1-1-1 Tennodai, Tsukuba, Ibaraki 305-8577, Japan
    e-mail: [email protected]
    You may use, copy, modify this code for any purpose (include
    commercial use) and without fee.
    You may distribute this ORIGINAL package.

ffte's People

Contributors

certik avatar jacobwilliams avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

ffte's Issues

add topics

I suggest adding the topics fft, fast-fourier-transform in the About section

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.