My graduate research area focused on high performance computing, specifically leveraging high-level programming models to target and optimize computational science applications running on parallel architectures and next-generation HPC systems.
My PhD advisor is Dr. Sunita Chandrasekaran.
The Minisweep proxy application is part of the Profugus radiation transport miniapp project and reproduces the computational pattern of the sweep kernel of the Denovo Sn radiation transport code. Denovo was one of six applications selected for early application readiness on ORNL’s Titan system, and it was used for acceptance testing of ORNL's Summit supercomputer.
This project contains our implementations of FSK, Triangle Enumeration, and Graph Assaying mentioned in the publications above. These applications are accelerated with CUDA, and they have been adapted for multi-node scaling in HPC systems using Apache Spark. We showed that using Spark in conjunction with a GPU framework can yield excellent performance on modern and future HPC systems.
This project contains codes for Black-Scholes, Monte-Carlo, Bonds, and Repo financial applications which can be run on the CPU and GPU. All original algorithms were ported from QuantLib to CUDA, OpenCL, HMPP, and OpenACC. We showed that certain algorithms were able to achieve several hundred times speedup over sequential CPU.
PolyBench is a collection of benchmarks containing static control parts. The purpose is to uniformize the execution and monitoring of kernels, typically used in past and current publications. PolyBench/ACC originated from Pouchet's original PolyBench/C suite. We added CUDA, OpenCL, OpenACC, HMPP, and OpenMP versions of the original code.
B.S. Computer Science — 2012
M.S. Computer Science — 2016