Abstract
This paper describes an implementation of stream sockets for the SHRIMP multicomputer. SHRIMP supports protected, user-level data transfer, allows user-level code to perform its own buffer management, and separates data transfers from control transfers so that data transfers can be done without the interrupting the receiving node's CPU. Our sockets implementation exploits all of these features to provide high performance. End-to-end latency for 8 byte transfers is 11 microseconds, which is considerably lower than all previous implementations of the sockets interface. For large transfers, we obtain a bandwidth of 13.5 MBytes/sec, which is close to the hardware limit when the receiver must perform a copy. Further experiments with the public-domain benchmarks ttcp and netperf confirm the performance of our implementation.
Preview
Unable to display preview. Download preview PDF.
References
Richard Alpert and Edward W. Felten. Design and Implementation of NX Message Passing Using SHRIMP Virtual Memory Mapped Communication. Technical Report TR-507-96, Dept. of Computer Science, Princeton University, January 1996.
Angelos Bilas and Edward W. Felten. Fast RPC on the SHRIMP Virtual Memory Mapped Network Interface. Technical Report TR-512-96, Dept. of Computer Science, Princeton University, February 1996.
M. Blumrich, K. Li, R. Alpert, C. Dubnicki, E. Felten, and J. Sandberg. A Virtual Memory Mapped Network Interface for the Shrimp Multicomputer. In Proceedings of 21th International Symposium on Computer Architecture, pages 142–153, April 1994.
Matthias A. Blumrich. Network Interface for Protected, User-Level Communication. PhD thesis, Dept. of Computer Science, Princeton University, June 1996. Available as technical report TR-522-96.
Matthias A. Blumrich, Cezary Dubnicki, Edward W. Felten, and Kai Li. Protected, User-Level DMA for the SHRIMP Network Interface. In Proc. 2nd Intl. Symposium on High-Performance Computer Architecture, pages 154–165, February 1996.
Nanette J. Boden, Danny Cohen, Robert E. Felderman, Alan E. Kulawik, Charles L. Seitz, Jakov N. Seizovic, and Wen-King Su. Myrinet: A Gigabit-per-Second Local Area Network. IEEE Micro, 15(1):29–36, February 1995.
S. Borkar, R. Cohn, G. Cox, T. Gross, H.T. Kung, M. Lam, M. Levine, B. Moore, W. Moore, C. Peterson, J. Susman, J. Sutton, J. Urbanski, and J. Webb. Supporting Systolic and Memory Communication in iWarp. In Proceedings of 17th International Symposium on Computer Architecture, June 1990.
William J. Dally. The J-Machine System. In P.H. Winston and S.A. Shellard, editors, Artificial Intelligence at MIT: Expanding Frontiers, pages 550–580. MIT Press, 1990.
Stefanos Damianakis, Cezary Dubnicki, and Edward W. Felten. Stream Sockets on SHRIMP. Technical Report TR-513-96, Dept. of Computer Science, Princeton University, February 1996.
Cezary Dubnicki, Liviu Iftode, Edward W. Felten, and Kai Li. Software Support for Virtual Memory-Mapped Communication. In Proceedings of the IEEE 8th International Parallel Processing Symposium, April 1996.
Edward W. Felten, Richard Alpert, Angelos Bilas, Matthias A. Blumrich, Douglas W. Clark, Stefanos Damianakis, Cezary Dubnicki, Liviu Iftode, and Kai Li. Early Experience with Message-Passing on the Shrimp Multicomputer. In Proceedings of 23th International Symposium on Computer Architecture, May 1996.
FORE Systems. TCA-100 TURBOchannel ATM Computer Interface, User's Manual, 1992.
Dana S. Henry and Christopher F. Joerg. A Tightly-Coupled Processor-Network Interface. In Proceedings of 5th International Conference on Architectur al Support for Programming Languages and Operating Systems, pages 111–122, October 1992.
Internet Request for Comments RFC 1057, Internet Network Working Group. RPC: Remote Procedure Call Protocol Specification, Version 2, June 1988.
Kimberly K. Keeton, Thomas E. Anderson, and David A. Patterson. LogP: The Case for Low-Overhead Local Area Networks. In Hot Interconnects III, August 1995.
Samuel J. Leffler, Marshall Kirk McKusick, Michael J. Karels, and John S. Quarterman. The Design and Implementation of the 4.3BSD Unix Operating System. Addison Wesley, 1989.
C.E. Leiserson, Z.S. Abuhamdeh, D.C. Douglas, C.R. Feynman, M.N. Ganmukhi, J.V. Hill, D. Hillis, B.C. Kuszmaul, M.A. St. Pierre, D.S. Wells, M.C. Wong, S. Yang, and R. Zak. The Network Architecture of the Connection Machine CM-5. In Proceedings of 4th ACM Symposium on Parallel Algorithms and Architectures, pages 272–285, June 1992.
Chris Maeda and Brian N. Bershad. Protocol Service Decomposition for High-Performance Networking. In Proceedings of 14th ACM Symposium on Operating Systems Principles, pages 244–255, December 1993.
Scott Pakin, Mario Lauria, and Andrew Chien. High Performance Messaging on Workstations: Illinois Fast Message (FM) for Myrinet. In Supercomputing '95, November 1995.
Paul Pierce. The NX/2 Operating System. In Proceedings of Third Conference on Hypercube Concurrent Computers and Applications, pages 384–390, January 1988.
Steven H. Rodrigues, Thomas E. Anderson, and David E. Culler. High-Performance Local-Area Communication With Fast Sockets. In Proc. of Winter 1997 USENIX Symposium, January 1997.
Roger Traylor and Dave Dunning. Routing Chip Set for Intel Paragon Parallel Supercomputer. In Proceedings of Hot Chips '92 Symposium, August 1992.
Thorsten von Eicken, Anindya Basu, Vineet Buch, and Werner Vogels. U-Net: A User-Level Network Interface for Parallel and Distributed Computing. In Proceedings of 15th ACM Symposium on Operating Systems Principles, pages 40–53, December 1995.
Thorsten von Eicken, David E. Culler, Seth Copen Goldstein, and Klaus Erik Schauser. Active Messages: A Mechanism for Integrated Communication and Computation. In Proceedings of 19th International Symposium on Computer Architecture, pages 256–266, May 1992.
John Wilkes. Hamlyn — An Interface for Sender-Based Communications. Technical Report HPL-OSR-92-13, Hewlett-Packard Laboratories, November 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Damianakis, S.N., Dubnicki, C., Felten, E.W. (1997). Stream sockets on SHRIMP . In: Panda, D.K., Stunkel, C.B. (eds) Communication and Architectural Support for Network-Based Parallel Computing. CANPC 1997. Lecture Notes in Computer Science, vol 1199. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-62573-9_2
Download citation
DOI: https://doi.org/10.1007/3-540-62573-9_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-62573-5
Online ISBN: 978-3-540-68085-7
eBook Packages: Springer Book Archive