gpu based polyphase filter banks for vlbi · 2020. 11. 30. · i perform polyphase filter bank...

21
Introduction Implemenation Results Future Work Conclusions GPU Based Polyphase Filter Banks for VLBI Mark McCurry Christopher Beaudoin & Geoff Crew MIT Haystack REU Program 2011 GPU Based Polyphase Filter Banks for VLBI

Upload: others

Post on 08-Mar-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

GPU Based Polyphase Filter Banksfor VLBI

Mark McCurryChristopher Beaudoin & Geoff Crew

MIT Haystack REU Program 2011

GPU Based Polyphase Filter Banks for VLBI

Page 2: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Outline

IntroductionWhat is being done?PFBHardware

ImplemenationCUDA

ResultsQualityQuantity

Future Work

Conclusions

GPU Based Polyphase Filter Banks for VLBI

Page 3: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

What is being done?

DSP

I Input of Analog values from data source near 4 Gb/s

I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU

I Output of channelized frequency spectrum

I All of this done in realtime

GPU Based Polyphase Filter Banks for VLBI

Page 4: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

What is being done?

DSP

I Input of Analog values from data source near 4 Gb/s

I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU

I Output of channelized frequency spectrum

I All of this done in realtime

GPU Based Polyphase Filter Banks for VLBI

Page 5: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

What is being done?

DSP

I Input of Analog values from data source near 4 Gb/s

I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU

I Output of channelized frequency spectrum

I All of this done in realtime

GPU Based Polyphase Filter Banks for VLBI

Page 6: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

What is being done?

DSP

I Input of Analog values from data source near 4 Gb/s

I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU

I Output of channelized frequency spectrum

I All of this done in realtime

GPU Based Polyphase Filter Banks for VLBI

Page 7: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

PFB

Polyphase Filter Bank

Two Channel Polyphase Filter Bank

x [n] r

z−1

↓2

↓2

E0(z)

E1(z)

FFT

f1[n]

f2[n]

b

b

GPU Based Polyphase Filter Banks for VLBI

Page 8: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Hardware

Roach Digital Backend (RDBE)

GPU Based Polyphase Filter Banks for VLBI

Page 9: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Hardware

Nvidia GPUs

GPU Based Polyphase Filter Banks for VLBI

Page 10: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

CUDA

What is CUDA?

GPU Based Polyphase Filter Banks for VLBI

Page 11: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

CUDA

CUDA

g l o b a l voidc u u n q u a n t i z e ( f l o a t ∗ dest , const i n t 8 t ∗ s r c ,

s i z e t N){

const s i z e t i = blockDim . x∗ b l o c k I d x . x +t h r e a d I d x . x ;

i f ( i <N)d e s t [ i ] = s t a t i c ca s t <f l oa t >( s r c [ i ] ) ;

}

GPU Based Polyphase Filter Banks for VLBI

Page 12: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

CUDA

CUDA 2

// Setup v i a cudaMemcpy

// i npu t and output a r e on the GPUc u u n q u a n t i z e <<<10,10>>>(output , i n p u t , 1 0 0 ) ;

// Return v i a cudaMemcpy

GPU Based Polyphase Filter Banks for VLBI

Page 13: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Quality

Quality of output: Actual

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Frequency (half−cycles/second)

Nor

mal

ized

Gai

nMagnitude response of 256 tap FIR, 32 tap FFT based PFB

GPU Based Polyphase Filter Banks for VLBI

Page 14: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Quality

Quality of output: Matlab

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Frequency (half−cycles/second)

Nor

mal

ized

Gai

nMatlab Prototype PFB

GPU Based Polyphase Filter Banks for VLBI

Page 15: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Quantity

Speed

Table: Performance of GPU Code1

Performance Metrics Data Input Rate

Reference Implementaiton 744 MB/sNo extra channels 540 MB/sHardcoding FIR size 756 MB/sHardcoded FIR, Hand Tuned Block Size 890 MB/sUsing 1/10 cost 470GTX 637 MB/s

1As of August 1stGPU Based Polyphase Filter Banks for VLBI

Page 16: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Increasing Speeds

How to proceed:

I Profiling, and extensive testing

I Effective use of CUDA resources

I Waiting for new cards

GPU Based Polyphase Filter Banks for VLBI

Page 17: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Increasing Speeds

How to proceed:

I Profiling, and extensive testing

I Effective use of CUDA resources

I Waiting for new cards

GPU Based Polyphase Filter Banks for VLBI

Page 18: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Increasing Speeds

How to proceed:

I Profiling, and extensive testing

I Effective use of CUDA resources

I Waiting for new cards

GPU Based Polyphase Filter Banks for VLBI

Page 19: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Conclusions

I CUDA makes heavyweight software processing possible

I Real time processing is possible at lower rates

I GPU processing is applicable to Astronomy and scientificcomputation

GPU Based Polyphase Filter Banks for VLBI

Page 20: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Conclusions

I CUDA makes heavyweight software processing possible

I Real time processing is possible at lower rates

I GPU processing is applicable to Astronomy and scientificcomputation

GPU Based Polyphase Filter Banks for VLBI

Page 21: GPU Based Polyphase Filter Banks for VLBI · 2020. 11. 30. · I Perform Polyphase Filter Bank (PFB) on a Nvidia GPU I Output of channelized frequency spectrum I All of this done

Introduction Implemenation Results Future Work Conclusions

Conclusions

I CUDA makes heavyweight software processing possible

I Real time processing is possible at lower rates

I GPU processing is applicable to Astronomy and scientificcomputation

GPU Based Polyphase Filter Banks for VLBI