Demo Data from EDBT 2026 / reviewers in the wild / expert
Aleksandar Dragojevic
dblp:94/7061
· DBLP profile ↗
18ranked-venue papers
7as first author
3since 2021 · last 2025
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 10 · 4 first-author · 2 since 2021Software engineering, systems software and programming languages · 5 · 2 first-authorDatabases, data management, data science and information retrieval · 3 · 1 since 2021Computer networks · 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
12 papers |
Distributed systems · 55% Storage systems · 15% Parallel and multicore computing · 12% | |
| Software engineering, system software, and programming languages
5 papers |
Concurrent programming · 87% Operating systems · 9% Programming languages and type systems · 2% | |
| Databases, data mining, and information retrieval
1 paper |
Transaction processing and concurrency control · 100% |
Topics — the 30 heaviest of 40, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Distributed systems
replication |
1.7 | 3 | 2025 | The LAW theorem: Local Reads and Linearizable Asynchronous Replication · Proc. VLDB Endow. 2025 Hermes: A Fast, Fault-Tolerant and Linearizable Replication Protocol · ASPLOS 2020 Fast General Distributed Transactions with Opacity · SIGMOD Conference 2019 |
Storage systems
key-value storage |
0.8 | 1 | 2024 | Honeycomb: Ordered Key-Value Store Acceleration on an FPGA-Based SmartNIC · IEEE Trans. Computers 2024 |
Distributed systems › distributed database
distributed transactions |
0.7 | 2 | 2021 | Zeus: locality-aware distributed transactions · EuroSys 2021 No compromises: distributed transactions with consistency, availability, and performance · SOSP 2015 |
Storage systems › storage architecture
in-memory storage |
0.5 | 1 | 2021 | Zeus: locality-aware distributed transactions · EuroSys 2021 |
Distributed systems
consensus |
0.4 | 1 | 2020 | Hermes: A Fast, Fault-Tolerant and Linearizable Replication Protocol · ASPLOS 2020 |
Concurrent programming
transactional memory |
0.4 | 4 | 2011 | On the power of hardware transactional memory to simplify memory management · PODC 2011 Leveraging parallel nesting in transactional memory · PPoPP 2010 Preventing versus curing: avoiding conflicts in transactional memories · PODC 2009 |
Transaction processing and concurrency control
distributed transaction processing |
0.4 | 1 | 2019 | Fast General Distributed Transactions with Opacity · SIGMOD Conference 2019 |
Transaction processing and concurrency control › serializability
strict serializability |
0.4 | 1 | 2019 | Fast General Distributed Transactions with Opacity · SIGMOD Conference 2019 |
Distributed systems
fault tolerance |
0.4 | 1 | 2019 | Fast General Distributed Transactions with Opacity · SIGMOD Conference 2019 |
Distributed systems › fault tolerance
high availability |
0.4 | 1 | 2019 | Fast General Distributed Transactions with Opacity · SIGMOD Conference 2019 |
Distributed systems › fault tolerance
transparent fault tolerance |
0.4 | 1 | 2019 | Fast General Distributed Transactions with Opacity · SIGMOD Conference 2019 |
Concurrent programming
concurrent data structures |
0.3 | 1 | 2018 | Log-Free Concurrent Data Structures · USENIX ATC 2018 |
Parallel and multicore computing
concurrent data structures |
0.3 | 1 | 2018 | Log-Free Concurrent Data Structures · USENIX ATC 2018 |
Memory systems › non-volatile memory
log-free data structures |
0.3 | 1 | 2018 | Log-Free Concurrent Data Structures · USENIX ATC 2018 |
Performance modeling and evaluation › performance prediction
scalability prediction |
0.2 | 1 | 2016 | ESTIMA: extrapolating scalability of in-memory applications · PPoPP 2016 |
Hardware accelerators and domain-specific architectures › network accelerator
SmartNIC |
0.2 | 1 | 2024 | Honeycomb: Ordered Key-Value Store Acceleration on an FPGA-Based SmartNIC · IEEE Trans. Computers 2024 |
Interconnection networks and networks-on-chip › remote direct memory access
RDMA-based replication |
0.2 | 1 | 2015 | No compromises: distributed transactions with consistency, availability, and performance · SOSP 2015 |
Distributed systems › replication › replication and fault tolerance
replication and recovery |
0.2 | 1 | 2015 | No compromises: distributed transactions with consistency, availability, and performance · SOSP 2015 |
Memory systems
remote memory |
0.2 | 1 | 2014 | FaRM: Fast Remote Memory · NSDI 2014 |
Distributed systems
distributed coordination |
0.1 | 1 | 2021 | Zeus: locality-aware distributed transactions · EuroSys 2021 |
Distributed systems › distributed database
sharding |
0.1 | 1 | 2021 | Zeus: locality-aware distributed transactions · EuroSys 2021 |
Parallel and multicore computing
concurrent programming |
0.1 | 1 | 2012 | STM in the small: trading generality for performance in software transactional memory · EuroSys 2012 |
Parallel and multicore computing › transactional memory
software transactional memory |
0.1 | 1 | 2012 | STM in the small: trading generality for performance in software transactional memory · EuroSys 2012 |
Concurrent programming › transactional memory
hardware transactional memory |
0.1 | 1 | 2011 | On the power of hardware transactional memory to simplify memory management · PODC 2011 |
Operating systems › resource management
memory management |
0.1 | 1 | 2011 | On the power of hardware transactional memory to simplify memory management · PODC 2011 |
Concurrent programming
memory reclamation |
0.1 | 1 | 2011 | On the power of hardware transactional memory to simplify memory management · PODC 2011 |
Concurrent programming › transactional memory
nested transactions |
0.1 | 1 | 2010 | Leveraging parallel nesting in transactional memory · PPoPP 2010 |
Parallel and multicore computing › parallelization strategies
nested parallelism |
0.1 | 1 | 2010 | Leveraging parallel nesting in transactional memory · PPoPP 2010 |
Parallel and multicore computing
parallel programming models |
0.1 | 1 | 2010 | Leveraging parallel nesting in transactional memory · PPoPP 2010 |
Concurrent programming › transactional memory
software transactional memory |
0.1 | 1 | 2009 | Stretching transactional memory · PLDI 2009 |
Methods — techniques the papers use, named apart from their topics
wait-free read · 0.8timestamp ordering · 0.8out-of-order execution · 0.8failover protocol · 0.8clock synchronization · 0.8caching · 0.8distributed transactional protocol · 0.5replication protocol design · 0.4FaRM · 0.4RDMA · 0.2dynamic collect · 0.1transactional memory · 0.1performance evaluation · 0.1contention manager · 0.1access set prediction · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | The LAW theorem: Local Reads and Linearizable Asynchronous ReplicationabstractDistributed datastores underpin highly concurrent, read-intensive applications, ensuring consistency, availability, and performance. They use crash-tolerant protocols to replicate data and endure replica server crashes. To ensure safety and meet the performance demands, replication must support high-throughput, strongly consistent (i.e., linearizable) reads without assuming any synchrony. However, existing protocols either 1 relax consistency, or provide linearizable reads that are 2 fully asynchronous but remote (involving multiple replicas), or 3 local but require synchrony. This work explores the tradeoffs between consistency, asynchrony, and performance in crash-tolerant protocols, and proves that in linearizable asynchronous read/write registers tolerating a single crash, no reads can be local. Building on this, we introduce almost-local reads (ALRs), a new abstraction that ensures crash tolerance and linearizability under asynchrony. While ALRs have slightly higher latency than local reads, they remain lightweight, with computation and network costs close to single-node reads. We present two simple yet effective ALR schemes that enhance protocols across all three categories. For protocols with local reads, ALRs address consistency or synchrony issues with minimal throughput loss. In asynchronous linearizable protocols, they improve performance without compromises. Our evaluation shows that ALR-enhanced ZAB and Hermes achieve within 2% and 5% of their original throughput in 95% reads while ensuring linearizability under asynchrony. On Raft, ALRs deliver over 2.5x higher throughput without compromising consistency or asynchrony. Emmanouil Giortamis, Antonios Katsarakis, Vasilis Gavrielatos, Pramod Bhatotia, Aleksandar Dragojevic, Boris Grot, Vijay Nagarajan, Panagiota Fatourou |
Proc. VLDB Endow. | 5 |
| 2024 | Honeycomb: Ordered Key-Value Store Acceleration on an FPGA-Based SmartNICabstractIn-memory ordered key-value stores are an important building block in modern distributed applications. We present Honeycomb, a hybrid software-hardware system for accelerating read-dominated workloads on ordered key-value stores that provides linearizability for all operations including scans. Honeycomb stores a B-Tree in host memory. It executesput,updateanddeleteon a CPU. At the same time, it offloadsscanandgetonto an FPGA-based SmartNIC. This approach enables large stores and simplifies the FPGA implementation but raises the challenge of data access and synchronization across the slow PCIe bus. We describe how Honeycomb overcomes this challenge with careful data structure design, caching, request parallelism with out-of-order execution, wait-free read operations, and fast synchronization between the CPU and the FPGA. For read-heavy YCSB workloads, Honeycomb increases the throughput of a state-of-the-art ordered key-value store by at least$1.8\times$. For scan-heavy workloads inspired by cloud storage, Honeycomb increases the throughput by more than$2\times$. The cost-performance, which is more important for large-scale deployments, is improved by at least$1.5\times$on these workloads. Aleksandar Dragojevic, Shane T. Fleming, Antonios Katsarakis, Dario Korolija, Igor Zablotchi, Ho-Cheung Ng, Anuj Kalia, Miguel Castro 0001 |
IEEE Trans. Computers | 2 |
| 2021 | Zeus: locality-aware distributed transactionsabstractState-of-the-art distributed in-memory datastores (FaRM, FaSST, DrTM) provide strongly-consistent distributed transactions with high performance and availability. Transactions in those systems are fully general; they can atomically manipulate any set of objects in the store, regardless of their location. To achieve this, these systems use complex distributed transactional protocols. Meanwhile, many workloads have a high degree of locality. For such workloads, distributed transactions are an overkill as most operations only access objects located on the same server - if sharded appropriately. Antonios Katsarakis, Yijun Ma, Zhaowei Tan, Andrew Bainbridge, Matthew Balkwill, Aleksandar Dragojevic, Boris Grot, Bozidar Radunovic, Yongguang Zhang |
EuroSys | 6 |
| 2020 | Hermes: A Fast, Fault-Tolerant and Linearizable Replication ProtocolabstractToday's datacenter applications are underpinned by datastores that are responsible for providing availability, consistency, and performance. For high availability in the presence of failures, these datastores replicate data across several nodes. This is accomplished with the help of a reliable replication protocol that is responsible for maintaining the replicas strongly-consistent even when faults occur. Strong consistency is preferred to weaker consistency models that cannot guarantee an intuitive behavior for the clients. Furthermore, to accommodate high demand at real-time latencies, datastores must deliver high throughput and low latency. Antonios Katsarakis, Vasilis Gavrielatos, M. R. Siavash Katebzadeh, Arpit Joshi, Aleksandar Dragojevic, Boris Grot, Vijay Nagarajan |
ASPLOS | 5 |
| 2019 | Fast General Distributed Transactions with OpacityabstractTransactions can simplify distributed applications by hiding data distribution, concurrency, and failures from the application developer. Ideally the developer would see the abstraction of a single large machine that runs transactions sequentially and never fails. This requires the transactional subsystem to provide opacity (strict serializability for both committed and aborted transactions), as well as transparent fault tolerance with high availability. As even the best abstractions are unlikely to be used if they perform poorly, the system must also provide high performance. Existing distributed transactional designs either weaken this abstraction or are not designed for the best performance within a data center. This paper extends the design of FaRM --- which provides strict serializability only for committed transactions --- to provide opacity while maintaining FaRM's high throughput, low latency, and high availability within a modern data center. It uses timestamp ordering based on real time with clocks synchronized to within tens of microseconds across a cluster, and a failover protocol to ensure correctness across clock master failures. FaRM with opacity can commit 5.4 million neworder transactions per second when running the TPC-C transaction mix on 90 machines with 3-way replication. Alex Shamis, Matthew Renzelmann, Stanko Novakovic, Georgios Chatzopoulos, Aleksandar Dragojevic, Dushyanth Narayanan, Miguel Castro 0001 |
SIGMOD Conference | 5 |
| 2018 | SPADE: Tuning scale-out OLTP on modern RDMA clusters
Georgios Chatzopoulos, Aleksandar Dragojevic, Rachid Guerraoui |
Middleware | 2 |
| 2018 | Log-Free Concurrent Data Structures
Tudor David, Aleksandar Dragojevic, Rachid Guerraoui, Igor Zablotchi |
USENIX ATC | 2 |
| 2017 | Self-managed collections: Off-heap memory management for scalable query-dominated collectionsabstractExplosive growth in DRAM capacities and the emergence of language-integrated query enable a new class of managed applications that perform complex query processing on huge volumes of data stored as collections of objects in the memory space of the application. While more flexible in terms of schema design and application development, this approach typically experiences sub-par query execution performance when compared to specialized systems like DBMS. To address this issue, we propose self-managed collections, which utilize off-heap memory management and dynamic query compilation to improve the performance of querying managed data through language-integrated query. We evaluate self-managed collections using both microbenchmarks and enumeration-heavy queries from the TPC-H business intelligence benchmark. Our results show that self-managed collections outperform ordinary managed collections in both query processing and memory management by up to an order of magnitude and even outperform an optimized in memory columnar database system for the vast majority of queries. Fabian Nagel, Gavin M. Bierman, Aleksandar Dragojevic, Stratis Viglas |
EDBT | 3 |
| 2016 | ESTIMA: extrapolating scalability of in-memory applicationsabstractThis paper presents ESTIMA, an easy-to-use tool for extrapolating the scalability of in-memory applications. ESTIMA is designed to perform a simple, yet important task: given the performance of an application on a small machine with a handful of cores, ESTIMA extrapolates its scalability to a larger machine with more cores, while requiring minimum input from the user. The key idea underlying ESTIMA is the use of stalled cycles (e.g. cycles that the processor spends waiting for various events, such as cache misses or waiting on a lock). ESTIMA measures stalled cycles on a few cores and extrapolates them to more cores, estimating the amount of waiting in the system. ESTIMA can be effectively used to predict the scalability of in-memory applications. For instance, using measurements of memcached and SQLite on a desktop machine, we obtain accurate predictions of their scalability on a server. Our extensive evaluation on a large number of in-memory benchmarks shows that ESTIMA has generally low prediction errors. Georgios Chatzopoulos, Aleksandar Dragojevic, Rachid Guerraoui |
PPoPP | 2 |
| 2015 | No compromises: distributed transactions with consistency, availability, and performanceabstractTransactions with strong consistency and high availability simplify building and reasoning about distributed systems. However, previous implementations performed poorly. This forced system designers to avoid transactions completely, to weaken consistency guarantees, or to provide single-machine transactions that require programmers to partition their data. In this paper, we show that there is no need to compromise in modern data centers. We show that a main memory distributed computing platform called FaRM can provide distributed transactions with strict serializability, high performance, durability, and high availability. FaRM achieves a peak throughput of 140 million TATP transactions per second on 90 machines with a 4.9 TB database, and it recovers from a failure in less than 50 ms. Key to achieving these results was the design of new transaction, replication, and recovery protocols from first principles to leverage commodity networks with RDMA and a new, inexpensive approach to providing non-volatile DRAM. Aleksandar Dragojevic, Dushyanth Narayanan, Ed Nightingale, Matthew Renzelmann, Alex Shamis, Anirudh Badam, Miguel Castro 0001 |
SOSP | 1 |
| 2014 | FaRM: Fast Remote Memory
Aleksandar Dragojevic, Dushyanth Narayanan, Miguel Castro 0001, Orion Hodson |
NSDI | 1 |
| 2012 | STM in the small: trading generality for performance in software transactional memoryabstractData structures implemented using software transactional memory (STM) have a reputation for being much slower than data structures implemented directly from low-level primitives such as atomic compare-and-swap (CAS). In this paper we present a specialized STM system (SpecTM) that allows the program to express additional knowledge about the particular operations being performed by transactions e.g., using a separate API to write transactions that access small, fixed, numbers of memory locations. We show that data structures implemented using SpecTM offer essentially the same performance and scalability as implementations built directly from CAS. We present results using hash tables and skip lists on machines with up to 8 sockets and up to 128 hardware threads. Specialized transactions can be mixed with normal transactions, allowing fast-path operations to be specialized for greater performance, while allowing less common cases to be expressed using normal transactions for simplicity. We believe that SpecTM provides a "sweet spot" for expert programmers developing scalable data structures. Aleksandar Dragojevic, Tim Harris 0001 |
EuroSys | 1 |
| 2012 | Unifying Thread-Level Speculation and Transactional Memory
João Barreto 0001, Aleksandar Dragojevic, Paulo Ferreira 0001, Ricardo Filipe, Rachid Guerraoui |
Middleware | 2 |
| 2011 | On the power of hardware transactional memory to simplify memory managementabstractDynamic memory management is a significant source of complexity in the design and implementation of practical concurrent data structures. We study how hardware transactional memory (HTM) can be used to simplify and streamline memory reclamation for such data structures. We propose and evaluate several new HTMbased algorithms for the “Dynamic Collect ” problem that lies at the heart of many modern memory management algorithms. We demonstrate that HTM enables simpler and faster solutions, with better memory reclamation properties, than prior approaches. Despite recent theoretical arguments that HTM provides no worst-case advantages, our results support the claim that HTM can provide significantly better common-case performance, as well as reduced conceptual complexity. Aleksandar Dragojevic, Maurice Herlihy, Yossi Lev, Mark Moir |
PODC | 1 |
| 2010 | Leveraging parallel nesting in transactional memoryabstractExploiting the emerging reality of affordable multi-core architectures goes through providing programmers with simple abstractions that would enable them to easily turn their sequential programs into concurrent ones that expose as much parallelism as possible. While transactional memory promises to make concurrent programming easy to a wide programmer community, current implementations either disallow nested transactions to run in parallel or do not scale to arbitrary parallel nesting depths. This is an important obstacle to the central goal of transactional memory, as programmers can only start parallel threads in restricted parts of their code. João Barreto 0001, Aleksandar Dragojevic, Paulo Ferreira 0001, Rachid Guerraoui, Michal Kapalka |
PPoPP | 2 |
| 2009 | Stretching transactional memoryabstractTransactional memory (TM) is an appealing abstraction for programming multi-core systems. Potential target applications for TM, such as business software and video games, are likely to involve complex data structures and large transactions, requiring specific software solutions (STM). So far, however, STMs have been mainly evaluated and optimized for smaller scale benchmarks. Aleksandar Dragojevic, Rachid Guerraoui, Michal Kapalka |
PLDI | 1 |
| 2009 | Preventing versus curing: avoiding conflicts in transactional memoriesabstractTransactional memories are typically speculative and rely on contention managers to cure conflicts. This paper explores a complementary approach that prevents conflicts by scheduling transactions according to predictions on their access sets. Aleksandar Dragojevic, Rachid Guerraoui, Anmol V. Singh, Vasu Singh |
PODC | 1 |
| 2009 | Optimizing transactions for captured memoryabstractIn this paper, we identify transaction-local memory as a major source of overhead from compiler instrumentation in software transactional memory (STM). Transaction-local memory is memory allocated inside a transaction, which cannot escape (i.e., is captured by) the allocating transaction. Accesses to such memory do not require calls to STM memory access functions (i.e., STM barriers). A compiler unaware of that may translate accesses to captured memory into expensive STM barriers. This presents us opportunities to improve STM performance. Our measurements with the STAMP benchmark suite (version 0.9.9) revealed that as many as 60% of the STM barriers generated by our baseline compiler access captured memory, including 90% of the write barriers and 45% of the read barriers. We propose runtime and compiler optimizations to elide STM barriers to captured memory. These techniques can also elide barriers for accesses to thread-local and read-only data. We implemented those optimizations in the Intel C++ STM compiler. Our experiments with the STAMP benchmark suite on a Intel Dunnington system (with 24 cores in a 4-node SMP system) show that these optimizations can improve performance by to 18% at 16 threads. Aleksandar Dragojevic, Ali-Reza Adl-Tabatabai |
SPAA | 1 |