Systems | India




Our systems work is interdisciplinary, drawing across colleagues with expertise in programming languages, networking, distributed systems, cryptography, privacy and security. We break silos and innovate across various layers in the systems stack spanning hardware, networks, storage, and compute.

Our research projects include:

  • Co-designing storage and compute layers for big data systems, as well as scheduling, compilation and run-time layers for DNN jobs to improve end-to-end efficiency.
  • Building query optimizers that are able to handle modern query languages that incorporate not only SQL-like relational operators, but also user-defined logic expressed in full-featured programming languages.
  • Developing formal verification and design methods to build correct software, and applying these ideas to improve the robustness and security for large scale concurrent and distributed real-world systems.
  • Working at the intersection of cryptography and systems, to design new ways for secure data exchange and collaboration, and new block-chain systems at unprecedented scale and performance.
  • Tracking data lineage and provenance at scale to help ensure data privacy.

We harness the power of machine learning to use data driven techniques to better optimize not only the systems themselves, reduce costs and improve performance, but to also make significant improvements to engineering processes used to build such systems.

Some current projects


Project Sankie infuses data-driven techniques into engineering processes, development environments, and software lifecycles of large services.  Sankie’s goal is to consume data from static and dynamic features of a system, learn from them, and provide meaningful insights that can be used to make decisions for developing/reviewing, testing, deploying, monitoring, and root-causing.

Micro Co-design

The massive scale of cloud infrastructure services enables, and often necessitates, vertical co-design of the infrastructure stack by cloud providers. Micro co-design is a Minimally invasive, Cheap, and retro-fittable approach to co-design that extracts efficiency out of existing software infrastructure layers by making lightweight changes to generic software interfaces. We are exploring micro co-design in the context of four systems: Instalytics, Astra, Gandiva, and Quiver.

HAMS: Harnessing AutoMobiles for Safety

Road safety is a major public health issue, accounting for an estimated 1.35 million fatalities, and many more injuries, the world over, each year, placing it among the top 10 causes of death. In the Harnessing AutoMobiles for Safety (HAMS) project, we use low-cost sensing devices to construct a virtual harness for vehicles. The goal is to monitor the state of the driver and how the vehicle is being driven in the context of a road environment that the vehicle is in. We believe that effective monitoring leading to actionable feedback is key to promoting road safety.

EzPC (Easy Secure Multi-party Computation)

The EzPC project focusses on developing efficient and usable secure multi-party computation (MPC) protocols for the scale of machine learning algorithms. This would allow various, mutually untrusting parties, to execute ML algorithms over their private data without sharing their data with the other parties. EzPC’s MPC protocols exploit various number-theoretic techniques to construct efficient, scalable, and secure protocols. Furthermore, EzPC’s compiler automatically generates such protocols without the requiring the developer to have any crypto expertise.