The Community for Technology Leaders
Green Image
Issue No. 01 - January (2012 vol. 23)
ISSN: 1045-9219
pp: 94-101
Lawrence Murray , CSIRO Mathematics, Wembley
We consider the use of commodity graphics processing units (GPUs) for the common task of numerically integrating ordinary differential equations (ODEs), achieving speedups of up to 115-fold over comparable serial CPU implementations, and 15-fold over multithreaded CPU code with SIMD intrinsics. Using Lorenz '96 models as a case study, single and double precision benchmarks are established for both the widely used DOPRI5 method and computationally tailored low-storage {\rm RK}4(3)5[2{\rm R}+]{\rm C}. A range of configurations are assessed on each, including multithreading and SIMD intrinsics on the CPU, and GPU kernels parallelized over both the dimensionality of the ODE system and number of trajectories. On the GPU, we draw particular attention to the problem of variable task-length among threads of the same warp, proposing a lightweight strategy of assigning multiple data items to each thread to reduce the prevalence of redundant operations. A simple analysis suggests that the strategy can draw performance close to that of ideal parallelism, while empirical results demonstrate up to a 10 percent improvement over the standard approach.
Ordinary differential equations, initial value problems, Runge-Kutta integration, graphics hardware, GPGPU.
Lawrence Murray, "GPU Acceleration of Runge-Kutta Integrators", IEEE Transactions on Parallel & Distributed Systems, vol. 23, no. , pp. 94-101, January 2012, doi:10.1109/TPDS.2011.61
98 ms
(Ver 3.1 (10032016))