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.