Vaastav Anand

dblp:228/5717 · DBLP profile ↗
← Back
5ranked-venue papers
3as first author
3since 2021 · last 2023
0000-0001-8502-0657ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 3 · 3 first-author · 2 since 2021Systems, architecture and hardware · 1Computer networks · 1 · 1 since 2021
YearPublicationVenuePosition
2023 The Benefit of Hindsight: Tracing Edge-Cases in Distributed Systems
Lei Zhang 0223, Vaastav Anand, Ymir Vigfusson, Jonathan Mace
NSDI3
2023 Blueprint: A Toolchain for Highly-Reconfigurable Microservice Applications
abstract
Researchers and practitioners care deeply about the performance and correctness of microservice applications. To investigate problematic application behavior and prototype potential improvements, researchers and practitioners experiment with different designs, implementations, and deployment configurations. We argue that a key requirement for microservice experimentation is the ability to rapidly reconfigure applications and to iteratively Configure, Build, and Deploy (CBD) new variants of an application that alter or improve its design. We focus on three core experimentation use-cases: (1) updating the design to use different components, libraries, and mechanisms; (2) identifying and reproducing problematic behaviors caused by different designs; and (3) prototyping and evaluating potential solutions to such behaviors. We present Blueprint, a microservice development toolchain that enables rapid CBD. With a few lines of code, users can easily reconfigure an application's design; Blueprint then generates a fully-functioning variant of the application under the new design. Blueprint is open-source and extensible; it supports a wide variety of reconfigurable design dimensions. We have ported all major microservice benchmarks to it. Our evaluation demonstrates how Blueprint simplifies experimentation use-cases with orders-of-magnitude less code change.
Vaastav Anand, Deepak Garg 0001, Antoine Kaufmann, Jonathan Mace
SOSP1
2021 Systems trivia night
abstract
The past year has been mentally and physically testing because of the COVID19 pandemic. Because of the pandemic, conferences have moved to a remote style which has really hampered the social aspect of conferences. To increase the social aspect of conferences in a remote time, we propose doing an online Trivia as an event at HotOS.
Vaastav Anand, Roberta De Viti, Jonathan Mace
HotOS1
2019 Sifter: Scalable Sampling for Distributed Traces, without Feature Engineering
abstract
Distributed tracing is a core component of cloud and datacenter systems, and provides visibility into their end-to-end runtime behavior. To reduce computational and storage overheads, most tracing frameworks do not keep all traces, but sample them uniformly at random. While effective at reducing overheads, uniform random sampling inevitably captures redundant, common-case execution traces, which are less useful for analysis and troubleshooting tasks. In this work we present Sifter, a general-purpose framework for biased trace sampling. Sifter captures qualitatively more diverse traces, by weighting sampling decisions towards edge-case code paths, infrequent request types, and anomalous events. Sifter does so by using the incoming stream of traces to build an unbiased low-dimensional model that approximates the system's common-case behavior. Sifter then biases sampling decisions towards traces that are poorly captured by this model. We have implemented Sifter, integrated it with several open-source tracing systems, and evaluate with traces from a range of open-source and production distributed systems. Our evaluation shows that Sifter effectively biases towards anomalous and outlier executions, is robust to noisy and heterogeneous traces, is efficient and scalable, and adapts to changes in workloads over time.
Pedro Henrique B. Las-Casas, Giorgi Papakerashvili, Vaastav Anand, Jonathan Mace
SoCC3
2018 Dara: hybrid model checking of distributed systems
abstract
Building correct implementations of distributed systems continues to elude us. Solutions consist of abstract modeling languages such as TLA+, PLusCal, which specify models of systems and tools like Coq, and SPIN which verify correctness of models but require considerable amount of effort, or transparent model checkers like MODIST, CMC and CHESS which suffer from state space explosion, rendering them impractical to use as they are too slow.
Vaastav Anand
ESEC/SIGSOFT FSE1