GPU code.Implementing Molecular Dynamics (MD) code on GPUs is a current hot topic! It is especially attractive to our NML method as it utilizes many linear algebra routines from Blas, which is available to new GPU development kits. One of the problems with GPU calculations is that they are generally single precision arithmetic, offers considerable computational efficiency compared to double precision, but can lead to large force field errors if not implemented correctly. In conjunction with our GPU code implementation we are developing Shadow Hamiltonian methods to test the numerics. The use of symplectic integrators gives rise to the idea of the Shadow Hamiltonian, backward error analysis finds a Hamiltonian which is arbitrarily close to a quantity which is exactly preserved by the numerical method. Shadow Hamiltonian methods are extremely sensitive to errors in dynamics and has been used successfully to determine the stability limits of integrators (linear and non-linear) and accuracy of force fields, particularly in relation to the continuity of cutoffs and their complements. Clearly the methods can only be used for symplectic integrators but when used as an analysis tool for force fields the results are pertinent to non-Hamiltonian methods.
In the following initial report I have used Shadow Hamiltonian techniques to analyze the effects of reducing the arithmetic precision from double to single for our molecular dynamics code 'Protomol'. In line with the comments I received the 'extensive' variables, which are summed over the whole model (i.e. energies), retained double precision, as did the code for calculating the Shadow Hamiltonian. The report can be viewed here. OpenMM Group at Stanford University.
Our collaboration with the OpenMMÂ group at Stanford University has allowed me to implement a GPU version of the Normal Mode Langevin method in OpenMM. This GPU library is freely available and Protomol has been extended to utilize OpenMM.
|