Computer Laboratory

Sam Ainsworth

Sam Ainsworth

I'm now a Lecturer in Systems and Hardware Security at the University of Edinburgh (new webpage here). Previously I was a Research Associate working with Timothy M. Jones in the Computer Architecture Group, and also a Teaching By-Fellow at 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.

Publications

Security

  • MuonTrap: Preventing Cross-Domain Spectre-Like Attacks by Capturing Speculative State, Sam Ainsworth and Timothy M. Jones, ISCA 2020. [Preprint] [Data Repository]
  • MarkUs: Drop-in use-after-free prevention for low-level languages, Sam Ainsworth and Timothy M. Jones, S&P 2020. [Paper] [Github] [Talk]
  • 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] [Talk]
  • The Guardian Council: Parallel Programmable Hardware Security, Sam Ainsworth and Timothy M. Jones, ASPLOS 2020. [Paper] [Talk] [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

  • 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

  • Prefetching in Functional Languages, Sam Ainsworth and Timothy M. Jones, ISMM 2020. [Paper] [Data Repository] [Poster] [Video] [Q+A 1] [Q+A 2]
  • 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]
  • Software Prefetching for Indirect Memory Accesses, Sam Ainsworth and Timothy M. Jones, CGO 2017. [Paper] [Poster] [EuroLLVM Talk] [Artefact Evaluation]
  • Graph Prefetching Using Data Structure Knowledge, Sam Ainsworth and Timothy M. Jones, ICS 2016. [Paper] [Data Repository]

Contact

sam.ainsworth at cl.cam.ac.uk