If you made any changes in Pure these will be visible here soon.

Personal profile

Area of academic expertise - outline

Following a number of years within the video games industry, in roles including software engineer and managing director, an appetite to investigate research topics including high-performance parallel computing systems; compilers for GPGPU and heterogeneous multicore architectures; functional programming; and C++ template metaprogramming led to a Ph.D. and subsequent leading roles in EU FP7 projects such as Peppher, LPGPU and CARP.

Current research activities

My current research investigates the use of advanced programming models for GPGPU programming, including Khronos SYCL; and the ComputeCpp implementation from Codeplay Software Ltd. I have also recently completed an SFC-funded investigation involving multiple GPUs on a single node courtesy of Utopia Computers Ltd.; and lead the ongoing development of a highly generic C++2x metaprogramming library.

My current research students include:

  • 2016 – Present: Mr Andrew Gozillon (M.Phil./Ph.D.), Metaprogramming for Heterogeneous Parallelism (Funded by the University of the West of Scotland)

Desired research direction

A key structural change in modern computing is the move towards highly parallel, low-power, and heterogeneous hardware architectures. My research aims to tackle challenges integrated with such developments, including the need to manage the complexity of software development through novel parallel programming models; the use of functional programming and advanced type checking mechanisms to provide reassurance of software correctness; and extends to efforts aiming to improve performance portability in computational science. I am also interested in the long-term improvements to human-computer interaction (HCI) facilitated by the novel integration of eye tracking, along with augmented and virtual reality in ubiquitous computing; and the relevance of such opportunities for future smart cities.

Target collaborative companies

  • Software Tools
  • Semiconductors
  • Gaming and Interactive Graphics

Target collaborative organisations

  • High Performance Computing
  • Functional Programming
  • Compiler Technology

Other areas of expertise available for knowledge exchange

  • Functional Programming
  • C++ and Template Metaprogramming
  • Parallel and GPGPU Programming
  • Parsing, Translation and Compiler Technology
  • Message Passing Interface Programming
  • Embedded, Games Console, and Interactive 3D Graphics Development

Fingerprint Fingerprint is based on mining the text of the person's scientific documents to create an index of weighted terms, which defines the key subjects of each individual researcher.

  • 7 Similar Profiles
Data storage equipment Engineering & Materials Science
Computer vision Engineering & Materials Science
Computer programming languages Engineering & Materials Science
Application programming interfaces (API) Engineering & Materials Science
Software engineering Engineering & Materials Science
Functional programming Engineering & Materials Science
Computer hardware Engineering & Materials Science
DSL Engineering & Materials Science

Network Recent external collaboration on country level. Dive into details by clicking on the dots.

Research Output 2005 2018

Multiple dispatch using compile-time metaprogramming

Haeri, S. H. & Keir, P. 4 Nov 2018

Research output: Contribution to conferencePresentation

Open Access

Point-Free Templates

Gozillon, A. & Keir, P. 16 Apr 2018

Research output: Contribution to conferencePresentation

Open Access

Towards Programmable Address Spaces

Gozillon, A. & Keir, P. 28 Sep 2017 Proceedings of the 2017 Federated Conference on Computer Science and Information Systems. IEEE, p. 697-700 4 p. (Annals of Computer Science and Information Systems; vol. 11)

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Open Access
Data storage equipment
Application programming interfaces (API)
Computer programming languages

DAGR: A DSL for Legacy OpenCL Codes: Porting SLAMBench KFusion to SYCL

Keir, P. 13 Mar 2016 4 p.

Research output: Contribution to conferencePaper

Open Access
Application programming interfaces (API)
Computer vision

Kernel Composition in SYCL

Potter, R., Keir, P., Bradford, R. & Murray, A. 2015 IWOCL '15 Proceedings of the 3rd International Workshop on OpenCL. Association for Computing Machinery, 7 p. 11

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Data storage equipment
Chemical analysis
Parallel programming
Image processing

Activities 2012 2018

External Examiner for Ph.D. Viva

Keir, P. (Examiner)
15 May 2018

Activity: Examination

Point-Free Templates

Gozillon, A. (Speaker), Keir, P. (Speaker)
17 Apr 2018

Activity: Oral presentation

Curried C++ Template Metaprogramming

Keir, P. (Speaker)
9 May 2018

Activity: Invited talk

The Distributed & Heterogeneous Programming in C/C++ Conference 2018

Keir, P. (Organiser)
14 May 2018

Activity: Participation in workshop, seminar, course

Trends in Functional Programming Symposium 2018

Keir, P. (Speaker)
11 Jun 201813 Jun 2018

Activity: Participation in conference



Computer programming languages
Data storage equipment
Application programming interfaces (API)