English

Three Dirac operators on two architectures with one piece of code and no hassle

High Energy Physics - Lattice 2018-11-21 v2

Abstract

A simple minded approach to implement three discretizations of the Dirac operator (staggered, Wilson, Brillouin) on two architectures (KNL and core i7) is presented. The idea is to use a high-level compiler along with OpenMP parallelization and SIMD pragmas, but to stay away from cache-line optimization and/or assembly-tuning. The implementation is for N_v right-hand-sides, and this extra index is used to fill the SIMD pipeline. On one KNL node single precision performance figures for N_c=3, N_v=12 read 475 Gflop/s, 345 Gflop/s, and 790 Gflop/s for the three discretization schemes, respectively.

Keywords

Cite

@article{arxiv.1808.05506,
  title  = {Three Dirac operators on two architectures with one piece of code and no hassle},
  author = {Stephan Durr},
  journal= {arXiv preprint arXiv:1808.05506},
  year   = {2018}
}

Comments

1+6 pages, 3 figures, proceedings of Lattice 2018; v2: typos in eqs. (3.1) and (4.2) corrected, results unchanged