BQ: A Lock-Free Queue with Batching

Gal Milman, M.Sc. Thesis Seminar
Thursday, 15.8.2019, 11:00
Room 601 Taub Bld.
Prof. E. Petrank

Concurrent data structures provide fundamental building blocks for concurrent programming. Standard concurrent data structures may be extended by allowing a sequence of operations to be submitted as a batch for later execution. A sequence of such operations can then be executed more efficiently than the standard execution of one operation at a time. We propose a novel algorithmic extension to the prevalent FIFO queue data structure that exploits such batching scenarios. An implementation in C++ on a multicore demonstrates a significant performance improvement of up to 16x (depending on batch lengths), compared to previous queue implementations.

Back to the index of events