My research focuses on the fundamentals of the performance portability of massively parallel High Performance simulation codes. I develop both the theory and practice of performance portability, developing methodologies for rigorous benchmarking, measurement, and analysis of performance portability. My interests include how to achieve high performance with a diverse range of advanced processor architectures, including CPUs (x86 and Arm), GPUs and other accelerators. I have designed and evaluated a number of proxy applications across a number of scientific domains, which obtain high levels of performance portability across diverse computer architectures.
I am also interested in the performance of neutral particle transport algorithms on diverse many-core computer architectures. I have designed high performance parallel algorithms and implementations of SN transport solvers on structured and unstructured meshes, validated against performance measurements and models I developed.
I am an expert in parallel programming languages and abstractions, and contribute to a number of open standard programming models, including SYCL, OpenCL and OpenMP, and have recently joined the British Standards Institute Panel for ISO C++ (IST/5/-/21).
"Programming Your GPU with OpenMP: Performance Portability for GPUs", by Tom Deakin and Tim Mattson (Intel Labs), was published by MIT Press in November 2023.
Bristol University final-year student? Check out my list of final-year projects.
Performance portable memory bandwidth benchmark
Enabling performance portable benchmarking for ExCALIBUR Software
HPC Allsorts is an assorted collection of introductory articles about High Performance Computing and Supercomputing.
Achieving Performance Portability at Exascale with SYCL