Abstract

One of the biggest shortcomings of the CUDA environment is the lack of a data structure having effective parallel insert and remove operations. This paper focuses on the insertion. The traditional vector-based lists are not applicable for this kind of addition; however, the well-known linked list data structure has the ability to handle parallel insertions at the same time. But nowadays, there is not any “official” linked list data structure in the current CUDA runtime library. This paper presents a novel way to create a multi-layered linked list (called Parallel List) using the NVIDIA CUDA framework. As our experiments show, the implemented data structure is able to do multiple insert operations 2–30 times faster than the traditional sequential CPU implementation of a general list object. Another advantage of the new data structure is the support of Random Access pattern to access contents directly.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.