🤖 AI Summary
To address low asynchronous communication efficiency and coarse-grained resource control in multithreaded environments, this paper introduces LCI (Lightweight Communication Interface), a novel communication library designed for fine-grained multithreading. LCI provides a lightweight API supporting point-to-point primitives and multi-mode completion mechanisms; it features the first thread-efficient runtime built upon atomic data structures and lock-free synchronization—breaking away from traditional MPI-style multiprocess communication paradigms. Furthermore, LCI integrates low-level network optimizations, asynchronous completion queues, and dynamic resource tuning. Experimental evaluation on InfiniBand and Slingshot-11 clusters demonstrates that LCI achieves up to 3.2× higher multithreaded throughput than state-of-the-art communication libraries, even outperforming conventional multiprocess configurations. These advances deliver scalable, high-performance communication support for emerging asynchronous programming models.
📝 Abstract
The evolution of architectures, programming models, and algorithms is driving communication towards greater asynchrony and concurrency, usually in multithreaded environments. We present LCI, a communication library designed for efficient asynchronous multithreaded communication. LCI provides a concise interface that supports common point-to-point primitives and diverse completion mechanisms, along with flexible controls for incrementally fine-tuning communication resources and runtime behavior. It features a threading-efficient runtime built on atomic data structures, fine-grained non-blocking locks, and low-level network insights. We evaluate LCI on both Inifiniband and Slingshot-11 clusters with microbenchmarks and two application-level benchmarks. Experiment results show that LCI significantly outperforms existing communication libraries in various multithreaded scenarios, achieving performance that exceeds the traditional multi-process execution mode and unlocking new possibilities for emerging programming models and applications.