Improving Locality of Unstructured Mesh Algorithms on GPUs

02/11/2018
by   András Attila Sulyok, et al.
0

To most efficiently utilize modern parallel architectures, the memory access patterns of algorithms must make heavy use of the cache architecture: successively accessed data must be close in memory (spatial locality) and one piece of data must be reused as many times as possible (temporal locality). In this work we analyse the performance of unstructured mesh algorithms on GPUs, specifically the use of the shared memory and two-layered colouring to cache the data. We also look at different block layouts to analyse the trade-off between data reuse and the amount of synchronisation. We developed a standalone library that can transparently reorder the operations done and data accessed by a kernel, without modifications to the algorithm by the user. Using this, we performed measurements on relevant scientific kernels from different applications, such as Airfoil, Volna, Bookleaf, Lulesh and miniAero; using Nvidia Pascal and Volta GPUs. We observed significant speedups (1.2--2.5×).

READ FULL TEXT
research
02/11/2018

Locality Optimized Unstructured Mesh Algorithms on GPUs

Unstructured-mesh based numerical algorithms such as finite volume and f...
research
02/21/2019

Locality

The performance of modern computation is characterized by locality of re...
research
11/06/2017

Comparison of Parallelisation Approaches, Languages, and Compilers for Unstructured Mesh Algorithms on GPUs

Efficiently exploiting GPUs is increasingly essential in scientific comp...
research
09/09/2023

A Further Study of Linux Kernel Hugepages on A64FX with FLASH, an Astrophysical Simulation Code

We present an expanded study of the performance of FLASH when using Linu...
research
03/19/2018

Towards Memory Prefetching with Neural Networks: Challenges and Insights

Accurate memory prefetching is paramount for processor performance, and ...
research
04/27/2021

Performance Portable Back-projection Algorithms on CPUs: Agnostic Data Locality and Vectorization Optimizations

Computed Tomography (CT) is a key 3D imaging technology that fundamental...
research
02/05/2018

A Measurement Theory of Locality

Locality is a fundamental principle used extensively in program and syst...

Please sign up or login with your details

Forgot password? Click here to reset