Abstract
In modern physics it has become common to find the solution of a problem by solving numerically a set of PDEs. Whether solving them on a finite difference grid or by a finite element approach, the main calculations are often applied to a stencil structure. In the last decade it has become usual to work with so called big data problems where calculations are very heavy and accelerators and modern architectures are widely used. Although CPU and GPU clusters are often used to solve such problems, parallelisation of any calculation ideally starts from a single processor optimisation. Unfortunately, it is impossible to vectorise a stencil structured loop with high level instructions. In this paper we suggest a new approach to rearranging the data structure which makes it possible to apply high level vectorisation instructions to a stencil loop and which results in significant acceleration. The suggested method allows further acceleration if shared memory APIs are used. We show the effectiveness of the method by applying it to an elastic wave propagation problem on a finite difference grid. We have chosen Intel architecture for the test problem and OpenMP (Open MultiProcessing) since they are extensively used in many applications.
Original language  English 

Pages (fromto)  5362 
Number of pages  10 
Journal  Computer Physics Communications 
Volume  216 
Early online date  1 Mar 2017 
DOIs  
Publication status  Published  Jul 2017 
Externally published  Yes 
Fingerprint
Dive into the research topics of 'Hybrid Multicore/vectorisation technique applied to the elastic wave equation on a staggered grid'. Together they form a unique fingerprint.Profiles

Sofya Titarenko
 Department of Computer Science  Senior Lecturer in Mathematics
 School of Computing and Engineering
 Centre for Mathematics and Data Science  Member
Person: Academic