MCPrioQ: A lock-free algorithm for online sparse markov-chains
Abstract
In high performance systems it is sometimes hard to build very large graphs that are efficient both with respect to memory and compute. This paper proposes a data structure called Markov-chain-priority-queue (MCPrioQ), which is a lock-free sparse markov-chain that enables online and continuous learning with time-complexity of for updates and inference. MCPrioQ is especially suitable for recommender-systems for lookups of -items in descending probability order. The concurrent updates are achieved using hash-tables and atomic instructions and the lookups are achieved through a novel priority-queue which allows for approximately correct results even during concurrent updates. The approximatly correct and lock-free property is maintained by a read-copy-update scheme, but where the semantics have been slightly updated to allow for swap of elements rather than the traditional pop-insert scheme.
Keywords
Cite
@article{arxiv.2304.14801,
title = {MCPrioQ: A lock-free algorithm for online sparse markov-chains},
author = {Jesper Derehag and Åke Johansson},
journal= {arXiv preprint arXiv:2304.14801},
year = {2023}
}