Performance Impact of Lock-Free Algorithms on Multicore Communication APIs
K. Eric Harper, Thijmen de Gooijer

TL;DR
This paper explores how lock-free algorithms improve communication latency and throughput in multicore systems, demonstrating significant performance gains over traditional lock-based methods in embedded and general computing environments.
Contribution
It introduces a lock-free multicore communication API, models its performance, and compares it with lock-based approaches, highlighting advantages in latency and throughput.
Findings
Lock-free messaging reduces data exchange latency.
Performance degrades for lock-based methods on multicore architectures.
Lock-free algorithms improve throughput and scalability.
Abstract
Data race conditions in multi-tasking software applications are prevented by serializing access to shared memory resources, ensuring data consistency and deterministic behavior. Traditionally tasks acquire and release locks to synchronize operations on shared memory. Unfortunately, lock management can add significant processing overhead especially for multicore deployments where tasks on different cores convoy in queues waiting to acquire a lock. Implementing more than one lock introduces the risk of deadlock and using spinlocks constrains which cores a task can run on. The better alternative is to eliminate locks and validate that real-time properties are met, which is not directly considered in many embedded applications. Removing the locks is non-trivial and packaging lock-free algorithms for developers reduces the possibility of concurrency defects. This paper details how a…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Distributed systems and fault tolerance · Cloud Computing and Resource Management
