Graphcore 2019 - current

Specialised processor for machine learning (IPU)C++/ASM

Poplar Graph Compiler Traditional and IPU specific compilation methods. Designed a novel algorithm to optimise specific patterns of copies for tile processors with distributed memory architectures.
Poplar Graph Runtime Low latency, high throughput, host and IPU runtimes. Specific focus on optimisation of Host-IPU and IPU-IPU data transfers.
PopLibs Optimised machine learning libraries specific for the IPU. Parallel algorithms designed for MIMD tile processors. Including constraint programming for optimal algorithm planning.

Ultrahaptics 2017 - 2019

Generation of mid-air haptics from ultrasound

C++/C/C#

Research Implemented library of real time signal processing algorithms.
Tools C++ libraries to facilitate generation of mid-air haptics. C# layer to interoperate with Unity, a popular 3D game engine. User defined behaviour injected via a Python interface.

BAE Systems Applied Intelligence 2016 (Cyber security consultancy)

Sagentia 2014-2015 (Technical consultancy)

University of Bath2012-2017

MEng Electronic & Electrical Engineering First class honours

  • Bath BP Centurion award - Academic achievement 2013, 2014
  • RWE npower prize - Best first year student 2013

Interests

In my spare time I like to keep fit bouldering, growing various plants in the garden, and occasionally participating in gamejams. Over the winter months, I organise a group of volunteers for a homeless night shelter in Bristol.