I am a graduate of Netaji Subhas University of Technology (NSUT), India, with my degree in the field of Electronics and Communication Engineering (ECE), currently working as a research intern at Microsoft Research India. Before that, I worked as a research assistant with Dr. Rahul Purandare at Program Analysis Group (PAG), IIIT-Delhi. I have a keen interest in Operating systems, Program Analysis, and compilers.
Advisor: Karthik Pattabiraman
Specialization: Error Resilient computing
Advisor: Akash Lal.
Worked on the development and benchmarking of a language - agnostic, systematic concurrency testing framework.
Advisor: Rahul Purandare.
Worked on aiding program comprehension through the extraction of object-oriented features like class relationships from X86 executables, DLLs and representing them as UML class diagrams.
Graduated from the University of Delhi - First class with distinction 🙂
Advisor: Gedare Bloom
* One of the 1268 students selected by Google worldwide to work with leading open source organizations;
* Worked on Real-Time Executive for multi-processor systems (RTEMS) and Flexible I/O tester (FIO) to develop a port and use it for benchmarking various In-memory, Flash and Block filesystems supported by RTEMS.
Specialization: Electronics and Communication Engineering.
1. Delay Injection:Objective: To come up with delay fuzzing algorithms that efficiently explores the interleaving space of concurrent programs to find data races, atomicity/order violations and deadlock bugs.
Motivation: For testing multi-threaded programs, we can either do stress testing (run a multi-threaded application with large number of worker threads and then hope for the bugs to manifest themselves) or systematic testing/model checking (systematically explore the thread interleaving space). One big implementation hurdle with systematic testing is that it requires complete control over the concurrency, synchronization primitives and all blocking system calls/3rd party APIs. So, as an alternative to SCT, we are trying to use delay fuzzing for exploring the interleaving space of the programs. However, delay fuzzing with randomly injecting delays doesn’t work well and so we need to come up with other smarter algorithms.