Accelerating underwater acoustic propagation modeling using general purpose graphic processing units

The quest for raw computing power has shifted from increasing processor clock speeds to increasing the number of processing cores. Currently, mainstream CPUs can be purchased in dual-slot quad-core and hex-core configurations. On the other hand, graphic cards provide hundreds of processing cores. Although there have been various implementations of scientific applications on graphics hardware, including underwater acoustic modeling, widespread use of this technology has been hampered by the often extraordinary effort needed to program this hardware, especially if the application architecture did not match the canonical graphics pipeline for gaming. In the last few years, the major graphics board manufacturers have stepped away from designing hardware specialized for particular new graphic special effects and made a concerted effort to provide general-purpose computing capabilities, of the sort that can be exploited for scientific computing. For example, Nvidia's CUDA environment currently provides many building blocks for scientific computing, such as (subsets of) BLAS, LAPACK, and FFTs.