skip to main content
research-article

A load balanced directory for distributed shared memory objects

Published: 01 April 2015 Publication History

Abstract

We present MultiBend, a novel distributed directory protocol for shared objects, suitable for large-scale distributed shared memory systems that use d -dimensional mesh-based topologies, where d 2 . Each shared object has an owner node that can modify its value. The ownership may change by moving the object from one node to another in response to move requests. The value of an object can be read by other nodes with lookup requests. MultiBend balances the load of the network edges and nodes by forwarding each move or lookup request and response along a path consisting of multiple bends in the mesh. Using an oblivious routing protocol, the multi-bend paths have a small number of overlaps which helps to reduce the maximum edge and node utilization to achieve load balancing. At the same time, MultiBend achieves small stretch for the total path length of any sequence of move requests, compared to the total optimal path length. MultiBend guarantees O ( d 2 log n ) approximation for the load, and O ( d log n ) approximation for the stretch due to move requests, where n is the number of nodes in the mesh network. It also guarantees O ( d 2 ) approximation for the stretch of lookup requests. We evaluate MultiBend with simulations using various sequences of move and lookup operations in a 16 í 16 nodes 2-dimensional mesh network. We compare the simulation results to other protocols which are not tailored for load balancing and we find that our protocol is better by as much as the factor of 6.85 in terms of congestion in the worst-case. To the best of our knowledge, this is the first distributed shared memory directory protocol that considers the network load balancing aspect and achieves good approximation ratio for both the load and the stretch. A novel load balanced directory for distributed shared memory objects is proposed.It is suitable for d -dimensional mesh-based topologies with n nodes and d 2 .It attains O ( d 2 log n ) load approximation and O ( d log n ) stretch approximation.Experimental results confirm the load balancing and low stretch benefits.Previous protocols only considered stretch and cannot control network load.

References

