Data layout types : a type-based approach to automatic data layout transformations for improved SIMD vectorisation

The increasing complexity of modern hardware requires sophisticated programming techniques for programs to run efficiently. At the same time, increased power of modern hardware enables more advanced analyses to be included in compilers. This thesis focuses on one particular optimisation technique th...

Full description

Bibliographic Details
Main Author: Šinkarovs, Artjoms
Other Authors: Scholz, Sven-Bodo ; Michaelson, Greg
Published: Heriot-Watt University 2015
Subjects:
515
Online Access:http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.686139
id ndltd-bl.uk-oai-ethos.bl.uk-686139
record_format oai_dc
spelling ndltd-bl.uk-oai-ethos.bl.uk-6861392017-10-04T03:23:20ZData layout types : a type-based approach to automatic data layout transformations for improved SIMD vectorisationŠinkarovs, ArtjomsScholz, Sven-Bodo ; Michaelson, Greg2015The increasing complexity of modern hardware requires sophisticated programming techniques for programs to run efficiently. At the same time, increased power of modern hardware enables more advanced analyses to be included in compilers. This thesis focuses on one particular optimisation technique that improves utilisation of vector units. The foundation of this technique is the ability to chose memory mappings for data structures of a given program. Usually programming languages use a fixed layout for logical data structures in physical memory. Such a static mapping often has a negative effect on usability of vector units. In this thesis we consider a compiler for a programming language that allows every data structure in a program to have its own data layout. We make sure that data layouts across the program are sound, and most importantly we solve a problem of automatic data layout reconstruction. To consistently do this, we formulate this as a type inference problem, where type encodes a data layout for a given structure as well as implied program transformations. We prove that type-implied transformations preserve semantics of the original programs and we demonstrate significant performance improvements when targeting SIMD-capable architectures.515Heriot-Watt Universityhttp://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.686139http://hdl.handle.net/10399/2880Electronic Thesis or Dissertation
collection NDLTD
sources NDLTD
topic 515
spellingShingle 515
Šinkarovs, Artjoms
Data layout types : a type-based approach to automatic data layout transformations for improved SIMD vectorisation
description The increasing complexity of modern hardware requires sophisticated programming techniques for programs to run efficiently. At the same time, increased power of modern hardware enables more advanced analyses to be included in compilers. This thesis focuses on one particular optimisation technique that improves utilisation of vector units. The foundation of this technique is the ability to chose memory mappings for data structures of a given program. Usually programming languages use a fixed layout for logical data structures in physical memory. Such a static mapping often has a negative effect on usability of vector units. In this thesis we consider a compiler for a programming language that allows every data structure in a program to have its own data layout. We make sure that data layouts across the program are sound, and most importantly we solve a problem of automatic data layout reconstruction. To consistently do this, we formulate this as a type inference problem, where type encodes a data layout for a given structure as well as implied program transformations. We prove that type-implied transformations preserve semantics of the original programs and we demonstrate significant performance improvements when targeting SIMD-capable architectures.
author2 Scholz, Sven-Bodo ; Michaelson, Greg
author_facet Scholz, Sven-Bodo ; Michaelson, Greg
Šinkarovs, Artjoms
author Šinkarovs, Artjoms
author_sort Šinkarovs, Artjoms
title Data layout types : a type-based approach to automatic data layout transformations for improved SIMD vectorisation
title_short Data layout types : a type-based approach to automatic data layout transformations for improved SIMD vectorisation
title_full Data layout types : a type-based approach to automatic data layout transformations for improved SIMD vectorisation
title_fullStr Data layout types : a type-based approach to automatic data layout transformations for improved SIMD vectorisation
title_full_unstemmed Data layout types : a type-based approach to automatic data layout transformations for improved SIMD vectorisation
title_sort data layout types : a type-based approach to automatic data layout transformations for improved simd vectorisation
publisher Heriot-Watt University
publishDate 2015
url http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.686139
work_keys_str_mv AT sinkarovsartjoms datalayouttypesatypebasedapproachtoautomaticdatalayouttransformationsforimprovedsimdvectorisation
_version_ 1718543892665597952