I am a Post Doc researcher at Princeton University working in Margaret Martonosi’s group. My research interests are in concurrency: programming, modeling, testing, and architecture. In particular, I am interested in exploring new heterogeneous architectures and how programming models can enable development of secure and efficient applications.
My previous research focused on GPU programming, namely modeling the semantics of fine-grained thread interactions and using these insights to provide efficient and portable synchronisation idiom implementations.
I received my PhD from the Multicore Programming Group at Imperial College London supervised by Alastair Donaldson. Previously, I worked with Ganesh Gopalakrishnan and Zvonimir Rakamaric at University of Utah. I have done internships at Microsoft Research and Nvidia.
PhD in Computer Science, 2018
Imperial College London
Advisor: Alastair Donaldson
Thesis: Device-wide Barrier Synchronisation on Graphics Processing Units
MS in Computer Science, 2014
University of Utah
Advisor: Ganesh Gopalakrishnan and Zvonimir Rakamaric
Thesis: Testing and Exposing Weak GPU Memory Models
A .gif showing the magnitude of weak memory behaviours for three litmus tests (MP, SB, LB) that appear when stressing individual memory locations of a scratchpad location. These patterns were key in finding and observing weak memory bugs in GPU applications (explained in PLDI’16 paper).
|ECOOP/ISSTA||PC for doctoral symposium||2018|
Journal reviewer for: