Samuel W. Stark

Education

PhD in Computer Science — University of Cambridge

October 2022 - Present

Ongoing, planning to submit in March 2026

  • Secure FPGA Design

    Designed a high-throughput cryptography accelerator for checking memory accesses at the edges of the interconnect. Verified the design using a custom C++ UVM testbench with Verilator. Integrated with a pre-existing soft-CPU interconnect design on a Stratix-10 FPGA.

  • Low-Level Operating System Integration

    Wrote drivers and other software for interacting with the cryptography accelerator in multiple operating systems, including FreeBSD, using C, C++, Rust, and Python.

  • Writing and Communication

    Wrote an article for ACM Queue on high-performance memory safety in CXL, which was subsequently published in Communications of the ACM - the official magazine of the world's largest scientific computing society. The article is available online.

M.Phil in Advanced Computer Science — University of Cambridge

October 2021 - June 2022

Distinction - Thesis won 1st place in the RISE 2022 Student Competition

  • Large-Scale Data Processing and Systems Research

    Evaluated and presented research papers on many areas in large-scale data processing and cloud computing, focusing on GPU-based data processing. Profiled and replicated results from an open-source CPU/GPU stream processing research project.

  • RISC-V Vector Emulation & Security

    Built a RISC-V CPU emulator with support for the "V" vector extension, the CHERI memory safety extension, and a combination of the two. Added support for combined instructions to Clang/LLVM, tested using C++ inline assembly. The project is available online.

B.Eng in Computer Systems Engineering — University of Warwick

October 2018 - July 2021

First Class - Best overall graduating student in subject

  • High Performance CPU and GPU Programming

    Achieved best-in-class (64x) speedup on a C fluid simulation with bit-for-bit accuracy using multithreading and vectorized assembly code. Moved the fluid simulation to the GPU using CUDA, with Vulkan graphics for real-time visualization, for my final-year project. The project is available online.

  • High Performance FPGA Design

    Built a high-speed video processing filter on an FPGA using SystemVerilog with various parameters controlled in real-time from the onboard hard Arm CPU.

  • Machine Learning

    Learned basics of classic machine learning and neural networks/deep learning.

Experience

Memory & Systems Architecture Research Intern — Arm Ltd

Summers of 2019 & 2021

Simulated impact of non-volatile memory and DVM operations in gem5 using C++ and the 'Ruby' DSL.

  • Added DVM operations to existing gem5 CHI protocol model

  • Simulated impact of DVM on many-core systems

  • Presented results to key stakeholders and senior design members, including a 'CHI protocol crash course'

  • Changes upstreamed to public open source gem5 repository (available online)

Junior Programmer — Virtual Arts Ltd

September 2017 - August 2018

Developed 3D game engine in C++/Vulkan/Metal with two senior engineers.

  • Implemented Physically Based Rendering with Image Based Lighting

  • Ported Unity-based code and shaders to C++, GLSL and Metal

  • Supported development of AR racing game (Lightstream Racer) in Unity/C#

Projects

yk_gmd_io

2020 - Present

Python addon for importing and exporting the proprietary GMD file format, used by the 'Yakuza' game series, into Blender.

  • Reverse-engineered parts of the file format with the community

  • Designed algorithms to convert computer-friendly meshes to artist-friendly meshes

  • Developed beginner-friendly user experience for new modders