Projects

Applied Machine Learning


ML and Society: Teaching Tools

I learned how to implement socially equitable ML and better understand the propagative effect of ML on society as a part of the course CSE 540: ML and Society. I worked on enhancing the course instructional materials as well.

Distracting Message Identification For Instant Messaging Platforms

Worked under Dr. Saad Yunus Sait on this undergraduate research project. Built a preprocessing pipeline to consolidate and process messages from groups. Reconstructed models adapted from existing research to perform context-based filtering of distracting messages. The findings of this work are being revised for a journal submission.

Parallel and Disrtibuted Programming

SCoOL - Scalable Common Optimization Library

Worked under Prof. Jaric Zola for what would later be my Masters capstone project. Designed and implementing a general purpose runtime executor for search space exploration and optimisation problems (NP-hard) by adapting the bulk synchronous parallel (BSP) model of programming. The executor was built using the parallel runtime framework - HPX. The PR for this feature can be viewed here.

Distributed Key Value Store

Developed a fault-tolerant distributed key value store by implementing the RAFT consensus protocol. The data was made accessible via REST endpoints and the frontend was designed using HTML and CSS.

Gaussian KDE: GPU Implementation

Parallel implementation of gaussian kernel density estimation computation for a set of floating point numbers using NVIDIA CUDA.

Rooting Graph Nodes: Using Spark

Finds the roots of each node in a graph of connected components using Apache Spark. Distributed implementation tested on UB’s HPC.

Distributed Sorting: Using Open MPI

Implements count sort on a range of short integers distributed across a set of processors in a cluster using Open MPI. Implemented on UB’s HPC.

Blockchain

Buffalo Farmers Marketplace

A decentralized marketplace to facilitate transparent interactions to buy produce from your local farmers market. The frontend was built using HTML, JavaScript and CSS.

Bots and Automation

TARS : TA Assistance Bot

Integrated the slack API and Google calendar API to get TA office hours posted in the workplace via TARS. Implemented periodic scheduling using cron jobs and shell scripting.