English

MCPrioQ: A lock-free algorithm for online sparse markov-chains

Machine Learning 2023-05-01 v1

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 O(1)O(1) for updates and O(CDF1(t))O(CDF^{-1}(t)) inference. MCPrioQ is especially suitable for recommender-systems for lookups of nn-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}
}
R2 v1 2026-06-28T10:20:41.542Z