Comments: download file (pdf)
Ref.: MsC Thesis, University of Algarve, December 2013
Abstract:
High performance underwater acoustic models are of great importance for enabling real-time acoustic source
tracking, geoacoustic inversion, environmental monitoring and high-frequency underwater communications. Given
the parallelizable nature of ray tracing, in general, and of the ray superposition algorithm in particular,
use of multiple computing units for the development of real-time efficient applications based on ray tracing
is becoming of extreme importance.
Alongside the development of multi-core CPUs in recent years, graphics
processing units (or GPUs) have gained importance in scientific computing. Desktop GPUs provide vast amounts
of processing power at reasonable costs; while their usage may require extensive re-engineering of existing
software, they represent an attractive possibility for high performance low-cost underwater acoustic modelling.
OpenCL is a programming standard designed for writing multithreaded code for a variety of different devices,
including CPUs and GPUs. It consists of extensions to the C language as well as an API and device driver extensions.
The cTraceo ray tracing model was developed at SiPLAB, University of Algarve, in order to predict acoustic pressure
and particle velocity in complex waveguides while incorporating backscattering. Intensive testing through comparisons
with other models and experimental data has by now shown that cTraceo does indeed produce accurate acoustic field
predictions[1,2,,3].
This work addresses the adaptation of the cTraceo model from a single threaded CPU implementation
to an OpenCL parallelized application designed for GPUs. Since the GPU performance of double precision arithmetic
was found to be disappointing when compared to single precision, an effort was made to make use of single precision
arithmetic in the parallel version of cTraceo. It was found that, for all practical purposes, results are identical
to those of the previous implementation, with the advantage of significantly reduced processing times. Performance
gains between one and two orders of magnitude were obtained, depending on the configuration of the waveguide
and number of traced rays.
Keywords: underwater acoustics, acoustic propagation modelling, high performance computing, OpenCL,
parallel computing.