Abstract

This chapter presents a GPU accelerated quadrature grid scheme designed for situations where the grid points move in time. The relative merits of several schemes for parallelization have been discussed. Mixed precision as a valuable optimization technique is introduced. Quadrature grids are often custom built to match the topography of a particular integrand. For example, additional points may be allotted near known discontinuities. A subtle complication arises when the integrand evolves in time. In such cases, the quadrature points dynamically follow features of the integrand. As a result the grid depends on the motion of the system and contributes to its gradient. Becke introduced the approach to dynamical grids used in chemical DFT calculations. Once the data is arranged on the GPU, the kernel is launched, calculates the Becke weight, and combines it with the spherical weight in place. Finally, the weights are copied back to the host and stored for later use in the DFT calculation. However, the CPU implementation's serial structure limited its computation to a single core. Quadrature grids were generated for a representative set of test geometries ranging from about 100 to nearly 900 atoms. The Becke kernel accounts for up to 98% of the total CPU runtime, but on the GPU it is overshadowed by the previously insignificant atom list step. The next step will be to implement a GPU accelerated nearest neighbor algorithm to build the atom lists in place on the GPU. A second direction for further work is the implementation of GPU accelerated weight gradients.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call