Abstract
Today, most software distributed shared memory systems (SW-DSMs) lack industry standard programming interfaces which limit their applicability to a small set of shared-memory applications. In order to gain general acceptance, SW-DSMs should support the same look-and-feel of shared memory as hardware DSMs. This paper presents a runtime system concept that enables unmodified POSIX (Pthreads) binaries to run transparently on clustered hardware. The key idea is to extend the single process model of multi-threading to a multi-process model where threads are distributed to processes executing in remote nodes. The distributed threads execute in a global shared address space made coherent by a fine-grain SW-DSM layer. We also present THROOM, a proof-of-concept implementation that runs unmodified Pthread binaries on a virtual cluster modeled as standard UNIX processes. THROOM runs on top of the DSZOOM fine-grain SW-DSM system with limited OS support.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Scales, D.J., Gharachorloo, K.: Towards Transparent and Efficient Software Distributed Shared Memory. In: Proceedings of the 16th ACM Symposium on Operating System Principles, Saint-Malo, France (1997)
Dwarkadas, S., Gharachorloo, K., Kontothanassis, L., Scales, D.J., Scott, M.L., Stets, R.: Comparative Evaluation of Fine- and Coarse-Grain Approaches for Software Distributed Shared Memory. In: Proceedings of the 5th International Symposium on High-Performance Computer Architecture, pp. 260–269 (1999)
Keleher, P., Cox, A.L., Dwarkadas, S., Zwaenepoel, W.: TreadMarks: Distributed Shared Memory on Standard Workstations and Operating Systems. In: Proceedings of the Winter 1994, USENIX Conference, pp. 115–131 (1994)
Stets, R., Dwarkadas, S., Hardavellas, N., Hunt, G., Kontothanassis, L., Parthasarathy, S., Scott, M.: Cashmere-2L: Software Coherent Shared Memory on a Clustered Remote-Write Network. In: Proceedings of the 16th ACM Symposium on Operating System Principle (1997)
Radović, Z., Hagersten, E.: Removing the Overhead from Software-Based Shared Memory. In: Proceedings of Supercomputing 2001 (2001)
Bilas, A., Liao, C., Singh, J.P.: Using Network Interface Support to Avoid Asynchronous Protocol Processing in Shared Virtual Memory Systems. In: Proceedings of the 26th Annual International Symposium on Computer Architecture (ISCA 1999) (1999)
IEEE Std 1003.1-1996, ISO/IEC 9945-1: Portable Operating System Interface (POSIX)–Part1: System Application Programming Interface (API) [C Language] (1996)
InfiniBand(SM) Trade Association: InfiniBand Architecture Specification, Release 1.0 (2000), Available from http://www.infinibandta.org
Sistare, S., Jackson, C.J.: Ultra-High Performance Communication with MPI and the Sun Fire(TM) Link Interconnect. In: Proceedings of the IEEE/ACM SC 2002 Conference (2002)
Scales, D.J., Gharachorloo, K., Thekkath, C.A.: Shasta: A Low-Overhead Software- Only Approach to Fine-Grain Shared Memory. In: Proceedings of the 7th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-VII), pp. 174–185 (1996)
Schoinas, I., Falsafi, B., Lebeck, A.R., Reinhardt, S.K., Larus, J.R., Wood, D.A.: Fine-grain Access Control for Distributed Shared Memory. In: Proceedings of the 6th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-VI), pp. 297–306 (1994)
Schoinas, I., Falsafi, B., Hill, M., Larus, J.R., Wood, D.A.: Sirocco: Cost-Effective Fine-Grain Distributed Shared Memory. In: Proceedings of the 6th International Conference on Parallel Architectures and Compilation Techniques (1998)
Thain, D., Livny, M.: Multiple Bypass, Interposition Agents for Distributed Computing. In: Cluster Computing (2001)
Larus, J.R., Schnarr, E.: EEL: Machine-Independent Executable Editing. In: Proceedings of the SIGPLAN 1995 Conference on Programming Language Design and Implementation, pp. 291–300 (1995)
Hennessy, J.L., Patterson, D.A.: Computer Architecture: A Quantative Approach, 3rd edn. Morgan Kaufman, San Francisco (2003)
Hagersten, E., Koster, M.: WildFire: A Scalable Path for SMPs. In: Proceedings of the 5th IEEE Symposium on High-Performance Computer Architecture, pp. 172–181 (1999)
Löf, H., Radović, Z., Hagersten, E.: THROOM — Running POSIX MultithreadedBinaries on a Cluster. Technical Report 2003-026, Department of Information Technology, Uppsala University (2003)
Woo, S.C., Ohara, M., Torrie, E., Singh, J.P., Gupta, A.: The SPLASH-2 Programs: Characterization and Methodological Considerations. In: Proceedings of the 22nd Annual International Symposium on Computer Architecture (ISCA 1995), pp. 24–36 (1995)
Jamieson, P., Bilas, A.: CableS: Thread Control and Memory Mangement Extentions for Shared Virtual Memory Clusters. In: 8th International Symposium on High-Performance Computer Architeture, HPCA-8 (2002)
Scherer, A., Lu, H., Gross, T., Zwaenepoel, W.: Transparent Adaptive Parallelism on NOWs using OpenMP. In: Principles Practice of Parallel Programming (1999)
Mueller, F.: Distributed Shared-Memory Threads: DSM-Threads. In: Proc. of the Workshop on Run-Time Systems for Parallel Programming (1997)
Radović, Z., Hagersten, E.: Efficient Synchronization for Nonuniform Communication Architectures. In: Proceedings of Supercomputing 2002 (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Löf, H., Radović, Z., Hagersten, E. (2003). THROOM – Supporting POSIX Multithreaded Binaries on a Cluster. In: Kosch, H., Böszörményi, L., Hellwagner, H. (eds) Euro-Par 2003 Parallel Processing. Euro-Par 2003. Lecture Notes in Computer Science, vol 2790. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-45209-6_105
Download citation
DOI: https://doi.org/10.1007/978-3-540-45209-6_105
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-40788-1
Online ISBN: 978-3-540-45209-6
eBook Packages: Springer Book Archive