Search Results

Documents authored by Petrank, Erez


Document
Brief Announcement
Brief Announcement: Concurrent Aggregate Queries

Authors: Gal Sela and Erez Petrank

Published in: LIPIcs, Volume 319, 38th International Symposium on Distributed Computing (DISC 2024)


Abstract
Concurrent data structures serve as fundamental building blocks for concurrent computing. Many concurrent counterparts have been designed for basic sequential algorithms; however, one notable omission is a concurrent tree that supports aggregate queries. Aggregate queries essentially compile succinct information about a range of data items. Such queries play an essential role in various applications and are commonly taught in undergraduate data structures courses. In this paper, we formalize a type of aggregate queries that can be efficiently supported by concurrent trees and present a design for implementing these queries on concurrent lock-based trees. We present two algorithms implementing this design, where one optimizes for tree update time, while the other optimizes for aggregate query time.

Cite as

Gal Sela and Erez Petrank. Brief Announcement: Concurrent Aggregate Queries. In 38th International Symposium on Distributed Computing (DISC 2024). Leibniz International Proceedings in Informatics (LIPIcs), Volume 319, pp. 53:1-53:7, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)


Copy BibTex To Clipboard

@InProceedings{sela_et_al:LIPIcs.DISC.2024.53,
  author =	{Sela, Gal and Petrank, Erez},
  title =	{{Brief Announcement: Concurrent Aggregate Queries}},
  booktitle =	{38th International Symposium on Distributed Computing (DISC 2024)},
  pages =	{53:1--53:7},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-352-2},
  ISSN =	{1868-8969},
  year =	{2024},
  volume =	{319},
  editor =	{Alistarh, Dan},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.DISC.2024.53},
  URN =		{urn:nbn:de:0030-drops-212819},
  doi =		{10.4230/LIPIcs.DISC.2024.53},
  annote =	{Keywords: Concurrent Algorithms, Concurrent Data Structures, Aggregate queries, Range queries, Binary Search Tree, Linearizability}
}
Document
EEMARQ: Efficient Lock-Free Range Queries with Memory Reclamation

Authors: Gali Sheffi, Pedro Ramalhete, and Erez Petrank

Published in: LIPIcs, Volume 253, 26th International Conference on Principles of Distributed Systems (OPODIS 2022)


Abstract
Multi-Version Concurrency Control (MVCC) is a common mechanism for achieving linearizable range queries in database systems and concurrent data-structures. The core idea is to keep previous versions of nodes to serve range queries, while still providing atomic reads and updates. Existing concurrent data-structure implementations, that support linearizable range queries, are either slow, use locks, or rely on blocking reclamation schemes. We present EEMARQ, the first scheme that uses MVCC with lock-free memory reclamation to obtain a fully lock-free data-structure supporting linearizable inserts, deletes, contains, and range queries. Evaluation shows that EEMARQ outperforms existing solutions across most workloads, with lower space overhead and while providing full lock freedom.

Cite as

Gali Sheffi, Pedro Ramalhete, and Erez Petrank. EEMARQ: Efficient Lock-Free Range Queries with Memory Reclamation. In 26th International Conference on Principles of Distributed Systems (OPODIS 2022). Leibniz International Proceedings in Informatics (LIPIcs), Volume 253, pp. 5:1-5:22, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2023)


Copy BibTex To Clipboard

