Extending SHAPES for SIMD Architectures
Author(s) -
Αλέξανδρος Τάσος,
Juliana Franco,
Tobias Wrigstad,
Sophia Drossopoulou,
Susan Eisenbach
Publication year - 2018
Publication title -
spiral (imperial college london)
Language(s) - English
Resource type - Conference proceedings
DOI - 10.1145/3242947.3242951
Subject(s) - simd , computer science , code (set theory) , code refactoring , parallel computing , software , forcing (mathematics) , computer architecture , programming language , set (abstract data type) , climatology , geology
SIMD (Single Instruction, Multiple Data) instruction sets are ubiquitous on modern hardware, but rarely used in software projects. A major reason for this is that efficient SIMD code requires data to be laid out in memory in an unconventional manner, forcing developers to explicitly refactor their code and data structures in order to make use of SIMD. In previous work, we proposed SHAPES, an abstract layout specification for enabling memory optimisations for managed, object-oriented languages. In this paper, we explain how, by extending SHAPES with well-known constructs from the literature, which are not specific to SIMD, we can extend SHAPES to compile programs to use SIMD instructions. The resulting language (sketch) seems able to exploit SIMD capabilities without sacrificing ease of development.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom