using graphics processors to accelerate synthetic aperture sonar imaging via backpropagation
DESCRIPTION
23 September 2010. Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation. 2010 High Performance Embedded Computing Workshop. Daniel P. Campbell, Daniel A. Cook [email protected]. Sonar Imaging via Backpropagation. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/1.jpg)
GTRI_B-1
ECRB - HPC - 1
GPU SAS - 1
Using Graphics Processors to Accelerate Synthetic Aperture Sonar
Imaging via Backpropagation2010 High Performance Embedded
Computing Workshop
23 September 2010
Daniel P. Campbell, Daniel A. [email protected]
![Page 2: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/2.jpg)
GTRI_B-2
ECRB - HPC - 2
GPU SAS - 2
Sonar Imaging via Backpropagation
As the sonar passes by the scene, it transmits pulses and records returns. Each output pixel is computed by returns from the pulses for which it is within the beamwidth (shown in red). A typical integration path is shown in yellow.
Forw
ard
Trav
el
![Page 3: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/3.jpg)
GTRI_B-3
ECRB - HPC - 3
GPU SAS - 3
Backpropagation• Backpropagation is the simplest synthetic aperture
image reconstruction algorithm
for each output pixel:– Find all pulses containing reflections from that
location on the ground– Find recorded samples at each round-trip range– Inner product with expected reflection– Sum all of these data points
end
![Page 4: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/4.jpg)
GTRI_B-4
ECRB - HPC - 4
GPU SAS - 4
Backpropagation – Practical Advantages• Procedure
– Attempt to fly a perfectly straight line– Compensate for unwanted motion– Form image using Fourier-based method backpropagation– Register and interpolate image onto map coordinates
• Algorithmic simplicity– Easier to code and troubleshoot– Less accumulated numerical error
• Flexibility– Can image directly onto map coordinates without the need for
postprocessing (including bathymetric maps)• Expanded operating envelope
– Can form imagery in adverse environmental conditions and during maneuvers
![Page 5: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/5.jpg)
GTRI_B-5
ECRB - HPC - 5
GPU SAS - 5
Sonar vs. Radar• Typical SAS range/resolution: 100m/3cm• Typical SAR range/resolution: 10km/0.3m• SAS and SAR are mathematically equivalent,
allowing the same code to be used for both– The sensor is in continual motion, so it moves while
the signal travels to and from the ground• Light travels 200,000 times faster than sound, so
SAR processing can be accelerated by assuming the platform is effectively stationary for each pulse.
![Page 6: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/6.jpg)
GTRI_B-6
ECRB - HPC - 6
GPU SAS - 6
Sonar vs. Radar
In general, the sensor is at a different position by the time the signal is received (above). If the propagation is very fast (i.e., speed of light), then the platform can be considered motionless between transmit and receive (below).
![Page 7: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/7.jpg)
GTRI_B-7
ECRB - HPC - 7
GPU SAS - 7
Advantages of Backpropagation
• FFT-based reconstruction techniques exist– Require either linear or circular collections– Only modest deviations can be compensated– Requires extra steps to get georeferenced imagery
• Backpropagation is far more expensive, but is the most accurate approach– No constraints on collection geometry: can image
during maneuvers– Directly produces imagery located on any map
coordinates desired
![Page 8: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/8.jpg)
GTRI_B-8
ECRB - HPC - 8
GPU SAS - 8
Minimum FLOPsRange out
9Estimated r/t time
1Beam Check
5Final receiver position
65Final platform orientation 6Construct platform final R 35Apply R 15Add platform motion 9
Range In 9
Range->Bin 2
Sample & Interpolate 9
Correlate with ideal reflector 9
Accumulate 2
Total 111
Not needed for Radar
![Page 9: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/9.jpg)
GTRI_B-9
ECRB - HPC - 9
GPU SAS - 9
GPU Backpropagation
• GTRI SAR/S Toolbox, MATLAB Based• Multiple image formations• Backpropagation too slow
• GPU Accelerated plug-in to MATLAB toolbox• CUDA/C++• One output pixel per thread• Stream groups of pulses to GPU memory• Kernel invocation per pulse group
![Page 10: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/10.jpg)
GTRI_B-10
ECRB - HPC - 10
GPU SAS - 10
Direct Optimization Considerations
• Textures for clamped, interpolated sampling• 2-D blocks for range (thus cache) coherency• Careful control of register spills
• Shared memory for (some) local variables• Reduced precision transcendentals
• Recalculate versus lookup• Limit index arithmetic
![Page 11: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/11.jpg)
GTRI_B-11
ECRB - HPC - 11
GPU SAS - 11
GPU OcelotCourtesy, Computer Architecture and Systems Laboratory, Georgia Techhttp://www.ece.gatech.edu/research/labs/casl/index.html
G. Diamos, A. Kerr, S. Yalamanchili, and N. Clark, “Ocelot: A Dynamic Optimizing Compiler for Bulk Synchronous Applications in Heterogeneous Systems,” IEEE/ACM International Conference on Parallel Architectures and Compilation Techniques, September 2010.
![Page 12: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/12.jpg)
GTRI_B-12
ECRB - HPC - 12
GPU SAS - 12
Productivity Tools for Hybrid Systems
Ocelot Dynamic Execution Infrastructure
Debugging Memory race detection Bounds checks
Profiling/Performance Tuning
Alignment behavior Control flow behavior Inter-thread data flow
Integration with Front-End profiling tools
GLIMPSES (S. Pande)
![Page 13: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/13.jpg)
GTRI_B-13
ECRB - HPC - 13
GPU SAS - 13
Ocelot data
![Page 14: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/14.jpg)
GTRI_B-14
ECRB - HPC - 14
GPU SAS - 14
Ocelot Findings
82.25 FLOPS per pixel*pulse, too high
Did not expect any!
tyx = ThreadIdx.x * BLOCK + ThreadIdx.y;
share[tyx] = foo;
5% Speedup
a = calc1();b = calc2();if (a<constant) {…
25% Speedup
![Page 15: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/15.jpg)
GTRI_B-15
ECRB - HPC - 15
GPU SAS - 15
Performance versus Image Size
512 1024 1536 2048 2560 3072 3584 39360.0E+0
5.0E+8
1.0E+9
1.5E+9
2.0E+9
2.5E+9
3.0E+9
3.5E+9
4.0E+9
4.5E+9
0
2
4
6
8
10
12
14
16
Critically sampled - GTX480
pp/s Run time (s)
Image Size (edge pixels)
pp/s
Run
time(
s)
![Page 16: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/16.jpg)
GTRI_B-16
ECRB - HPC - 16
GPU SAS - 16
Strong Scaling Results
1 2 3 4 5 6 7 80.0E+0
2.0E+9
4.0E+9
6.0E+9
8.0E+9
10.0E+9
12.0E+9
0
5
10
15
20
25
30
35
40
Performance with 1-8 GPUs, single node3936 x 3936 image, 3936 input pulses, 1-8 Tesla
C1060
pp/s pp/s/g Run time
GPUs
PP/s
Run
time
(s)
![Page 17: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/17.jpg)
GTRI_B-17
ECRB - HPC - 17
GPU SAS - 17
Performance – Alternate Configurations
Configuration Run time (s) pp/s FLOPS/pp FLOPS/s
SAS 14.78 4.13E+9
Stop & Hop 12.82 4.76E+9
Ignore Beam 22.81 2.67E+9 111 296.73E+9
SAR (S&H+IB) 16.52 3.69E+9 32 118.12E+9
• 3936 x 3936 Image from 3936 pulses• Alternate configurations not optimized• GTX 480
![Page 18: Using Graphics Processors to Accelerate Synthetic Aperture Sonar Imaging via Backpropagation](https://reader035.vdocument.in/reader035/viewer/2022081511/5681611e550346895dd07762/html5/thumbnails/18.jpg)
GTRI_B-18
ECRB - HPC - 18
GPU SAS - 18
Future Work
• Further optimization• Reoptimize for Fermi• Tune for multi-GPU• Multi-node• Improve error handling, edge cases, etc.• Backpropagation server