Abstract
Non-coherent remote memory access with a simple load-store interface is one of the characteristic features of the Scalable Coherent Interface (SCI). It allows SCI to bridge the gap between efficient (and expensive) hardware implementations of true coherent shared memory and low-performance software implementations. It also allows SCI to be used as a substrate for efficient implementations of higher-level communication mechanisms. In this chapter, we evaluate the tradeoffs for using SCI to implement user-level message-passing and a global address-space scheme with shared-memory segments. We perform this evaluation in the context of Split-C, an explicitly parallel language which provides a global address-space abstraction as well as bulk transfer operations.
For the message-passing implementation, we use SCI to implement Active Messages and use Active Messages as the communication layer for the Split-C runtime system. For the shared memory implementation, we use SCI operations directly as the communication layer for Split-C. The direct implementation has the potential to provide a performance advantage by reducing copying and synchronization. However, our SCI hardware poses problems that make an efficient direct implementation very challenging. Our studies show that neither paradigm is optimal in our current setting and suggest a combination of both paradigms for increased efficiency.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Arpaci, R., Culler, D., Krishnamurthy, A., Steinberg, S., Yelick, K.: Empirical Evaluation of the CRAY T3D: A compiler perspective. In: International Symposium on Computer Architecture (June 1995)
Brewer, E.A., Chong, F.T., Liu, L.T., Sharma, S.D., Kubiatowicz, J.: Remote Queues: Exposing Message Queues for Optimization and Atomicity. In: 7th Annual Symposium on Parallel Algorithms and Architectures (July 1995)
Culler, D.E., Dusseau, A., Golstein, S.C., Krishnamurthy, A., Lumetta, S., von Eicken, T., Yelick, K.: Parallel Programming in Split-C. In: Proc. of Supercomputing (November 1993)
Culler, D.E., Goldstein, S.C., Schauser, K.E., von Eicken, T.: TAM — A Compiler Controlled Threaded Abstract Machine. Journal of Parallel and Distributed Computing 18 (July 1993)
Culler, D.E., Liu, L.T., Martin, R., Yoshikawa, C.: LogP Performance Assessment of Fast Network Interfaces. IEEE Micro (1996)
Dolphin. PCI-SCI Adapter Programming Specification. Dolphin Interconnect Solutions Inc. (November 1997)
Ibel, M., Schauser, K.E., Scheiman, C.J., Weis, M.: Implementing Active Messages and Split-C for SCI Clusters and Some Architectural Implications. In: Sixth International Workshop on SCI-based Low-cost/High-performance Computing (September 1996)
Ibel, M., Schauser, K.E., Scheiman, C.J., Weis, M.: High-Performance Cluster Computing Using Scalable Coherent Interface. In: Seventh International Workshop on SCI-based Low-cost/High-performance Computing (March 1997)
Ibel, M., Schauser, K.E., Scheiman, C.J., Weis, M.: High-Performance Cluster Computing Using SCI. In: Proc. of Hot Interconnects V (August 1997)
Ibel, M., Schmitt, M., Schauser, K.E., Acharya, A.: An Efficient Global Address Space Model with SCI. In: Proceedings of SCI Europe 1998 (September 1998)
Krishnamurthy, A., Schauser, K.E., Scheiman, C.J., Wang, R.Y., Culler, D.E., Yelick, K.: Evaluation of Architectural Support for Global Address-Based Communication in Large-Scale Parallel Machines. In: 7th International Conference on Architectural Support for Programming Languages and Operating, Systems (1996)
Martin, R.P.: HPAM: An Active Message Layer for a Network of HP Workstations. In: Proc. of Hot Interconnects II (August 1994)
Schauser, K.E., Scheiman, C.J.: Experience with Active Messages on the Meiko CS-2. In: 9th International Parallel Processing Symposium (April 1995)
Schmitt, M., Ibel, M., Acharya, A., Schauser, K.E.: Adaptive Receiver Notification for Non-Dedicated Workstation Clusters. In: Proc. of the 1998 Int’l Conference on Parallel Architectures and Compilation Techniques (October 1998)
Tucker, L.W., Mainwaring, A.: CMMD: Active messages on the CM-5. Parallel Computing 20(4) (1994)
von Eicken, T., Basu, A., Buch, V., Vogels, W.: U-Net: A User-Level Network Interface for Parallel and Distributed Computing. In: Proc. Symposium on Operating Systems Principles (1995)
von Eicken, T., Culler, D.E., Goldstein, S.C., Schauser, K.E.: Active Messages: a Mechanism for Integrated Communication and Computation. In: Proc. of the 19th Int’l Symposium on Computer Architecture, Gold Coast, Australia (May 1992)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Ibel, M., Schmitt, M., Schauser, K., Acharya, A. (1999). Shared Memory vs Message Passing on SCI: A Case Study Using Split-C. In: Hellwagner, H., Reinefeld, A. (eds) SCI: Scalable Coherent Interface. Lecture Notes in Computer Science, vol 1734. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10704208_21
Download citation
DOI: https://doi.org/10.1007/10704208_21
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66696-7
Online ISBN: 978-3-540-47048-9
eBook Packages: Springer Book Archive