- Implemented a concurrent linked list that supports
search
,insert
anddelete
operations by using the following three approaches:- coarse-grained locking with search operation oblivious to locks
- fine-grained locking using lazy synchronization
- lock-free synchronization
- Implemented a common test facility that could generate operations with different distribution and test linked lists by different degree of concurrency (number of threads concurrently operating on a linked list) according to the requirements of testing throughput
- Compared the averaged performance of the three implementations as a function of number of threads (varied from one to the number of logical cores in the machine) under different distribution of operations
- Course: Introduction to Multicore Programming (CS 6301)
- Professor: Neeraj Mittal
- Semester: Fall 2016
- Programming Language: C++
- Build Tool: CMake