- Senior Research Associate
Research
I have been involved in a number of research projects in my time at Cambridge. They all involve Computer Architecture, and generally also involve co-optimising the architecture with the software or algorithms which will be executed on the architecture.
Loki is a manycore processor which supports extremely low-latency communication between cores. This opens up new opportunities for parallelising programs, which in turn simplifies each core's task, allowing cores to be made smaller and more efficient. In 2018, we fabricated physical Loki chips with 128 cores.
I am interested in optimising machine learning workloads, particularly by adding dynamic control flow to reduce the total amount of computation. I have looked at techniques including hardware acceleration, pruning, dynamic gating, novel network structures and network architecture search.
Muntjac is a minimal 64-bit RISC-V multicore processor that's easy to understand, verify, and extend. The focus is on having a clean, well-tested design which others can build upon and further customise.
Teaching
I have supervised students for the following courses:
Part IA:
- Algorithms
- Interaction Design
- Introduction to Probability
- Numerical Analysis
- Operating Systems
- Scientific Computing
Part IB:
Part II:
Supervision work
Please:
- Attempt all questions set
- If you can leave little notes in your supervision work about which parts you found difficult/confusing, that would be extra helpful
- Get your answers to me by midday the day before the supervision
- Let me know as soon as possible if you need to reschedule a supervision
In return, I will:
- Mark your work and return it to you before the supervision
- Explain where and why you made mistakes, and how you can improve
- Tailor your supervision to you
I'm also very happy to answer any questions you have outside of supervisions. Whether part of the course doesn't make sense, or my questions are confusing, or you're curious about something beyond the scope of the course, send me an email any time and I'll do my best to respond promptly.
On the day
I will meet you outside reception when the supervision is due to start. There is a phone on the table by student administration which you can use to call me if the need arises: my office number is 63731.