Indico celebrates its 20th anniversary! Check our blog post for more information!

Progress on QDP-JIT: Adding support for AMD GPUs

28 Jul 2021, 13:45
15m
Oral presentation Software development and Machines Software development and Machines

Speaker

Frank Winter (Jefferson Lab)

Description

We report on the progress made on the QDP-JIT library which acts as a drop-in replacement for the QDP++ library which Chroma builds upon. QDP-JIT now targets NVIDIA and AMD GPU machines, like the upcoming Frontier supercomputer, Summit or the new USQCD machine with AMD GPUs at Jefferson Lab. Our new implementation aims to add one missing feature of QDP++: performance.

We use the original type system and operations of QDP++ and have engineered an Just-in-Time (JIT) compiler toolchain based on LLVM for data layout transformations suitable for GPUs. The JIT route also allows us to beneficially specialize kernels on runtime parameters like, e.g., the machine grid and code path. QDP-JIT is fully-featured, has many optimizations built-in and is production-ready for machines of both GPU types.

Primary author

Frank Winter (Jefferson Lab)

Co-author

Robert Edwards (Thomas Jefferson National Accelerator Facility)

Presentation materials