Chunk List: Concurrent Data Structures
Daniel Szelogowski

TL;DR
This paper introduces the chunk list, a concurrent data structure that uses chunking to enable parallel search and sorting, achieving significantly faster performance than traditional array-based lists.
Contribution
The paper presents the first use of chunking combined with concurrency in a dynamic list data structure, significantly improving search and sort speeds.
Findings
Achieves 20x-300x faster search times than ArrayList
Allows user-defined chunk sizes for performance tuning
Demonstrates effective parallel search with multi-threading
Abstract
Chunking data is obviously no new concept; however, I had never found any data structures that used chunking as the basis of their implementation. I figured that by using chunking alongside concurrency, I could create an extremely fast run-time in regards to particular methods as searching and/or sorting. By using chunking and concurrency to my advantage, I came up with the chunk list - a dynamic list-based data structure that would separate large amounts of data into specifically sized chunks, each of which should be able to be searched at the exact same time by searching each chunk on a separate thread. As a result of implementing this concept into its own class, I was able to create something that almost consistently gives around 20x-300x faster results than a regular ArrayList. However, should speed be a particular issue even after implementation, users can modify the size of the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed and Parallel Computing Systems · Advanced Data Storage Technologies · Parallel Computing and Optimization Techniques
