44
IRUS Total
Downloads
  Altmetric

A study of vectorization for matrix-free finite element methods

File Description SizeFormat 
1094342020945005.pdfPublished version1.96 MBAdobe PDFView/Open
Title: A study of vectorization for matrix-free finite element methods
Authors: Sun, T
Mitchell, L
Kulkarni, K
Klockner, A
Ham, DA
Kelly, PHJ
Item Type: Journal Article
Abstract: Vectorization is increasingly important to achieve high performance on modern hardware with SIMD instructions. Assembly of matrices and vectors in the finite element method, which is characterized by iterating a local assembly kernel over unstructured meshes, poses difficulties to effective vectorization. Maintaining a user-friendly high-level interface with a suitable degree of abstraction while generating efficient, vectorized code for the finite element method is a challenge for numerical software systems and libraries. In this work, we study cross-element vectorization in the finite element framework Firedrake via code transformation and demonstrate the efficacy of such an approach by evaluating a wide range of matrix-free operators spanning different polynomial degrees and discretizations on two recent CPUs using three mainstream compilers. Our experiments show that our approaches for cross-element vectorization achieve 30% of theoretical peak performance for many examples of practical significance, and exceed 50% for cases with high arithmetic intensities, with consistent speed-up over (intra-element) vectorization restricted to the local assembly kernels.
Issue Date: 31-Jul-2020
Date of Acceptance: 1-Jul-2020
URI: http://hdl.handle.net/10044/1/90136
DOI: 10.1177/1094342020945005
ISSN: 1094-3420
Publisher: SAGE Publications
Start Page: 629
End Page: 644
Journal / Book Title: International Journal of High Performance Computing Applications
Volume: 34
Issue: 6
Copyright Statement: © The Author(s) 2020. This article is distributed under the terms of the Creative Commons Attribution 4.0 License (https://creativecommons.org/licenses/by/4.0/) which permits any use, reproduction and distribution of the work without further permission provided the original work is attributed as specified on the SAGE and Open Access pages (https://us.sagepub.com/en-us/nam/open-access-at-sage).
Keywords: Science & Technology
Technology
Computer Science, Hardware & Architecture
Computer Science, Interdisciplinary Applications
Computer Science, Theory & Methods
Computer Science
Finite element method
vectorization
global assembly
code generation
Science & Technology
Technology
Computer Science, Hardware & Architecture
Computer Science, Interdisciplinary Applications
Computer Science, Theory & Methods
Computer Science
Finite element method
vectorization
global assembly
code generation
cs.MS
cs.MS
Distributed Computing
0805 Distributed Computing
Publication Status: Published
Article Number: ARTN 1094342020945005
Online Publication Date: 2020-07-31
Appears in Collections:Computing
Applied Mathematics and Mathematical Physics
Grantham Institute for Climate Change
Faculty of Natural Sciences
Mathematics



This item is licensed under a Creative Commons License Creative Commons