Multi‐dimensional lock‐free arrays for multithreaded mode‐directed tabling in Prolog. (30th March 2018)
- Record Type:
- Journal Article
- Title:
- Multi‐dimensional lock‐free arrays for multithreaded mode‐directed tabling in Prolog. (30th March 2018)
- Main Title:
- Multi‐dimensional lock‐free arrays for multithreaded mode‐directed tabling in Prolog
- Authors:
- Areias, Miguel
Rocha, Ricardo - Other Names:
- Garcia J. Daniel guestEditor.
Llanos Diego R. guestEditor. - Abstract:
- Summary: This work proposes a new design for the supporting data structures used to implement multithreaded tabling in Prolog systems. Tabling is an implementation technique that improves the expressiveness of traditional Prolog systems in dealing with recursion and redundant computations. Mode‐directed tabling is an extension to the tabling technique that supports the definition of alternative criteria for specifying how answers are aggregated, thus being very suitable for problems where the goal is to dynamically calculate optimal or selective answers. In this work, we leverage the intrinsic potential that mode‐directed tabling has to express dynamic programming problems by creating a new design that improves the representation of multi‐dimensional arrays in the context of multithreaded tabling. To do so, we introduce a new mode for indexing arguments in mode‐directed tabled evaluations, named dim, where each dim argument features a uni‐dimensional lock‐free array. Experimental results using well‐known dynamic programming problems on a 32‐core machine show that the new design introduces less overheads and clearly improves the execution time for sequential and multithreaded tabled evaluations.
- Is Part Of:
- Concurrency and computation. Volume 31:Number 5(2019)
- Journal:
- Concurrency and computation
- Issue:
- Volume 31:Number 5(2019)
- Issue Display:
- Volume 31, Issue 5 (2019)
- Year:
- 2019
- Volume:
- 31
- Issue:
- 5
- Issue Sort Value:
- 2019-0031-0005-0000
- Page Start:
- n/a
- Page End:
- n/a
- Publication Date:
- 2018-03-30
- Subjects:
- dynamic programming -- lock‐freedom -- multithreading -- prolog -- tabling
Parallel processing (Electronic computers) -- Periodicals
Parallel computers -- Periodicals
004.35 - Journal URLs:
- http://onlinelibrary.wiley.com/ ↗
- DOI:
- 10.1002/cpe.4491 ↗
- Languages:
- English
- ISSNs:
- 1532-0626
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - 3405.622000
British Library DSC - BLDSS-3PM
British Library STI - ELD Digital store - Ingest File:
- 9486.xml