My research interests include parallel computing with Graphics Processing Units (GPU) and computer architecture. Currently, I am working on identifying and analyzing compiler- and architecture-level scalar opportunities in GPGPU applications. These opportunities are later utilized on the novel scalar-vector GPU architecture to improve performance and power efficiency.
I am also very interested in big data analytics and very large scale machine learning with GPUs. I am working with IBM Research on parallel and distributed stochastic gradient descent on GPUs.
I have spent a great deal of time on GPU architecture modeling and simulation. I was working on the modeling of a complete tessellation pipeline at Samsung Advanced Processor Lab. Also, I was a lead developer of NVIDIA Fermi/Kepler simulator on Multi2Sim simulation framework.
I am teaching CUDA programming and GPU architecture to undergraduate and graduate students at Northeastern University in Spring 2016.
I am the teaching assistant for a graduate course on Operating Systems at Northeastern University in Spring 2016.
I taught OpenCL programming and GPU architecture to undergraduate students at Northeastern University in Spring 2015.
I assisted Professor Kaeli to teach GPU programming to undergraduate students at Northeastern University in Spring 2011.