Title Image

I am a computer science researcher working within Systems and Networking. My current research is focused on the following areas:

  • Utilizing recent advances such as RDMA and Programmable Switches (P4) to accelerate data center system performance

  • Improving techniques for Data Deduplication with encrypted data

  • Analyzing the impact of Networking Failures on large-scale software systems

I am enrolled in the PhD program in Computer Science at the University of Waterloo as a part of the Waterloo Advanced Systems Lab (WASL). My supervisor is Prof. Samer Al-Kiswany. Prior to this, I was enrolled in the research-based master's program at Waterloo from 2019-2021 and I have been a Design Engineer at Advanced Micro Devices (AMD) from 2017-2019.

I received my master's degree in Computer Science from the University of Waterloo in 2021, working under the supervision of Prof. Samer Al-Kiswany. I received my undergraduate degree in Computer Science from PES University in Bangalore, India and have been supervised by Dr. K.V Subramaniam and Dr. Phalachandra. I was a research assistant at CCBD during my time there.

I have experience developing systems in numerous languages such as C, C++, Java, JavaScript and Python along with limited experience in Solidity.

Publications


CASPR: Connectivity-Aware Scheduling for Partition Resilience [PDF]
     International Symposium on Reliable Distributed Systems (SRDS), 2023
     Best Paper Award Nominee

         Sara Qunaibi, Sreeharsha Udayashankar and Samer Al-Kiswany


DedupBench - A Benchmarking Tool for Data Chunking Techniques [Paper] [PDF]
     IEEE Canadian Conference on Electrical and Computer Engineering (CCECE), 2023

         Alan Liu, Abdelrahman Ba'ba', Sreeharsha Udayashankar and Samer Al-Kiswany


Partial Network Partitioning [Paper] [PDF]
     ACM Transactions on Computer Systems (TOCS), 2022

        Basil Alkhatib, Sreeharsha Udayashankar, Sara Qunaibi, Ahmed Alquraan, Mohammed Alfatafta, Wael Al-Manasrah, Alex Depoutovitch and Samer Al-Kiswany


Orcbench: A Representative Serverless Benchmark [Paper] [PDF]
     IEEE International Conference on Cloud Computing (CLOUD), 2022

         Ryan Hancock, Sreeharsha Udayashankar, Ali Mashtizadeh and Samer Al-Kiswany


Benchmarking Diferentially Private Algorithms [PDF]
     Theory and Practice of Differential Privacy (TPDP), 2021

         Huiyi Ning, Sreeharsha Udayashankar, Sara Qunaibi, Karl Knopf and Xi He


In-Network Scheduling for Real-Time Analytics [Thesis]
     MMath Thesis, 2021

         Sreeharsha Udayashankar


Falcon - Low Latency Network Accelerated Scheduling [Paper] [PDF]
     P4 Workshop in Europe (EuroP4), 2020

         Ibrahim Kettaneh, Sreeharsha Udayashankar, Ashraf Abdel-Hadi, Robin Grosman and Samer Al-Kiswany


Gaming Modeling and Projections - The Impact of CPU Performance
     AMD Asia Technical Conference (AATC), 2019

         Sreeharsha Udayashankar, Saumya Chandra and Don Cherepacha


Patents


System and method of deduplication for encrypted content
     Best Patent Award for 2023 - Acronis

        Sreeharsha Udayashankar, Abdelrahman Ba'ba', Samer Al-Kiswany, Serg Bell and Stanislav Protasov


Side Projects

In my spare time, I develop applications with a variety of languages and tools. Some of these projects and their source code are showcased in this section.

MuZero on Super Mario Bros

I have attempted to evaluate MuZero, an algorithm for deep learning published by Google Deepmind in 2019, against Deep-Q-Networks with Double-Q-Learning, the state of the art model free algorithm. I have compared their performance using the game Super Mario Bros. The system architectural diagram has been shown below:

Clips of an agent trained using MuZero playing the game can be found below:

Training GIF 1 Training GIF 2
MuZero_GIF_1 MuZero_GIF_2
Training GIF 3 Training GIF 4
MuZero_GIF_3 MuZero_GIF_4

Details

The Crypto Lottery

This project consists of an Ethereum-based back end and a front end powered by React.js. The objective of this project was to build a lottery application where users register using Ether and stand a chance to win the Jackpot.

The Jackpot is the prize pool consisting of contributions from all participants with the winner being chosen at regular time intervals. A participants chances also increase with the Ether they contribute up to a certain limit.

Source Code:

Python Game Collection

I have developed a few games in Python 3.6 using the PyGame library. Some of them are showcased below.

Snake Memory Game
Snake_Game Emoji Memory Game Peek

Source Code

Hobbies

I enjoy running, cycling and hiking in my spare time. Here are a few images I've shot using my phone on some of my hikes:

Canadian Hiking

Sunshine Meadows - Banff National Park Peyto Lake - Banff National Park
Flowerpot Island - Bruce Peninsula National Park The Grotto - Bruce Peninsula National Park
Flowerpot Island (Ontario) The Grotto (Ontario)
Centennial Ridges - Algonquin Provincial Park Track and Tower - Algonquin Provincial Park

Indian Hiking

BR Hills - Karnataka Tadiandamol - Karnataka