Exploring some alternatives to lock-based synchronization
SAMY AL BAHRA, APPNEXUS
Real-world systems with complicated quality-of-service guarantees may require a delicate balance between throughput and latency to meet operating requirements in a cost-efficient manner. The increasing availability and decreasing cost of commodity multicore and many-core systems make concurrency and parallelism increasingly necessary for meeting demanding performance requirements. Unfortunately, the design and implementation of correct, efficient, and scalable concurrent software is often a daunting task.
> Nonblocking Algorithms and Scalable Multicore Programming
Related:
Software and the Concurrency Revolution