There is an interesting book coming up: “Numerical Computations with GPUs” – a book explaining various numerical algorithms with code in CUDA or OpenCL.
edit: At the moment there are 21 articles to be included in the book.
edit 2: book should be out in July
- Accelerating Numerical Dense Linear Algebra Calculations with GPUs.
- A Guide to Implement Tridiagonal Solvers on GPUs.
- Batch Matrix Exponentiation.
- Efficient Batch LU and QR Decomposition on GPU.
- A Flexible CUDA LU-Based Solver for Small, Batched Linear Systems.
- Sparse Matrix-Vector Product.
- Solving Ordinary Differential Equations on GPUs.
- GPU-based integration of large numbers of independent ODE systems.
- Finite and spectral element methods on unstructured grids for flow and wave propagation problems.
- A GPU implementation for solving the Convection Diffusion equation using the Local Modified SOR method.
- Pseudorandom numbers generation for Monte Carlo simulations on GPUs: Open CL approach.
- Monte Carlo Automatic Integration with Dynamic Parallelism in CUDA.
- GPU-Accelerated computation routines for quantum trajectories method.
- Monte Carlo Simulation of Dynamic Systems on GPUs.
- Fast Fourier Transform (FFT) on GPUs.
- A Highly Efficient FFT Using Shared-Memory Multiplexing.
- Increasing parallelism and reducing thread contentions in mapping localized N-body simulations to GPUs.
Providing all algorithms in both CUDA and OpenCL would be a solution we could all agree upon, but I understood there is some company that wants it to be CUDA-only. As OpenCL-developers cannot use such book well, when we need to translate CUDA-code to OpenCL, I hope the OpenCL-community can help write the chapters to get a good balance.
From the book’s editor:
Numerical Computations with GPUs, to be published by Springer, will contain a collection of articles on core numerical methods adapted for Graphics Processing Units (GPUs). Classical numerical methods (solution of linear equations, FFT, etc.) are central in many scientific and engineering computations. In recent years, substantial efforts we re undertaken to adapt these methods for recently emerged GPU-based systems. The book is envisioned as a consolidation of such work into a single volume covering widely used methods and techniques. Each chapter will provide mathematical background, parallel algorithm and implementation details leading to reusable, adaptable, and scalable code fragments. Each chapter will be accompanied with a basic CUDA or OpenCL source code that can be used by the readers as a starting point for adaptation in their applications. The book will serve as a GPU implementation manual for many numerical algorithms providing valuable insights into parallelization strategies for GPUs as well as ready-to-use code fragments with a broad appeal to both developers and researchers interested in GPU computing.
- Dense linear algebra
- Sparse linear algebra
- Eigenvalues and eigenvectors
- Numerical integration and differentiation
- Interpolation and extrapolation
- Random number generation and Monte Carlo problems
- FFT and its applications
- Functions and root finding
- Data fitting
- Iterative solvers
- Differential equations
- Sorting and searching
- Coding and compression