About Me

Hello! I am Prathyush PV. I am currently pursuing my Masters’ in Computer Science from Indian Institute of Science. I am a second-year student here. I am primarily interested in the areas of Operating Systems and Storage Systems. Prior coming to IISc, I did my Bachelors’ from the College of Engineering, Trivandrum in Computer Science and Engineering and worked as Associate Software Engineer in Oracle.


Work Experience

Oracle
June 2016 - July 2018
  • Worked in SaaS Provisioning team.
  • Contributed to the automation of patching and setup of Oracle Public Cloud Components.
  • Worked with a team involved in the development of VTS, a software for system diagnostics of server hardware.
  • Worked mainly on Linux and Solaris operating systems and gained deeper insight into the different platforms. Hands-on experience obtained in GDB, shell, Perl and Python scripting.

Education

Indian Institute of Science, Bangalore

M.Tech. (Computer Science and Engineering)

August 2018 - Present


College of Engineering, Trivandrum

B.Tech. (Computer Science and Engineering)

August 2012 - June 2016

Projects

QoS for Distributed Storage (Ongoing MTech Project)

Providing QoS guarantees for client requests in a distributed storage solution and making sure different internal workloads like replication, flushing of journals, failure recovery complete in time without affecting the client io requests.

kLockStat

A tool to monitor lock contention in the Linux kernel. Used eBPF to dynamically trace lock functions in the kernel to get the waiting times of the locks. The collected information is displayed as graphs and tables in an HTML report for quickly identifying the locks and execution paths that create contention.

clang-cbn

clang-cbn is a tool to change the parameter passing method in C from call-by-value to call-by-name. clang-cbn is written using the LibTooling library provided by clang. The tool works on the clang AST and performs source to source rewriting of the code and outputs a transformed C program.

llvm-parallelize

llvm-parallelize is a pass in the llvm compiler. This pass will use the dependency information of IR instructions provided by llvm to find parallelizable loop nests in the code. It also suggests the loop interchanges that will help to increase the parallelism in the program.

NIDS Using Classification Algorithms

Classification network packets as malicious from the features of packets observed from a Network-based Intrusion Detection System. NSL-KDD dataset was used for the study.

VR and Cech Complexes for Uncertain Points

A graphical tool to compute and visualize VR and Cech complexes of wireless networks with nodes having location uncertainty. VR and Cech complexes are topological structures to analyze the characteristics of point clouds.