High-Performance Geometric Multi-Grid with GPU Acceleration

Originally published at: https://developer.nvidia.com/blog/high-performance-geometric-multi-grid-gpu-acceleration/

Linear solvers are probably the most common tool in scientific computing applications. There are two basic classes of methods that can be used to solve an equation: direct and iterative. Direct methods are usually robust, but have additional computational complexity and memory capacity requirements. Unlike direct solvers, iterative solvers require minimal memory overhead and feature better computational…

Hi Nikolay,
First of all very interesting text, and I am interested if you have some data about runtimes (in seconds) on a single CPU/GPU for solving problems with approx O(10^6) DOFs?

Hi Stefan,
Thanks for the feedback. I can give you numbers for ~2M DOFs using 128^3 grid size. The fourth-order F-cycle takes 53ms on a single NVIDIA Tesla K40 with Intel Xeon E5-2690 v2. The max norm reported by HPGMG in this case is 7.5e-06.

Hi Nikolay,

Thank you for the post, this is a great code.
I am very interested on running a 2D multigrid solver on the GPU.
Do you have such a version by now?

Hi,
Thank you for the feedback. Unfortunately, there is no support for 2D multigrid as the original CPU code and even the GPU implementation were designed for 3D grids from the ground up.

Interesting article!