I am a Lecturer (Assistant Professor) in Systems and Hardware Security within the School of Informatics at the University of Edinburgh. Previously, I was at the University of Cambridge, where I did my undergrad and PhD (Churchill College).
Research
My research interests currently include architectural and compiler techniques for:
Data prefetching, both in software and in hardware, particularly for irregular and big data workloads.
Efficient hardware fault detection and correction.
Systems, runtime and hardware security.
My interests are broadly spread across all of these topics. Recently, I've done a lot of work on temporal safety, both in hardware and software. I've used many-core heterogeneous architectures to achieve high performance and efficiency across all three of prefetching, reliability and security. I'm also interested in microarchitectural side channels: see my recent work on MuonTrap, and the Dijkstra's Pipe EPSRC Project (with Vijay Nagarajan, David Aspinall and Tobias Grosser), which seeks to formalise speculative timing behaviour (exploited by Spectre) so that we can get the same rigid guarantees currently only given for functional correctness.
Publications
Security
MineSweeper: A "Clean Sweep" for Drop-in Use-After-Free Prevention, Marton Erdos, Sam Ainsworth and Timothy M. Jones, ASPLOS 2022. [Paper] [Data Repository] [Lightning Talk]
GhostMinion: A Strictness-Ordered Cache System for Spectre Mitigation, Sam Ainsworth, MICRO 2021. [Paper] [Github]
MuonTrap: Preventing Cross-Domain Spectre-Like Attacks by Capturing Speculative State, Sam Ainsworth and Timothy M. Jones, ISCA 2020. [Paper] [Data Repository] [Video]
MarkUs: Drop-in use-after-free prevention for low-level languages, Sam Ainsworth and Timothy M. Jones, S&P 2020. [Paper] [Github] [Video]
Cornucopia: Temporal Safety for CHERI Heaps, Nathaniel Wesley Filardo, Brett F. Gutstein, Jonathan Woodruff, Sam Ainsworth, Lucian Paul-Trifu, Brooks Davis, Hongyan Xia, Edward Tomasz Napierala, Alexander Richardson, John Baldwin, David Chisnall, Jessica Clarke, Khilan Gudka, Alexandre Joannou, A. Theodore Markettos, Alfredo Mazzinghi, Robert M. Norton, Michael Roe, Peter Sewell, Stacey Son, Timothy M. Jones, Simon W. Moore, Peter G. Neumann and Robert N. M. Watson, S&P 2020. [Paper] [Data Repository] [Video]
The Guardian Council: Parallel Programmable Hardware Security, Sam Ainsworth and Timothy M. Jones, ASPLOS 2020. [Paper] [Video] [Github] [Poster]
CHERIvoke: Characterising Pointer Revocation using CHERI Capabilities for Temporal Memory Safety, Hongyan Xia, Jonathan Woodruff, Sam Ainsworth, Nathaniel W. Filardo, Michael Roe, Alexander Richardson, Peter Rugg, Peter G. Neumann, Simon W. Moore, Robert N. M. Watson and Timothy M. Jones, MICRO 2019. [Paper] [Data Repository] [Lightning Talk] [Poster]
Fault Tolerance
ParaDox: Eliminating Voltage Margins via Heterogeneous Fault Tolerance, Sam Ainsworth, Lionel Zoubritzky, Alan Mycroft and Timothy M. Jones, HPCA 2021. [Paper] [Data Repository] [Short Video] [Long Video]
ParaMedic: Heterogeneous Parallel Error Correction, Sam Ainsworth and Timothy M. Jones, DSN 2019. [Paper] [Data Repository]
Parallel Error Detection Using Heterogeneous Cores, Sam Ainsworth and Timothy M. Jones, DSN 2018. [Paper] [Poster] [Data Repository]
Prefetching and Big Data
Vector Runahead for Indirect Memory Accesses, Ajeya Naithani, Sam Ainsworth, Timothy M. Jones and Lieven Eeckhout, IEEE Micro Top Picks 2022. [Early Access]
Compendia: Reducing Virtual-Memory Costs via Selective Densification, Sam Ainsworth and Timothy M. Jones, ISMM 2021. [Paper] [Data Repository] [Video]
Vector Runahead, Ajeya Naithani, Sam Ainsworth, Timothy M. Jones and Lieven Eeckhout, ISCA 2021. [Paper]
Software Prefetching for Indirect Memory Accesses: A Microarchitectural Perspective, Sam Ainsworth and Timothy M. Jones, ACM Transactions on Computer Systems (TOCS), 2019. [Paper] [Github]
Many-core systems for big-data computing, Sam Ainsworth and Timothy M. Jones, Book chapter in Many-Core Computing: Hardware and Software, IET Publishing, 2019. [IET Book] [Chapter]
Prefetching for complex memory access patterns, Sam Ainsworth, PhD Thesis, University of Cambridge, 2018. [Thesis]
An Event-Triggered Programmable Prefetcher for Irregular Workloads, Sam Ainsworth and Timothy M. Jones, ASPLOS 2018. [Paper] [Poster] [Data Repository]
I created the course Security Engineering for UG4/UG5/MSc students, with Ross Anderson, with videos of the lectures available free to all. This gives students the opportunity to understand the ways real systems are attacked and defended, with a broad-church perspective from psychology and economics all the way down to computer architecture and transistors. Like, share and subscribe below: