Font Size: a A A

A Study of Synchronization Mechanisms in a Distributed Memory Caching System

Posted on:2014-10-19Degree:M.SType:Thesis
University:Lehigh UniversityCandidate:Vyas, Trilok JFull Text:PDF
GTID:2458390008459684Subject:Engineering
Abstract/Summary:
As the microprocessors are moving towards having more cores on a single chip (multi-core), the software programs that run on those chips are also increasingly becoming parallel/multi-threaded. At the heart of multi-threaded programming is the use of synchronization mechanisms to control access to the critical sections. There are various methods that can be employed to achieve this goal. Some are lock based, whereas others are not. The use of synchronization mechanism can affect the overall speed of a multi-threaded program. In our project, we studied the performances of various synchronization mechanisms like POSIX thread locks, TestAndSet, Oyama-locks, and Software-Transactional-Memory using an open source distributed memory caching system called memcached. After evaluating the performance of various benchmarks, we found that all the three lock based methods perform equally well at a high concurrency level. There are some other interesting observations as well which are mentioned here. Also mentioned are some of the limitations of our custom developed library routines for generating the benchmarks, and possible enhancements in the future along with other future work.
Keywords/Search Tags:Synchronization mechanisms
Related items