Parallel Fast Fourier Transform Ryan Liu. Introduction The Discrete Fourier Transform could be applied in science and engineering. Examples: ◦ Voice recognition.

Slides:



Advertisements
Similar presentations
DCSP-13 Jianfeng Feng Department of Computer Science Warwick Univ., UK
Advertisements

David Hansen and James Michelussi
Fourier Transform and its Application in Image Processing
Fast Fourier Transform for speeding up the multiplication of polynomials an Algorithm Visualization Alexandru Cioaca.
Parallel Processing (CS 730) Lecture 7: Shared Memory FFTs*
Fourier Transforms and Their Use in Data Compression
The Study of Cache Oblivious Algorithms Prepared by Jia Guo.
Digital Kommunikationselektronik TNE027 Lecture 5 1 Fourier Transforms Discrete Fourier Transform (DFT) Algorithms Fast Fourier Transform (FFT) Algorithms.
LECTURE Copyright  1998, Texas Instruments Incorporated All Rights Reserved Use of Frequency Domain Telecommunication Channel |A| f fcfc Frequency.
Fourier Transform (Chapter 4)
1 Chapter 16 Fourier Analysis with MATLAB Fourier analysis is the process of representing a function in terms of sinusoidal components. It is widely employed.
Image Processing A brief introduction (by Edgar Alejandro Guerrero Arroyo)
Fast Fourier Transform Lecture 6 Spoken Language Processing Prof. Andrew Rosenberg.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Introduction to Fast Fourier Transform (FFT) Algorithms R.C. Maher ECEN4002/5002 DSP Laboratory Spring 2003.
Fast Fourier Transform. Agenda Historical Introduction CFT and DFT Derivation of FFT Implementation.
Image Enhancement in the Frequency Domain Part I Image Enhancement in the Frequency Domain Part I Dr. Samir H. Abdul-Jauwad Electrical Engineering Department.
FFT1 The Fast Fourier Transform by Jorge M. Trabal.
May 29, Final Presentation Sajib Barua1 Development of a Parallel Fast Fourier Transform Algorithm for Derivative Pricing Using MPI Sajib Barua.
Reconfigurable Computing S. Reda, Brown University Reconfigurable Computing (EN2911X, Fall07) Lecture 16: Application-Driven Hardware Acceleration (1/4)
Image Fourier Transform Faisal Farooq Q: How many signal processing engineers does it take to change a light bulb? A: Three. One to Fourier transform the.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Introduction to Algorithms
The Fourier series A large class of phenomena can be described as periodic in nature: waves, sounds, light, radio, water waves etc. It is natural to attempt.
Orthogonal Transforms
Time and Frequency Representation
Unit 7 Fourier, DFT, and FFT 1. Time and Frequency Representation The most common representation of signals and waveforms is in the time domain Most signal.
Fourier Transform and Applications
Discrete Time Periodic Signals A discrete time signal x[n] is periodic with period N if and only if for all n. Definition: Meaning: a periodic signal keeps.
Fast Fourier Transform Irina Bobkova. Overview I. Polynomials II. The DFT and FFT III. Efficient implementations IV. Some problems.
Fast Fourier Transform. Definition All Periodic Waves Can be Generated by Combining Sin and Cos Waves of Different FrequenciesAll Periodic Waves Can be.
Parallelizing the Fast Fourier Transform David Monismith cs599.
CSC 7600 Lecture 18: Applied Parallel Algorithms 4 Spring 2009 HIGH PERFORMANCE COMPUTING: MODELS, METHODS, & MEANS APPLIED PARALLEL ALGORITHMS 4 Dr. Hartmut.
Transforms. 5*sin (2  4t) Amplitude = 5 Frequency = 4 Hz seconds A sine wave.
Chapter 4: Image Enhancement in the Frequency Domain Chapter 4: Image Enhancement in the Frequency Domain.
Image Enhancement in the Frequency Domain Spring 2006, Jen-Chang Liu.
CS 6068 Parallel Computing Fall 2013 Lecture 10 – Nov 18 The Parallel FFT Prof. Fred Office Hours: MWF.
FFT USING OPEN-MP Done by: HUSSEIN SALIM QASIM & Tiba Zaki Abdulhameed
5.6 Convolution and FFT. 2 Fast Fourier Transform: Applications Applications. n Optics, acoustics, quantum physics, telecommunications, control systems,
Chapter 7: The Fourier Transform 7.1 Introduction
The Fast Fourier Transform
1 © 2010 Cengage Learning Engineering. All Rights Reserved. 1 Introduction to Digital Image Processing with MATLAB ® Asia Edition McAndrew ‧ Wang ‧ Tseng.
Spatial Frequencies Spatial Frequencies. Why are Spatial Frequencies important? Efficient data representation Provides a means for modeling and removing.
Digital Signal Processing Chapter 3 Discrete transforms.
Fourier Analysis of Discrete Time Signals
The Fast Fourier Transform and Applications to Multiplication
Motivation: Wavelets are building blocks that can quickly decorrelate data 2. each signal written as (possibly infinite) sum 1. what type of data? 3. new.
7- 1 Chapter 7: Fourier Analysis Fourier analysis = Series + Transform ◎ Fourier Series -- A periodic (T) function f(x) can be written as the sum of sines.
Practical Image Processing1 Chap7 Image Transformation  Image and Transformed image Spatial  Transformed domain Transformation.
Fourier Transform.
CS 376b Introduction to Computer Vision 03 / 17 / 2008 Instructor: Michael Eckmann.
Applied Symbolic Computation1 Applied Symbolic Computation (CS 567) The Fast Fourier Transform (FFT) and Convolution Jeremy R. Johnson TexPoint fonts used.
Fourier transform.
Digital Image Processing Lecture 7: Image Enhancement in Frequency Domain-I Naveed Ejaz.
Presented by Huanhuan Chen University of Science and Technology of China 信号与信息处理 Signal and Information Processing.
بسم الله الرحمن الرحيم Digital Signal Processing Lecture 14 FFT-Radix-2 Decimation in Frequency And Radix -4 Algorithm University of Khartoum Department.
Digital Image Processing Lecture 8: Fourier Transform Prof. Charlene Tsai.
Introduction to Transforms
Integral Transform Method
Section II Digital Signal Processing ES & BM.
Polynomial + Fast Fourier Transform
Factor Graphs and the Sum-Product Algorithm
FAST FOURIER TRANSFORM ALGORITHMS
DFT and FFT By using the complex roots of unity, we can evaluate and interpolate a polynomial in O(n lg n) An example, here are the solutions to 8 =
4.1 DFT In practice the Fourier components of data are obtained by digital computation rather than by analog processing. The analog values have to be.
Image Processing, Leture #14
1-D DISCRETE COSINE TRANSFORM DCT
 = N  N matrix multiplication N = 3 matrix N = 3 matrix N = 3 matrix
