My current research and professional interests are developing domain-specific languages, compilers, and design automation tools for computer architecture, accelerator, and embedded systems applications.
Here are some examples of research and professional work I have done in these areas:
Summer 2021 – Present: I am currently working at a stealth AI company developing an MLIR compiler for a unique hardware architecture. I have been working on refining programming abstractions in the compiler that should lead to both better programmer productivity and performance. I am also working to improve our Compiler’s robustness.
Marvell Semiconductor:
Summer 2019 (Octeon Team): I developed a domain-specific language compiler to compile a high-level description of a finite state machine to a low-level hardware configuration for a particular functional block (On-Chip Logic Analyzer) on a chip. I also wrote accompanying user-space device drivers to configure the functional block.
Summer/Fall 2020 (SSD Firmware Team): I worked on improvements to a microcode compiler for a NAND flash controller IP block that compiles a custom domain-specific language I helped design to the microcode.
Cornell Computer Systems Lab (Zhang Research Group):
I helped develop and look into design options for a domain-specific language to create customized RISC-V microprocessor designs in Chisel Hardware Description Language. I Co-Authored a paper on this subject that was accepted to the 2019 Design Automation Conference: Paper
I also worked on an open-source tool called HeteroCL that is used for compiling a high-level language to run on heterogeneous computing platforms.