@InProceedings{sheffi_et_al:LIPIcs.OPODIS.2022.5,
  author =	{Sheffi, Gali and Ramalhete, Pedro and Petrank, Erez},
  title =	{{EEMARQ: Efficient Lock-Free Range Queries with Memory Reclamation}},
  booktitle =	{26th International Conference on Principles of Distributed Systems (OPODIS 2022)},
  pages =	{5:1--5:22},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-265-5},
  ISSN =	{1868-8969},
  year =	{2023},
  volume =	{253},
  editor =	{Hillel, Eshcar and Palmieri, Roberto and Rivi\`{e}re, Etienne},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.OPODIS.2022.5},
  URN =		{urn:nbn:de:0030-drops-176253},
  doi =		{10.4230/LIPIcs.OPODIS.2022.5},
  annote =	{Keywords: safe memory reclamation, lock-freedom, snapshot, concurrency, range query}
}
Document
VBR: Version Based Reclamation

Authors: Gali Sheffi, Maurice Herlihy, and Erez Petrank

Published in: LIPIcs, Volume 209, 35th International Symposium on Distributed Computing (DISC 2021)


Abstract
Safe lock-free memory reclamation is a difficult problem. Existing solutions follow three basic methods (or their combinations): epoch based reclamation, hazard pointers, and optimistic reclamation. Epoch-based methods are fast, but do not guarantee lock-freedom. Hazard pointer solutions are lock-free but typically do not provide high performance. Optimistic methods are lock-free and fast, but previous optimistic methods did not go all the way. While reads were executed optimistically, writes were protected by hazard pointers. In this work we present a new reclamation scheme called version based reclamation (VBR), which provides a full optimistic solution to lock-free memory reclamation, obtaining lock-freedom and high efficiency. Speculative execution is known as a fundamental tool for improving performance in various areas of computer science, and indeed evaluation with a lock-free linked-list, hash-table and skip-list shows that VBR outperforms state-of-the-art existing solutions.

Cite as

Gali Sheffi, Maurice Herlihy, and Erez Petrank. VBR: Version Based Reclamation. In 35th International Symposium on Distributed Computing (DISC 2021). Leibniz International Proceedings in Informatics (LIPIcs), Volume 209, pp. 35:1-35:18, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2021)


Copy BibTex To Clipboard

@InProceedings{sheffi_et_al:LIPIcs.DISC.2021.35,
  author =	{Sheffi, Gali and Herlihy, Maurice and Petrank, Erez},
  title =	{{VBR: Version Based Reclamation}},
  booktitle =	{35th International Symposium on Distributed Computing (DISC 2021)},
  pages =	{35:1--35:18},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-210-5},
  ISSN =	{1868-8969},
  year =	{2021},
  volume =	{209},
  editor =	{Gilbert, Seth},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.DISC.2021.35},
  URN =		{urn:nbn:de:0030-drops-148374},
  doi =		{10.4230/LIPIcs.DISC.2021.35},
  annote =	{Keywords: Safe memory reclamation, concurrency, linearizability, lock-freedom}
}
Document
New Challenges in Parallelism (Dagstuhl Seminar 17451)

Authors: Annette Bieniusa, Hans-J. Boehm, Maurice Herlihy, and Erez Petrank

Published in: Dagstuhl Reports, Volume 7, Issue 11 (2018)


Abstract
A continuing goal of current multiprocessor software design is to improve the performance and reliability of parallel algorithms. Parallel programming has traditionally been attacked from widely different angles by different groups of people: Hardware designers designing instruction sets, programming language designers designing languages and library interfaces, and theoreticians developing models of parallel computation. Unsurprisingly, this has not always led to consistent results. Newly developing areas show every sign of leading to similar divergence. This Dagstuhl Seminar will bring together researchers and practitioners from all three areas to discuss and reconcile thoughts on these challenges.

Cite as

Annette Bieniusa, Hans-J. Boehm, Maurice Herlihy, and Erez Petrank. New Challenges in Parallelism (Dagstuhl Seminar 17451). In Dagstuhl Reports, Volume 7, Issue 11, pp. 1-27, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2018)


Copy BibTex To Clipboard

@Article{bieniusa_et_al:DagRep.7.11.1,
  author =	{Bieniusa, Annette and Boehm, Hans-J. and Herlihy, Maurice and Petrank, Erez},
  title =	{{New Challenges in Parallelism (Dagstuhl Seminar 17451)}},
  pages =	{1--27},
  journal =	{Dagstuhl Reports},
  ISSN =	{2192-5283},
  year =	{2018},
  volume =	{7},
  number =	{11},
  editor =	{Bieniusa, Annette and Boehm, Hans-J. and Herlihy, Maurice and Petrank, Erez},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagRep.7.11.1},
  URN =		{urn:nbn:de:0030-drops-86681},
  doi =		{10.4230/DagRep.7.11.1},
  annote =	{Keywords: concurrency, memory models, non-volatile memory}
}
Document
The Teleportation Design Pattern for Hardware Transactional Memory

Authors: Nachshon Cohen, Maurice Herlihy, Erez Petrank, and Elias Wald

Published in: LIPIcs, Volume 95, 21st International Conference on Principles of Distributed Systems (OPODIS 2017)


Abstract
We identify a design pattern for concurrent data structures, called teleportation, that uses best- effort hardware transactional memory to speed up certain kinds of legacy concurrent data struc- tures. Teleportation unifies and explains several existing data structure designs, and it serves as the basis for novel approaches to reducing the memory traffic associated with fine-grained locking, and with hazard pointer management for memory reclamation.

Cite as

Nachshon Cohen, Maurice Herlihy, Erez Petrank, and Elias Wald. The Teleportation Design Pattern for Hardware Transactional Memory. In 21st International Conference on Principles of Distributed Systems (OPODIS 2017). Leibniz International Proceedings in Informatics (LIPIcs), Volume 95, pp. 10:1-10:16, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2018)


Copy BibTex To Clipboard

@InProceedings{cohen_et_al:LIPIcs.OPODIS.2017.10,
  author =	{Cohen, Nachshon and Herlihy, Maurice and Petrank, Erez and Wald, Elias},
  title =	{{The Teleportation Design Pattern for Hardware Transactional Memory}},
  booktitle =	{21st International Conference on Principles of Distributed Systems (OPODIS 2017)},
  pages =	{10:1--10:16},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-061-3},
  ISSN =	{1868-8969},
  year =	{2018},
  volume =	{95},
  editor =	{Aspnes, James and Bessani, Alysson and Felber, Pascal and Leit\~{a}o, Jo\~{a}o},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.OPODIS.2017.10},
  URN =		{urn:nbn:de:0030-drops-86306},
  doi =		{10.4230/LIPIcs.OPODIS.2017.10},
  annote =	{Keywords: Hardware transactional memory, concurrent data structures}
}
Document
Brief Announcement
Brief Announcement: A Persistent Lock-Free Queue for Non-Volatile Memory

Authors: Michal Friedman, Maurice Herlihy, Virendra Marathe, and Erez Petrank

Published in: LIPIcs, Volume 91, 31st International Symposium on Distributed Computing (DISC 2017)


Abstract
Non-volatile memory is expected to coexist with (or even displace) volatile DRAM for main memory in upcoming architectures. As a result, there is increasing interest in the problem of designing and specifying durable data structures that can recover from system crashes. Data-structures may be designed to satisfy stricter or weaker durability guarantees to provide a balance between the strength of the provided guarantees and performance overhead. This paper proposes three novel implementations of a concurrent lock-free queue. These implementations illustrate the algorithmic challenges in building persistent lock-free data structures with different levels of durability guarantees. We believe that by presenting these challenges, along with the proposed algorithmic designs, and the possible levels of durability guarantees, we can shed light on avenues for building a wide variety of durable data structures. We implemented the various designs and evaluate their performance overhead compared to a simple queue design for standard (volatile) memory.

Cite as

Michal Friedman, Maurice Herlihy, Virendra Marathe, and Erez Petrank. Brief Announcement: A Persistent Lock-Free Queue for Non-Volatile Memory. In 31st International Symposium on Distributed Computing (DISC 2017). Leibniz International Proceedings in Informatics (LIPIcs), Volume 91, pp. 50:1-50:4, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2017)


Copy BibTex To Clipboard

@InProceedings{friedman_et_al:LIPIcs.DISC.2017.50,
  author =	{Friedman, Michal and Herlihy, Maurice and Marathe, Virendra and Petrank, Erez},
  title =	{{Brief Announcement: A Persistent Lock-Free Queue for Non-Volatile Memory}},
  booktitle =	{31st International Symposium on Distributed Computing (DISC 2017)},
  pages =	{50:1--50:4},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-053-8},
  ISSN =	{1868-8969},
  year =	{2017},
  volume =	{91},
  editor =	{Richa, Andr\'{e}a},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.DISC.2017.50},
  URN =		{urn:nbn:de:0030-drops-79689},
  doi =		{10.4230/LIPIcs.DISC.2017.50},
  annote =	{Keywords: Non-volatile Memory, Concurrent Data Structures, Non-blocking, Lock-free}
}
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail