etmc/tmLQCD — pull request #157 by kostrzewa (2012-09-28 14:01:11+00:00)
Title: interleaving computation and communication in halfspinor hopping matrix on BG/Q with SPI

This pull-request implements a simple version of interleaved communication and computation when using SPI communication with the halfspinor version of the hopping matrix.

Two new arrays, g_body and g_surfac,e are defined which contain the even-odd pre-conditioned indices of the surface and body of the local lattice. These index arrays are then used to address the input spinor, auxiliary spinor and gauge field in the computation of the surface and body contributions in the hopping matrix. None of the index orderings is changed.

Roughly a 10% rise in performance is seen when compared to the hopping matrix without interleaving with just SPI. The implementation has been tested using the HMC.