[1]
N.R. Adiga, M.A. Blumrich, D. Chen, P. Coteus, A. Gara, M.E. Giampapa, P. Heidelberger, S. Singh, B.D. Steinmacher-Burow, T. Takken, M. Tsao, P. Vranas, Blue gene/l torus interconnection network, IBM J. Res. Dev., 49 (2005) 265-276.
[2]
A. Agarwal, D. Chaiken, K. Johnson, D. Kranz, J. Kubiatowicz, K. Kurihara, B.H. Lim, G. Maa, D. Nussbaum, M. Parkin, D. Yeung, The mit alewife machine: a large-scale distributed-memory multiprocessor, Tech. Rep. Cambridge, MA, USA (1991).
[3]
N. Alon, G. Kalai, M. Ricklin, L.J. Stockmeyer, Lower bounds on the competitive ratio for mobile user tracking and distributed job scheduling, Theoret. Comput. Sci., 130 (1994) 175-201.
[4]
H. Attiya, L. Epstein, H. Shachnai, T. Tamir, Transactional contention management as a non-clairvoyant scheduling problem, Algorithmica, 57 (2010) 44-61.
[5]
H. Attiya, V. Gramoli, A. Milani, A provably starvation-free distributed directory protocol, in: Proceedings of the 12th International Conference on Stabilization, Safety, and Security of Distributed Systems, SSS, 2010, pp. 405-419.
[6]
Y. Azar, E. Cohen, A. Fiat, H. Kaplan, H. Räcke, Optimal oblivious routing in polynomial time, J. Comput. System Sci., 69 (2004) 383-394.
[7]
C. Busch, M. Magdon-Ismail, J. Xi, Optimal oblivious path selection on the mesh, IEEE Trans. Comput., 57 (2008) 660-671.
[8]
L.M. Censier, P. Feautrier, A new solution to coherence problems in multicache systems, IEEE Trans. Comput., 27 (1978) 1112-1118.
[9]
D. Chaiken, C. Fields, K. Kurihara, A. Agarwal, Directory-based cache coherence in large-scale multiprocessors, Computer, 23 (1990) 49-58.
[10]
D. Chen, N. Eisley, P. Heidelberger, S. Kumar, A. Mamidala, F. Petrini, R. Senger, Y. Sugawara, R. Walkup, B. Steinmacher-Burow, A. Choudhury, Y. Sabharwal, S. Singhal, J.J. Parker, Looking under the hood of the IBM Blue Gene/Q network, in: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, SC, 2012, pp. 69:1-69:12.
[11]
M.J. Demmer, M. Herlihy, The arrow distributed directory protocol, in: Proceedings of the 12th International Symposium on Distributed Computing, DISC, 1998, pp. 119-133.
[12]
R. Guerraoui, M. Herlihy, B. Pochon, Toward a theory of transactional contention managers, in: Proceedings of the Twenty-Fourth Annual ACM Symposium on Principles of Distributed Computing, PODC, 2005, pp. 258-264.
[13]
A. Gupta, M.T. Hajiaghayi, H. Räcke, Oblivious network design, in: Proceedings of the Seventeenth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA, 2006, pp. 970-979.
[14]
M. Herlihy, Y. Sun, Distributed transactional memory for metric-space networks, Distrib. Comput., 20 (2007) 195-208.
[15]
R. Kumar, R. Crepaldi, H. Rowaihy, A.F. Harris, G. Cao, M. Zorzi, T.F.L. Porta, Mitigating performance degradation in congested sensor networks, IEEE Trans. Mob. Comput., 7 (2008) 682-697.
[16]
M. Luby, A simple parallel algorithm for the maximal independent set problem, SIAM J. Comput., 15 (1986) 1036-1053.
[17]
B. Maggs, F.M. auf der Heide, B. Voecking, M. Westermann, Exploiting locality for data management in systems of limited bandwidth, in: Proceedings of the 38th Annual Symposium on Foundations of Computer Science, FOCS, 1997, pp. 284-293.
[18]
M. Naimi, M. Trehel, A. Arnold, A log (n) distributed mutual exclusion algorithm based on path reversal, J. Parallel Distrib. Comput., 34 (1996) 1-13.
[19]
S. Ratnasamy, P. Francis, M. Handley, R. Karp, S. Shenker, A scalable content-addressable network, SIGCOMM Comput. Commun. Rev., 31 (2001) 161-172.
[20]
G. Robins, A. Zelikovsky, Improved steiner tree approximation in graphs, in: Proceedings of the Eleventh Annual ACM-SIAM Symposium on Discrete Algorithms, SODA, 2000, pp. 770-779.
[21]
A.I.T. Rowstron, P. Druschel, Pastry: scalable, decentralized object location, and routing for large-scale peer-to-peer systems, in: Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms, Middleware, 2001, pp. 329-350.
[22]
W.N. Scherer III, M.L. Scott, Advanced contention management for dynamic software transactional memory, in: Proceedings of the Twenty-Fourth Annual ACM Symposium on Principles of Distributed Computing, PODC, 2005, pp. 240-248.
[23]
S.L. Scott, E. Al, The cray T3E network: adaptive routing in a high performance 3D torus, in: Proceedings of Hot Interconnects IV Symposium, 1996, pp. 147-156.
[24]
G. Sharma, C. Busch, Towards load balanced distributed transactional memory, in: The 18th International European Conference on Parallel and Distributed Computing, Euro-Par, 2012, pp. 403-414.
[25]
G. Sharma, C. Busch, An analysis framework for distributed hierarchical directories, Algorithmica (2013) 1-32.
[26]
G. Sharma, C. Busch, Distributed transactional memory for general networks, Distrib. Comput., 27 (2014) 329-362.
[27]
I. Stoica, R. Morris, D. Karger, M.F. Kaashoek, H. Balakrishnan, Chord: a scalable peer-to-peer lookup service for Internet applications, SIGCOMM Comput. Commun. Rev., 31 (2001) 149-160.
[28]
B. Zhang, B. Ravindran, Brief announcement: relay: a cache-coherence protocol for distributed transactional memory, in: Proceedings of the 13th International Conference on Principles of Distributed Systems, OPODIS, 2009, pp. 48-53.
[29]
B.Y. Zhao, L. Huang, J. Stribling, S.C. Rhea, A.D. Joseph, J.D. Kubiatowicz, Tapestry: a resilient global-scale overlay for service deployment, IEEE J. Sel. Areas Commun., 22 (2004) 41-53.

Cited By

View all
  1. A load balanced directory for distributed shared memory objects

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Journal of Parallel and Distributed Computing
    Journal of Parallel and Distributed Computing  Volume 78, Issue C
    April 2015
    78 pages

    Publisher

    Academic Press, Inc.

    United States

    Publication History

    Published: 01 April 2015

    Author Tags

    1. Cache-coherence
    2. Distributed directory
    3. Distributed systems
    4. Load balancing
    5. Mesh network
    6. Oblivious routing
    7. Shared object
    8. Stretch

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 31 Jan 2025

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    View options

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media