Art of Research

Producing art images from our research.


An extension of Csmith, CLsmith aims to find OpenCL compiler bugs via EMI and RDT.

GPU Weak Memory Testing

Testing weak memory behaviours on GPUs

Just a placeholder for now


A formal verification tool for proving correctness properties of GPU kernels written in OpenCL and CUDA


Safer asynchronous programming for .NET

Portable Inter-Workgroup GPU Barriers

A portable inter-workgroup barrier for GPUs


A collection of multithreaded benchmarks amenable to systematic concurrency testing.


Symbooglix is Symbolic execution engine for the Boogie intermediate verification language


A symbolic data race analyzer for Linux device drivers.

Current Grants

Reliable Many-Core Programming

Five year EPSRC Early Career Fellowship.

  • Role: PI
  • Funder: EPSRC, EP/N026314/1
  • Dates: October 2016—September 2021
  • Value: £1,005,751

CLSmith: Automated Testing for Many-Core Compilers

Impact acceleration project focusing on our methods for automated testing of many-core compilers, including CLsmith.

  • Role: PI
  • Funder: EPSRC via Imperial College’s Impact Acceleration Account
  • Dates: October 2016—March 2017
  • Value: EUR £30,135

CK/CLsmith: An Automated Testing Framework for Many-Core Vendor Tools

Technology transfer project on integration of our CLsmith technology with dividiti‘s Collective Knowledge framework

GCHQ-sponsored PhD Studentship

A 3.5-year studentship from GCHQ, which supports Christopher Lidbury‘s studies.

  • Role: PhD Supervisor
  • Funder: GCHQ
  • Dates: October 2014—March 2018
  • Value: £130,666

EPSRC/ARM-sponsored PhD Studentship

A 3.5-year EPSRC Industrial CASE studentship, sponsored by ARM, which supports Daniel Liew‘s studies.

  • Role: PhD Supervisor (joint with Cristian Cadar)
  • Funder: EPSRC and ARM
  • Dates: January 2013—July 2016
  • Value: £97,500