Title
Stencil codes on a vector length agnostic architecture
Abstract
Data-level parallelism is frequently ignored or underutilized. Achieved through vector/SIMD capabilities, it can provide substantial performance improvements on top of widely used techniques such as thread-level parallelism. However, manual vectorization is a tedious and costly process that needs to be repeated for each specific instruction set or register size. In addition, automatic compiler vectorization is susceptible to code complexity, and usually limited due to data and control dependencies. To address some these issues, Arm recently released a new vector ISA, the Scalable Vector Extension (SVE), which is Vector-Length Agnostic (VLA). VLA enables the generation of binary files that run regardless of the physical vector register length. In this paper we leverage the main characteristics of SVE to implement and optimize stencil computations, ubiquitous in scientific computing. We show that SVE enables easy deployment of textbook optimizations like loop unrolling, loop fusion, load trading or data reuse. Our detailed simulations using vector lengths ranging from 128 to 2,048 bits show that these optimizations can lead to performance improvements over straight-forward vectorized code of up to 56.6% for 2,048 bit vectors. In addition, we show that certain optimizations can hurt performance due to a reduction in arithmetic intensity, and provide insight useful for compiler optimizers.
Year
DOI
Venue
2018
10.1145/3243176.3243192
PACT
Keywords
Field
DocType
data-level parallelism, scalable vector extension, vector length agnostic, stencil computations
Loop fusion,Instruction set,Computer science,Parallel computing,Stencil,Vectorization (mathematics),Stencil code,Compiler,Data parallelism,Loop unrolling
Conference
ISBN
Citations 
PageRank 
978-1-4503-5986-3
1
0.35
References 
Authors
9
8
Name
Order
Citations
PageRank
Adrià Armejach1927.26
Helena Caminal292.27
Juan Manuel Cebrian32410.19
Rekai González-Alberquilla410.35
Chris Adeniyi-Jones5564.64
Mateo Valero64520355.94
Marc Casas711123.61
Miquel Moretó820525.49