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.
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.
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.