PPoPP 2019
Sat 16 - Wed 20 February 2019 Washington, DC, United States
Wed 20 Feb 2019 10:00 - 10:25 at Salon 12/13 - Session 9: Synchronization Chair(s): Erez Petrank

Modern Datalog engines are employed in industrial applications such as graph-databases, networks, and static program analysis. To cope with vast amount of data, Datalog engines must employ parallel execution strategies, for which specialized concurrent data structures are of paramount importance.

In this paper, we introduce a specialized B-tree data structure for an open-source Datalog compiler written in C++. Our data structure has been specialized for Datalog workloads running on shared-memory multi-core computers. It features (1) an optimistic locking protocol for scalability, (2) is highly tuned, and (3) uses the notion of ``hints'' to re-use the results of previously performed tree traversals to exploit data ordering properties exhibited by Datalog evaluation. In parallel micro-benchmarks, the new data structure achieves up to 59x higher performance than state-of-the-art industrial standards, while integrated into a Datalog engine it accounts for 3x higher, overall system performance.

Wed 20 Feb

Displayed time zone: Guadalajara, Mexico City, Monterrey change

09:35 - 10:50
Session 9: SynchronizationMain Conference at Salon 12/13
Chair(s): Erez Petrank Technion
09:35
25m
Talk
Encapsulated Open Nesting for STM: Fine-Grained Higher-Level Conflict Detection
Main Conference
Martin Bättig Department of Computer Science, ETH Zurich, Thomas Gross ETH Zurich
DOI
10:00
25m
Talk
A Specialized B-Tree for Concurrent Datalog Evaluation
Main Conference
Herbert Jordan University of Innsbruck, Pavle Subotic University College London, David Zhao The University of Sydney, Bernhard Scholz University of Sydney, Australia
DOI
10:25
25m
Talk
Efficient Race Detection with Futures
Main Conference
Robert Utterback Monmouth College, Kunal Agrawal Washington University in St. Louis, Jeremy Fineman , I-Ting Angelina Lee Washington University in St. Louis
DOI