High Performance Sockets and RPC over Virtual Interface (VI) Architecture
CANPC '99 Proceedings of the Third International Workshop on Network-Based Parallel Computing: Communication, Architecture, and Applications
SOVIA: A User-level Sockets Layer Over Virtual Interface Architecture
CLUSTER '01 Proceedings of the 3rd IEEE International Conference on Cluster Computing
High Performance User Level Sockets over Gigabit Ethernet
CLUSTER '02 Proceedings of the IEEE International Conference on Cluster Computing
Impact of High Performance Sockets on Data Intensive Applications
HPDC '03 Proceedings of the 12th IEEE International Symposium on High Performance Distributed Computing
HOTI '05 Proceedings of the 13th Symposium on High Performance Interconnects
Exploiting NIC architectural support for enhancing IP-based protocols on high-performance networks
Journal of Parallel and Distributed Computing - Special issue: Design and performance of networks for super-, cluster-, and grid-computing: Part II
Sockets Direct Protocol over InfiniBand in clusters: is it beneficial?
ISPASS '04 Proceedings of the 2004 IEEE International Symposium on Performance Analysis of Systems and Software
ATEC '96 Proceedings of the 1996 annual conference on USENIX Annual Technical Conference
End system optimizations for high-speed TCP
IEEE Communications Magazine
Communications of the ACM - One Laptop Per Child: Vision vs. Reality
Queue - Sockets
Designing next generation data-centers with advanced communication protocols and systems services
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Hi-index | 0.00 |
Sockets Direct Protocol (SDP) is an industry standard pseudo socketslike implementation to allow existing sockets applications to directly and transparently take advantage of the advanced features of current generation networks such as InfiniBand. The SDP standard supports two kinds of sockets semantics, viz., Synchronous sockets (e.g., used by Linux, BSD, Windows) and Asynchronous sockets (e.g., used by Windows, upcoming support in Linux). Due to the inherent benefits of asynchronous sockets, the SDP standard allows several intelligent approaches such as source-avail and sink-avail based zero-copy for these sockets. Unfortunately, most of these approaches are not beneficial for the synchronous sockets interface. Further, due to its portability, ease of use and support on a wider set of platforms, the synchronous sockets interface is the one used by most sockets applications today. Thus, a mechanism by which the approaches proposed for asynchronous sockets can be used for synchronous sockets is highly desirable. In this paper, we propose one such mechanism, termed as AZ-SDP (Asynchronous Zero-Copy SDP), where we memory-protect application buffers and carry out communication asynchronously while maintaining the synchronous sockets semantics. We present our detailed design in this paper and evaluate the stack with an extensive set of benchmarks. The experimental results demonstrate that our approach can provide an improvement of close to 35% for medium-message unidirectional throughput and up to a factor of 2 benefit for computationcommunication overlap tests and multi-connection benchmarks.