Synchronization methods for distributed processing systems having replicated data
First Claim
1. A synchronization method for distributed processing systems having replicated data comprising the steps of:
- establishing a network of computing nodes, each node having at least one data file to be shared with at least one other node;
implementing a ShuffleNet topology to control the flow of new data among the computing nodes, wherein there are an even number, N=2m, of nodes in the network;
organizing the computing nodes into two sets, X=x0, . . . , xm-1 and Y=y0, . . . , ym-1, wherein the subscripts are always to be taken modulo m and x and y are used as set designations;
synchronizing simultaneously the nodes in X with nodes in Y according to a matching between the two sets wherein rounds of communication are grouped into two batches.
4 Assignments
0 Petitions
Accused Products
Abstract
A data synchronization system, which in one embodiment, uses a ShuffleNet topology requiring an even number, N=2m, of nodes in the system. These nodes are organized into two sets, X=x0, . . . , xm-1 and Y=y0, . . . , ym-1, wherein the subscripts are always to be taken modulo m. Each "round" of communication entails simultaneously synchronizing the nodes in X with nodes in Y according to a matching between the two sets. The rounds are grouped into two "batches," batch Bj which consists of rounds R2j-1 and R2j-2 for j≧1. During each odd batch B2j-1, each xi synchronizes with y2i+2j-2 and with y2i+2j-1. In another embodiment, the data synchronization is based on a hypercube scheme, wherein each node is labeled by a binary string and any two nodes with their labels differing by one bit are connected by an edge and only adjacent nodes, i.e. those nodes connected by an edge, can communicate and exchange data directly according to an update schedule. In a third embodiment, a hypercube scheme is used, but the number of nodes is assumed to be a power of 2 or N=2m. This embodiment, like the second embodiment, uses the labeling of nodes by their binary representation, but the matchings of nodes used to determine the update schedule is not confined to the hypercube edges. Instead, a general cyclic matching scheme is used.
-
Citations
20 Claims
-
1. A synchronization method for distributed processing systems having replicated data comprising the steps of:
-
establishing a network of computing nodes, each node having at least one data file to be shared with at least one other node; implementing a ShuffleNet topology to control the flow of new data among the computing nodes, wherein there are an even number, N=2m, of nodes in the network; organizing the computing nodes into two sets, X=x0, . . . , xm-1 and Y=y0, . . . , ym-1, wherein the subscripts are always to be taken modulo m and x and y are used as set designations; synchronizing simultaneously the nodes in X with nodes in Y according to a matching between the two sets wherein rounds of communication are grouped into two batches. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A synchronization method for distributed processing systems having replicated data comprising the steps of:
-
establishing a network of computing nodes, each node having at least one data file to be shared with at least one other node; implementing a hypercube topology to control the flow of new data among the computing nodes, wherein each node is labeled by a binary string and any two nodes which have their label differing by one bit are connected by an edge and only adjacent nodes can communicate and exchange data directly, wherein a timer based schedule is utilized to synchronize the computing nodes. - View Dependent Claims (9, 10)
-
-
11. A synchronization method for distributed processing systems having replicated data comprising the steps of:
-
establishing a network of computing nodes, each node having at least one data file to be shared with at least one other node; implementing a hypercube topology to control the flow of new data among the computing nodes, wherein each node is labeled by a binary string and any two nodes which have their label differing by one bit are connected by an edge and only adjacent nodes can communicate and exchange data directly, wherein a precedence relationship based schedule is utilized to synchronize the computing nodes.
-
-
12. A synchronization method for distributed processing systems having replicated data comprising the steps of:
-
establishing a network of computing nodes, each node having at least one data file to be shared with at least one other node; implementing a hypercube topology to control the flow of new data among the computing nodes, wherein each node is labeled by a binary string and any two nodes which have their label differing by one bit are connected by an edge and only adjacent nodes can communicate and exchange data directly, wherein a continuously repeating schedule is utilized to synchronize the computing nodes.
-
-
13. A synchronization method for distributed processing systems having replicated data comprising the steps of:
-
establishing a network of computing nodes, each node having at least one data file to be shared with at least one other node; implementing a generalized hypercube like topology to control the flow of data files among the computing nodes, wherein each node is labeled by a binary string and any two nodes labels x=(x1, . . . , xm) which have a non-zero binary vector and pairs are matched such that a matching of pairs, Mx, pairs a node labeled u with a node labeled x+u wherein the addition is coordinatewise and modulo 2, so that x+u+u=x and pair matching is symmetric. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification