GPU Implementation of Mantle Convection Code with 2nd Order Finite-Difference Method

April 28, 2010

4:00-5:00 pm

Room 405 Walter

Speakers: David Alejandro Sanchez, Gregory Barnett, Jr. and Grady Barrett Wright, University of Minnesota, University of Colorado and Boise State University

The recent incursion made by GPU into the computing world has also led to the development of mantle convection codes capable of being run on these newly developed graphics boards.

We have developed a 2nd order finite-difference code for constant viscosity mantle convection, using discrete Fourier transform techniques. The convection code was first written in Matlab and then translated to CUDA language using Jackets from Acceleryes Inc, Atlanta, Georgia. We then rewrote from the Matlab code a brand-new CUDA code, which runs much faster on the GPU than the Cudarized code employing Jackets.

The speed of the freshly written CUDA code enables us to attain a sustaining speed on the Tesla GPU of a couple of tenths of micro sec in wall-clock time per grid point per time-step, which means that a mesh with 10 million grid points in mantle convection can be solved in a couple of seconds of wall-clock time. We will discuss our experiences encountered in constructing this new CUDA code and show some preliminary results.