Demo Data from VLDB 2026 / reviewers in the wild / expert
Ricardo J. Dias
dblp:47/7413
· DBLP profile ↗
11ranked-venue papers
6as first author
0since 2021 · last 2019
0000-0002-6887-2361ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 5 · 3 first-authorSoftware engineering, systems software and programming languages · 2 · 2 first-authorDatabases, data management, data science and information retrieval · 2 · 1 first-authorSecurity and privacy · 1Human-computer interaction and ubiquitous computing · 1Applied, interdisciplinary, general and emerging computing · 1
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
1 paper |
Distributed systems · 56% Storage systems · 22% Memory systems · 22% | |
| Software engineering, system software, and programming languages
2 papers |
Concurrent programming · 95% Compilers and program optimization · 5% | |
| Databases, data mining, and information retrieval
1 paper |
Information retrieval · 100% |
Topics — the 14 heaviest of 14, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Concurrent programming
transactional memory |
0.4 | 2 | 2016 | Pot: Deterministic Transactional Execution · ACM Trans. Archit. Code Optim. 2016 Efficient Correction of Anomalies in Snapshot Isolation Transactions · ACM Trans. Archit. Code Optim. 2014 |
Distributed systems
concurrency control |
0.3 | 1 | 2017 | Blotter: Low Latency Transactions for Geo-Replicated Storage · WWW 2017 |
Distributed systems › replication
geo-replication |
0.3 | 1 | 2017 | Blotter: Low Latency Transactions for Geo-Replicated Storage · WWW 2017 |
Memory systems
snapshot isolation |
0.3 | 1 | 2017 | Blotter: Low Latency Transactions for Geo-Replicated Storage · WWW 2017 |
Storage systems
transactional consistency |
0.3 | 1 | 2017 | Blotter: Low Latency Transactions for Geo-Replicated Storage · WWW 2017 |
Concurrent programming
concurrency control |
0.2 | 1 | 2016 | Pot: Deterministic Transactional Execution · ACM Trans. Archit. Code Optim. 2016 |
Concurrent programming
deterministic execution |
0.2 | 1 | 2016 | Pot: Deterministic Transactional Execution · ACM Trans. Archit. Code Optim. 2016 |
Distributed systems
consensus |
0.1 | 1 | 2017 | Blotter: Low Latency Transactions for Geo-Replicated Storage · WWW 2017 |
Distributed systems › consensus
paxos |
0.1 | 1 | 2017 | Blotter: Low Latency Transactions for Geo-Replicated Storage · WWW 2017 |
Concurrent programming › transactional memory
software transactional memory |
0.1 | 1 | 2016 | Pot: Deterministic Transactional Execution · ACM Trans. Archit. Code Optim. 2016 |
Information retrieval
multimedia analysis and retrieval |
0.1 | 1 | 2007 | Mobile interface of the memoria project · SIGIR 2007 |
Information retrieval
multimodal retrieval |
0.1 | 1 | 2007 | Mobile interface of the memoria project · SIGIR 2007 |
Interaction techniques and input
mobile interaction |
0.1 | 1 | 2007 | Mobile interface of the memoria project · SIGIR 2007 |
Compilers and program optimization › dependence analysis
dependence graph analysis |
0.1 | 1 | 2014 | Efficient Correction of Anomalies in Snapshot Isolation Transactions · ACM Trans. Archit. Code Optim. 2014 |
Methods — techniques the papers use, named apart from their topics
paxos · 0.3non-monotonic snapshot isolation · 0.3concurrency control protocol · 0.2graph dependency analysis · 0.2dynamic code analysis · 0.2audio annotation · 0.1GPS metadata annotation · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | A More Consistent Understanding of ConsistencyabstractRecent storage systems trade strong consistency for performance, availability, and scalability. However, this makes it hard to understand the semantics that the storage system provides, and also makes the design and implementation of the storage system itself more error-prone. This paper proposes a comprehensive solution to these problems. In particular, we propose a specification language named ConSpec, which enables the formalization of different consistency semantics that a storage system may provide, using a uniform syntax that is independent of the design and implementation of the target storage system. We use ConSpec to revisit several existing models in light of a common way to define and compare them. Furthermore, we generalize the CAP theorem, whose original formulation only considered linearizability, to precisely define the class of consistency definitions that can and cannot be implemented in a highly-available, partition-tolerant way. Finally, we present the design and implementation of a new consistency checker that takes a trace from a storage system (e.g., the output of a test suite) and validates whether it meets any consistency semantics defined using ConSpec. The evaluation of our consistency checker shows that it is able to verify the correctness of long traces in a reasonable time. Subhajit Sidhanta, Ricardo J. Dias, Rodrigo Rodrigues 0001 |
SRDS | 2 |
| 2017 | Verifying Concurrent Programs Using ContractsabstractThe central notion of this paper is that of contracts for concurrency, allowing one to capture the expected atomicity of sequences of method or service calls in a concurrent program. The contracts may be either extracted automatically from the source code, or provided by developers of libraries or software modules to reflect their expected usage in a concurrent setting. We start by extending the so-far considered notion of contracts for concurrency in several ways, improving their expressiveness and enhancing their applicability in practice. Then, we propose two complementary analyses—a static and a dynamic one—to verify programs against the extended contracts. We have implemented both approaches and present promising experimental results from their application on various programs, including real-world ones where our approach unveiled previously unknown errors. Ricardo J. Dias, Carla Ferreira 0001, Jan Fiedor, João Lourenço, Ales Smrcka, Diogo Sousa 0001, Tomás Vojnar |
ICST | 1 |
| 2017 | Blotter: Low Latency Transactions for Geo-Replicated StorageabstractMost geo-replicated storage systems use weak consistency to avoid the performance penalty of coordinating replicas in different data centers. This departure from strong semantics poses problems to application programmers, who need to address the anomalies enabled by weak consistency. In this paper we use a recently proposed isolation level, called Non-Monotonic Snapshot Isolation, to achieve ACID transactions with low latency. To this end, we present Blotter, a geo-replicated system that leverages these semantics in the design of a new concurrency control protocol that leaves a small amount of local state during reads to make commits more efficient, which is combined with a configuration of Paxos that is tailored for good performance in wide area settings. Read operations always run on the local data center, and update transactions complete in a small number of message steps to a subset of the replicas. We implemented Blotter as an extension to Cassandra. Our experimental evaluation shows that Blotter has a small overhead at the data center scale, and performs better across data centers when compared with our implementations of the core Spanner protocol and of Snapshot Isolation on the same codebase. Henrique Moniz, João Leitão 0001, Ricardo J. Dias, Johannes Gehrke, Nuno M. Preguiça, Rodrigo Rodrigues 0001 |
WWW | 3 |
| 2016 | Pot: Deterministic Transactional ExecutionabstractThis article presents Pot, a system that leverages the concept of preordered transactions to achieve deterministic multithreaded execution of programs that use Transactional Memory. Preordered transactions eliminate the root cause of nondeterminism in transactional execution: they provide the illusion of executing in a deterministic serial order, unlike traditional transactions that appear to execute in a nondeterministic order that can change from execution to execution. Pot uses a new concurrency control protocol that exploits the serialization order to distinguish between fast and speculative transaction execution modes in order to mitigate the overhead of imposing a deterministic order. We build two Pot prototypes: one using STM and another using off-the-shelf HTM. To the best of our knowledge, Pot enables deterministic execution of programs using off-the-shelf HTM for the first time. An experimental evaluation shows that Pot achieves deterministic execution of TM programs with low overhead, sometimes even outperforming nondeterministic executions, and clearly outperforming the state of the art. Tiago M. Vale, João A. Silva, Ricardo J. Dias, João Lourenço |
ACM Trans. Archit. Code Optim. | 3 |
| 2014 | Efficient Correction of Anomalies in Snapshot Isolation TransactionsabstractTransactional memory systems providing snapshot isolation enable concurrent access to shared data without incurring aborts on read-write conflicts. Reducing aborts is extremely relevant as it leads to higher concurrency, greater performance, and better predictability. Unfortunately, snapshot isolation does not provide serializability as it allows certain anomalies that can lead to subtle consistency violations. While some mechanisms have been proposed to verify the correctness of a program utilizing snapshot isolation transactions, it remains difficult to repair incorrect applications. To reduce the programmer’s burden in this case, we present a technique based on dynamic code and graph dependency analysis that automatically corrects existing snapshot isolation anomalies in transactional memory programs. Our evaluation shows that corrected applications retain the performance benefits characteristic of snapshot isolation over conventional transactional memory systems. Heiner Litz, Ricardo J. Dias, David R. Cheriton |
ACM Trans. Archit. Code Optim. | 2 |
| 2013 | Efficient support for in-place metadata in Java software transactional memoryabstractSUMMARY Software transactional memory (STM) algorithms associate metadata with the memory locations accessed during a transaction's lifetime. This metadata may be stored in an external table by resorting to a mapping function that associates the address of a memory cell with the table entry containing the corresponding metadata (out‐place or external strategy). Alternatively, the metadata may be stored adjacent to the associated memory cell by wrapping the cell and metadata together (in‐place strategy). The implementation techniques to support these two approaches are very different and each STM framework is usually biased towards one of them, only allowing the efficient implementation of STM algorithms which suit one of the approaches and inhibiting a fair comparison with STM algorithms suiting the other. In this paper, we introduce a technique to implement in‐place metadata that does not wrap memory cells, thus overcoming the bias and allowing STM algorithms to directly access the transactional metadata. The proposed technique is available as an extension to Deuce and enables the efficient implementation of a wide range of STM algorithms and their fair (unbiased) comparison in a common STM framework. We illustrate the benefits of our approach by analyzing its impact in two popular transactional memory algorithms with several transactional workloads, TL2 and multiversioning, each befitting out‐place and in‐place, respectively. Copyright © 2013 John Wiley & Sons, Ltd. Ricardo J. Dias, Tiago M. Vale, João Lourenço |
Concurr. Comput. Pract. Exp. | 1 |
| 2012 | Verification of Snapshot Isolation in Transactional Memory Java Programs
Ricardo J. Dias, Dino Distefano, João Costa Seco, João Lourenço |
ECOOP | 1 |
| 2012 | Efficient Support for In-Place Metadata in Transactional Memory
Ricardo J. Dias, Tiago M. Vale, João Lourenço |
Euro-Par | 1 |
| 2009 | Unifying Memory and Database Transactions
Ricardo J. Dias, João Lourenço |
Euro-Par | 1 |
| 2008 | Memoria mobile: sharing pictures of a point of interestabstractThis paper presents the Memoria mobile interface, an application to share and access personal memories when visiting historical sites, museums or other points of interest. With the proposed interface people can navigate the memory space of the place they are visiting and, using their camera-phones or Personal Digital Assistants (PDA), view what has interested them or other people in past occasions. The system consists of a retrieval engine and a mobile user interface that allows capture and automatic annotation of images. Experimental results are presented to show the performance of the retrieval mechanisms and the usability of the interface. Rui Jesus 0001, Ricardo J. Dias, Rute Frias, Arnaldo J. Abrantes, Nuno Correia 0001 |
AVI | 2 |
| 2007 | Mobile interface of the memoria projectabstractThis project develops tools to manage personal memories that include a multimedia retrieval system and user interfaces for different devices. This paper and demonstration presents the mobile interface which allows browsing, retrieving, and taking pictures that are automatically annotated with GPS data and audio information. The multimedia retrieval system uses multimodal information: visual content, GPS metadata and audio information. The interface was evaluated in a cultural heritage site. Ricardo J. Dias, Rui Jesus 0001, Rute Frias, Nuno Correia 0001 |
SIGIR | 1 |