Title: Basic communication operations on a mesh
1Basic communication operations on a mesh
- One-to-all broadcast
- All-to-all broadcast
- All-to-all personalized communication
- Based on the ring (linear array) communication
algorithm
2Mesh one-to-all broadcast
- Phase 1 a row of the mesh with the sender
performs a one-to-all broadcast on ring(linear
array) - Phase 2 each column of the mesh performs a
one-to-all broadcast on ring(linear array)
3Phase 1 A row of the mesh with the sender 0
performs a one-to-all broadcast on the linear
array
2
3
(0)
0
1
The sender
One-to-all broadcast
4After phase 1
2
3
(0)
(0)
0
1
5Phase 2 Each column of the mesh performs a
one-to-all broadcast on the linear array
2
3
(0)
(0)
0
1
6After phase 2
(0)
(0)
2
3
(0)
(0)
0
1
7- Phase 1 takes time
- Phase 2 takes time
- The total time
8All-to-all broadcast
2
3
(2)
(3)
message
0
1
(1)
(0)
9Phase 1 Each row of the mesh performs an
all-to-all broadcast on the linear array
(2)
(3)
2
3
(0)
(1)
0
1
10After phase 1
(2,3)
2
3
(2,3)
(0,1)
0
1
(0,1)
11- Phase 1 takes time
- After phase 1,
- the size of each message
12Phase 2 Each column of the mesh performs an
all-to-all broadcast on the linear array
2
3
(2,3)
(2,3)
1
0
(0,1)
(0,1)
13After phase 2
2
3
(0,1, 2,3)
(0,1, 2,3)
1
0
(0,1, 2,3)
(0,1, 2,3)
14- Phase 1 takes time
- After phase1, the message size
- Phase 2 takes time
15All-to-all personalized communication
- Initially, every node has p messages.
- Each node assembles its data into groups
163(0),3(2) 3(1),3(3)
2(0),2(2) 2(1),2(3)
2
3
0(0),0(2) 0(1),0(3)
1(0),1(2) 1(1),1(3)
0
1
17Phase 1 Each row of the mesh performs an
all-to-all personalized communication on the
linear array
3(0),3(2) 3(1),3(3)
2(0),2(2) 2(1),2(3)
2
3
0(0),0(2) 0(1),0(3)
1(0),1(2) 1(1),1(3)
0
1
18After phase 1
2(1),2(3) 3(1),3(3)
2(0),2(2) 3(0),3(2)
2
3
0(0),0(2) 1(0),1(2)
0(1),0(3) 1(1),1(3)
0
1
19Phase 2
2(1),2(3) 3(1),3(3)
2(0),2(2) 3(0),3(2)
2
3
0(0),0(2) 1(0),1(2)
0(1),0(3) 1(1),1(3)
0
1
20Each column of the mesh performs an all-to-all
Personalized communication on the linear array
2(1),2(3) 3(1),3(3)
2(0),2(2) 3(0),3(2)
2
3
0(0),0(2) 1(0),1(2)
0(1),0(3) 1(1),1(3)
0
1
21After phase 2
0(3),2(3) 1(3),3(3)
0(2),2(2) 1(2),3(2)
2
3
0(0),2(0) 1(0),3(0)
0(1),2(1) 1(1),3(1)
0
1
22- In phase 1
- The number of processors
- The message size on each processor
- The time for phase 1
-
The time on a ring
23- In phase 1
- The number of processors
- The message size on each processor
- The time for phase 1
- the time for phase 2 the time for phase 1
- The total time
24Communication times on a mesh
- One-to-all broadcast / all-to-one reduction
- All-to-all broadcast / all-to-all reduction
- All-to-all personalized communication