Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

13
Parallel Processing Parallel Processing Final Project Final Project Parallel FFT using to Parallel FFT using to solve Poisson’s solve Poisson’s Equation Equation Amir Torjeman Amir Torjeman Nitay Shiran Nitay Shiran

description

Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation. Amir Torjeman Nitay Shiran. Poisson’s Equation. The Fourier coefficients for function Φ:. Solving the Equation by DFT. Perform 2D DFT on both sides of the equation becomes:. The DFT. - PowerPoint PPT Presentation

Transcript of Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Page 1: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Parallel ProcessingParallel ProcessingFinal ProjectFinal Project

Parallel FFT using to solve Parallel FFT using to solve Poisson’s EquationPoisson’s Equation

Parallel ProcessingParallel ProcessingFinal ProjectFinal Project

Parallel FFT using to solve Parallel FFT using to solve Poisson’s EquationPoisson’s Equation

Amir TorjemanAmir Torjeman

Nitay ShiranNitay Shiran

Page 2: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Poisson’s EquationPoisson’s Equation

j k

kj ikyijxyx 2exp2exp, ,

The Fourier coefficients for function Φ:

Page 3: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Solving the Equation by DFTSolving the Equation by DFT

Perform 2D DFT on both sides of the equation becomes:

2222

,,

,

,2222

2exp2exp

2exp2exp

kj

f

ikyijxf

ikyijxkj

kjkj

j kkj

j kkj

Page 4: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

The DFTThe DFTThe DFTThe DFT

fWg kl

1

0

2expN

k N

klikflg

The problem: huge number of The problem: huge number of calculations: O(Ncalculations: O(N^2)^2)

The solution: FFT: Fast DFT algorithmThe solution: FFT: Fast DFT algorithm

Page 5: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

FFT: Decimation in time: FFT: Decimation in time: RADIX2RADIX2

Assume: N=2^d

Use: Recursive formula:

1- divide series into 2 series: fodd,feven

2- perform FFT to each serie.(recursive part)

3- F= Feven+Fodd*exp(-2πi k/N) *(-1)^kd-1

Page 6: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

FFT:FFT: cont.cont.

The Butterfly:The Butterfly:

Page 7: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

2D DFT2D DFT2D DFT2D DFT

2 dimensional transform:2 dimensional transform:

1) Transform each row

2) Replace each row with its transform

3) Transform each column

4) Replace each column with its transform

Page 8: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

2D DFT example2D DFT example

FFT

Square cube sinc

Page 9: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Parallel 2D DFTParallel 2D DFT::

Process 0

Process 1

Process 2

Process 3

.

.

.

.

.

.

Step 1: transform rows:

Divide rows to num

of process

Page 10: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Parallel 2D DFT: contParallel 2D DFT: cont..

Pro

cess

0

Pro

cess

1

Pro

cess

2

Pro

cess

3

. . . . . .

Step 2: transform columns:

Divide columns to num

of process

Page 11: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Our WorkOur WorkOur WorkOur Work

1) Syntsize the source function f(x,y) in Matlab, and save in file.

2) Perform 2D parallel FFT in MPI on the source file.

Find the solution to Poisson’s equation.

save solution in file.

3) Load file in MATLAB and display solution.

Syntsize MATLAB

Parallel ComputingMPI

DisplayMATLAB

Page 12: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

2D FFT example2D FFT example::Before:After:

Page 13: Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

THANK YOU!THANK YOU!

ANY ANY QUESTIONSQUESTIONS

??