Discrete Fourier Transform
The Frequency Domain Any wave shape can be approximated by a sum of periodic (such as sine and cosine) functions. a--amplitude of waveform f-- frequency.
Presentation transcript:

Parallel Fast Fourier Transform Ryan Liu

Introduction The Discrete Fourier Transform could be applied in science and engineering. Examples: ◦ Voice recognition ◦ Image processing Discrete Fourier Transform (DFT): O(n 2 ) Fast Fourier Transform (FFT): O(n log n) 2

Fourier Analysis Fourier analysis: Represent continuous functions by potentially infinite series of sine and cosine functions. Fourier Series: A function can be expressed as the sum of a series of sines and cosines : 3

Fourier Transform Fourier Series can be generalized to derive the Fourier Transform Forward Fourier Transform: Inverse Fourier Transform: Note: 4

Fourier Transform Fourier Transform maps a time series into the series of frequencies that composed the time series. Inverse Fourier Transform maps the series of frequencies back into the corresponding time series. The two functions are inverses of each other. 5

Discrete Fourier Transform Maps a sequence over time to another sequence over frequency. The Discrete Fourier Transform (DFT): k = 0, … N -1 n = 0, … N -1 Let k represent the discrete time signal, and F n represent discrete frequency transform function. 6

Speech example of DFT “Angora cats are furrier…” 7 Signal Frequency and amplitude

DFT Computation n elements vector x. DFT matrix vector product F n x ◦ f i,j = w n ij for, j < n, and w n is the primitive nth root of unity. 8

DFT Example1 DFT of vector (2,3) ◦ The primitive square root of unity for w 2 is -1 ◦ The inverse of DFT 9

DFT Example2 DFT of vector (1,2,4,3) The primitive 4 th root of unity for w 4 is i 10

DFT Example2 Inverse DFT 11

Fast Fourier Transform DFT requires O(n 2 ) time to process for n samples: So, using DFT is not a best way in practice. Fast Fourier Transform: ◦ Produces exactly the same result as the DFT. ◦ Time complexity O(n log(n)). ◦ divide-and-conquer strategy. 12

FFT Recursively breaks down a DFT of any composite size N = N 1 N 2 into many smaller DFTs of sizes N1 and N2, along with O(N) multiplication. It’s to divide the transform into two pieces of size N/2 at each step. 13

Parallel FFT Algorithm: recursive 14 FFT(1,2,4,3) FFT(1,4) FFT(1) FFT(2,3) FFT(4)FFT(3)FFT(2)

Parallel FFT 15 Tracking the flow of data values.

Phases of Parallel FFT Phase 1: Processes permute the input sequence. Phase 2: ◦ First log n – log p iterations of FFT ◦ No message passing is required Phase 3: ◦ Final log p iterations ◦ In each iteration every process swaps values with partner. 16

Time Complexity Analysis FFT time complexity O(n log n). Parallel FFT ◦ Each process controls n/p elements ◦ The overall communication time complexity is O( (n/p) log p) ◦ Computational time complexity of parallel FFT is O(n log n/p) 17

Reference Quinn,M.J (2004). Parallel programming in C with MPI and OpenMP Chu, E., & George. A., (2000). Serial and Parallel Fast Fourier Transform Algorithms Bi,G & Zeng, Y. (2003). Transforms and Fast Algorithm for Signal Analysis and Representation. The Fast Fourier Transform. (n.d.). Retrieved from Chu, E., & George, A., (1999). Inside the FFT black box: serial and parallel fast Fourier transform algorithms. Boca Raton, Fla.: CRC Press,