Parallel construction of succinct trees
Date
2017
Type:
Artículo
item.page.extent
22 p.
item.page.accessRights
item.contributor.advisor
ORCID:
Journal Title
Journal ISSN
Volume Title
Publisher
item.page.isbn
item.page.issn
item.page.issne
item.page.doiurl
item.page.other
item.page.references
Abstract
Succinct representations of trees are an elegant solution to make large trees fit in main memory while still supporting navigational operations in constant time. However, their construction time remains a bottleneck. We introduce two parallel algorithms that improve the state of the art in succinct tree construction. Our results are presented in terms of work, the time needed to execute a parallel computation using one thread, and span, the minimum amount of time needed to execute a parallel computation, for any amount of threads. Given a tree on n nodes stored as a sequence of balanced parentheses, our first algorithm builds a succinct tree representation with O(n) work, O(lgn) span and supports a rich set of operations in O(lgn) time. Our second algorithm improves the query support. It constructs a succinct representation that supports queries in O(c) time, taking O(n+nlgcnlg(nlgcn)+cc) work and O(c+lg(ncclgcn)) span, for any positive constant c. Both algorithms use O(nlgn) bits of working space. In experiments using up to 64 cores on inputs of different sizes, our first algorithm achieved good parallel speed-up. We also present an algorithm that takes O(n) work and O(lgn) span to construct the balanced parenthesis sequence of the input tree required by our succinct tree construction algorithm.
Description
item.page.coverage.spatial
item.page.sponsorship
Citation
Fuentes-Sepúlveda, José; Ferres, Leo; He, Meng; Zeh, Norbert (2017).
Parallel construction of succinct trees,.Theoretical Computer Science Volume 700, 14 November 2017, Pages 1-22
Keywords
Succinct data structure, Succinct tree construction, Multicore, Parallel algorithm