Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Vaibhav Gogte

dblp:175/0549 · DBLP profile ↗
← Back
9ranked-venue papers
4as first author
3since 2021 · last 2024
0000-0002-7382-636XORCID · corroborated

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

Systems, architecture and hardware · 8 · 3 first-author · 3 since 2021Software engineering, systems software and programming languages · 5 · 2 first-author · 1 since 2021Databases, data management, data science and information retrieval · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
9 papers
Memory systems · 58% Storage systems · 19% Cloud and datacenter computing · 11%
Software engineering, system software, and programming languages
3 papers
Concurrent programming · 91% Programming languages and type systems · 9%

Topics — the 18 heaviest of 24, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Memory systems
non-volatile memory
1.842022
Power-optimized Deployment of Key-value Stores Using Storage Class Memory · ACM Trans. Storage 2022
Improving Performance of Flash Based Key-Value Stores Using Storage Class Memory as a Volatile Memory Extension · USENIX ATC 2021
Software Wear Management for Persistent Memories · FAST 2019
Memory systems › non-volatile memory
persistent memory
1.442020
Relaxed Persist Ordering Using Strand Persistency · ISCA 2020
Software Wear Management for Persistent Memories · FAST 2019
Persistency for synchronization-free regions · PLDI 2018
Storage systems
key-value storage
1.122022
Power-optimized Deployment of Key-value Stores Using Storage Class Memory · ACM Trans. Storage 2022
Improving Performance of Flash Based Key-Value Stores Using Storage Class Memory as a Volatile Memory Extension · USENIX ATC 2021
Memory systems › non-volatile memory
storage class memory
1.122022
Power-optimized Deployment of Key-value Stores Using Storage Class Memory · ACM Trans. Storage 2022
Improving Performance of Flash Based Key-Value Stores Using Storage Class Memory as a Volatile Memory Extension · USENIX ATC 2021
Memory systems › memory management
memory allocation
0.812024
Characterizing a Memory Allocator at Warehouse Scale · ASPLOS (3) 2024
Memory systems
memory management
0.812024
Characterizing a Memory Allocator at Warehouse Scale · ASPLOS (3) 2024
Cloud and datacenter computing
warehouse-scale computing
0.812024
Characterizing a Memory Allocator at Warehouse Scale · ASPLOS (3) 2024
Memory systems › non-volatile memory › persistent memory
persistency model
0.722020
Relaxed Persist Ordering Using Strand Persistency · ISCA 2020
Language-level persistency · ISCA 2017
Concurrent programming
memory models
0.622018
Persistency for synchronization-free regions · PLDI 2018
Language-level persistency · ISCA 2017
Storage systems › key-value storage
flash-based key-value store
0.512021
Improving Performance of Flash Based Key-Value Stores Using Storage Class Memory as a Volatile Memory Extension · USENIX ATC 2021
Cloud and datacenter computing
cloud storage
0.412020
LeapIO: Efficient and Portable Virtual NVMe Storage on ARM SoCs · ASPLOS 2020
Processor architecture and microarchitecture › memory system microarchitecture
memory ordering
0.412020
Relaxed Persist Ordering Using Strand Persistency · ISCA 2020
Concurrent programming › memory models
persistency models
0.312018
Persistency for synchronization-free regions · PLDI 2018
Electronic design automation › hardware verification and test › pattern matching
regular expression matching
0.212016
HARE: Hardware accelerator for regular expressions · MICRO 2016
Hardware accelerators and domain-specific architectures › domain-specific accelerator › data processing accelerator
text processing accelerator
0.212016
HARE: Hardware accelerator for regular expressions · MICRO 2016
Performance modeling and evaluation
workload characterization
0.212024
Characterizing a Memory Allocator at Warehouse Scale · ASPLOS (3) 2024
Energy-efficient computing
power management
0.212022
Power-optimized Deployment of Key-value Stores Using Storage Class Memory · ACM Trans. Storage 2022
Reconfigurable computing and FPGAs
FPGA prototyping
0.112016
HARE: Hardware accelerator for regular expressions · MICRO 2016

Methods — techniques the papers use, named apart from their topics

workload characterization · 1.3memory consistency model · 0.6hybrid cache design · 0.6parallel character matching · 0.2hardware pipeline · 0.2
YearPublicationVenuePosition
2024 Characterizing a Memory Allocator at Warehouse Scale
abstract
Memory allocation constitutes a substantial component of warehouse-scale computation. Optimizing the memory allocator not only reduces the datacenter tax, but also improves application performance, leading to significant cost savings.
Vaibhav Gogte, Nilay Vaish, Chris Kennelly, Patrick Xia 0001, Svilen Kanev, Tipp Moseley, Christina Delimitrou, Parthasarathy Ranganathan
ASPLOS (3)2
2022 Power-optimized Deployment of Key-value Stores Using Storage Class Memory
abstract
High-performance flash-based key-value stores in data-centers utilize large amounts of DRAM to cache hot data. However, motivated by the high cost and power consumption of DRAM, server designs with lower DRAM-per-compute ratio are becoming popular. These low-cost servers enable scale-out services by reducing server workload densities. This results in improvements to overall service reliability, leading to a decrease in the total cost of ownership (TCO) for scalable workloads. Nevertheless, for key-value stores with large memory footprints, these reduced DRAM servers degrade performance due to an increase in both IO utilization and data access latency. In this scenario, a standard practice to improve performance for sharded databases is to reduce the number of shards per machine, which degrades the TCO benefits of reduced DRAM low-cost servers. In this work, we explore a practical solution to improve performance and reduce the costs and power consumption of key-value stores running on DRAM-constrained servers by using Storage Class Memories (SCM). SCMs in a DIMM form factor, although slower than DRAM, are sufficiently faster than flash when serving as a large extension to DRAM. With new technologies like Compute Express Link, we can expand the memory capacity of servers with high bandwidth and low latency connectivity with SCM. In this article, we use Intel Optane PMem 100 Series SCMs (DCPMM) in AppDirect mode to extend the available memory of our existing single-socket platform deployment of RocksDB (one of the largest key-value stores at Meta). We first designed a hybrid cache in RocksDB to harness both DRAM and SCM hierarchically. We then characterized the performance of the hybrid cache for three of the largest RocksDB use cases at Meta (ChatApp, BLOB Metadata, and Hive Cache). Our results demonstrate that we can achieve up to 80% improvement in throughput and 20% improvement in P95 latency over the existing small DRAM single-socket platform, while maintaining a 43–48% cost improvement over our large DRAM dual-socket platform. To the best of our knowledge, this is the first study of the DCPMM platform in a commercial data center.
Hiwot Kassa, Jason B. Akers, Mrinmoy Ghosh, Zhichao Cao 0002, Vaibhav Gogte, Ronald G. Dreslinski
ACM Trans. Storage5
2021 Improving Performance of Flash Based Key-Value Stores Using Storage Class Memory as a Volatile Memory Extension
Hiwot Kassa, Jason B. Akers, Mrinmoy Ghosh, Zhichao Cao 0002, Vaibhav Gogte, Ronald G. Dreslinski
USENIX ATC5
2020 LeapIO: Efficient and Portable Virtual NVMe Storage on ARM SoCs
abstract
Today's cloud storage stack is extremely resource hungry, burning 10-20% of datacenter x86 cores, a major "storage tax" that cloud providers must pay. Yet, the complex cloud storage stack is not completely offload-ready to today's IO accelerators. We present LeapIO, a new cloud storage stack that leverages ARM-based co-processors to offload complex storage services. LeapIO addresses many deployment challenges, such as hardware fungibility, software portability, virtualizability, composability, and efficiency. It uses a set of OS/software techniques and new hardware properties that provide a uni- form address space across the x86 and ARM cores and ex- pose virtual NVMe storage to unmodified guest VMs, at a performance that is competitive with bare-metal servers.
Huaicheng Li, Mingzhe Hao, Stanko Novakovic, Vaibhav Gogte, Sriram Govindan, Dan R. K. Ports, Irene Zhang, Ricardo Bianchini, Haryadi S. Gunawi, Anirudh Badam
ASPLOS4
2020 Relaxed Persist Ordering Using Strand Persistency
abstract
Emerging persistent memory (PM) technologies promise the performance of DRAM with the durability of Flash. Several language-level persistency models have emerged recently to aid programming recoverable data structures in PM. Unfortunately, these persistency models are built upon hardware primitives that impose stricter ordering constraints on PM operations than the persistency models require. Alternative solutions use fixed and inflexible hardware logging techniques to relax ordering constraints on PM operations, but do not readily apply to general synchronization primitives employed by language-level persistency models. Instead, we propose StrandWeaver, a hardware strand persistency model, to minimally constrain ordering on PM operations. StrandWeaver manages PM order within a strand, a logically independent sequence of operations within a thread. PM operations that lie on separate strands are unordered and may drain concurrently to PM. StrandWeaver implements primitives under strand persistency to allow programmers to improve concurrency and relax ordering constraints on updates as they drain to PM. Furthermore, we design mechanisms that map persistency semantics in high-level language persistency models to the primitives implemented by StrandWeaver. We demonstrate that StrandWeaver can enable greater concurrency of PM operations than existing ISA-level ordering mechanisms, improving performance by up to $1.97 \times (1.45 \times avg.)$.
Vaibhav Gogte, Stephan Diestelhorst, Peter M. Chen, Satish Narayanasamy, Thomas F. Wenisch
ISCA1
2019 Software Wear Management for Persistent Memories
Vaibhav Gogte, Stephan Diestelhorst, Aasheesh Kolli, Peter M. Chen, Satish Narayanasamy, Thomas F. Wenisch
FAST1
2018 Persistency for synchronization-free regions
abstract
Nascent persistent memory (PM) technologies promise the performance of DRAM with the durability of disk, but how best to integrate them into programming systems remains an open question. Recent work extends language memory models with a persistency model prescribing semantics for updates to PM. These semantics enable programmers to design data structures in PM that are accessed like memory and yet are recoverable upon crash or failure. Alas, we find the semantics and performance of existing approaches unsatisfying. Existing approaches require high-overhead mechanisms, are restricted to certain synchronization constructs, provide incomplete semantics, and/or may recover to state that cannot arise in fault-free execution.
Vaibhav Gogte, Stephan Diestelhorst, Satish Narayanasamy, Peter M. Chen, Thomas F. Wenisch
PLDI1
2017 Language-level persistency
abstract
The commercial release of byte-addressable persistent memories, such as Intel/Micron 3D XPoint memory, is imminent. Ongoing research has sought mechanisms to allow programmers to implement recoverable data structures in these new main memories. Ensuring recoverability requires programmer control of the order of persistent stores; recent work proposes persistency models as an extension to memory consistency to specify such ordering. Prior work has considered persistency models at the abstraction of the instruction set architecture. Instead, we argue for extending the language-level memory model to provide guarantees on the order of persistent writes.
Aasheesh Kolli, Vaibhav Gogte, Ali G. Saidi, Stephan Diestelhorst, Peter M. Chen, Satish Narayanasamy, Thomas F. Wenisch
ISCA2
2016 HARE: Hardware accelerator for regular expressions
abstract
Rapidly processing text data is critical for many technical and business applications. Traditional software-based tools for processing large text corpora use memory bandwidth inefficiently due to software overheads and thus fall far short of peak scan rates possible on modern memory systems. Prior hardware designs generally target I/O rather than memory bandwidth. In this paper, we present HARE, a hardware accelerator for matching regular expressions against large in-memory logs. HARE comprises a stall-free hardware pipeline that scans input data at a fixed rate, examining multiple characters from a single input stream in parallel in a single accelerator clock cycle. We describe a 1GHz 32-character-wide HARE design targeting ASIC implementation that processes data at 32 GB/s — matching modern memory bandwidths. This ASIC design outperforms software solutions by as much as two orders of magnitude. We further demonstrate a scaled-down FPGA proof-of-concept that operates at 100MHz with 4-wide parallelism (400 MB/s). Even at this reduced rate, the prototype outperforms grep by 1.5–20x on commonly used regular expressions.
Vaibhav Gogte, Aasheesh Kolli, Michael J. Cafarella, Loris D'Antoni, Thomas F. Wenisch
MICRO1