Top Banner
Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan
37

Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Dec 27, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links

Ernie Chan

Page 2: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Authors

Ernie Chan Robert van de Geijn

Department of Computer Sciences

The University of Texas at Austin

William Gropp Rajeev Thakur

Mathematics and Computer Science Division

Argonne National Laboratory

Page 3: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Testbed Architecture

IBM Blue Gene/L3D torus point-to-point interconnect networkOne rack

1024 dual-processor nodes Two 8 x 8 x 8 midplanes

Special feature to send simultaneously Use multiple calls to MPI_Isend

Page 4: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Outline

Testbed Architecture Model of Parallel Computation Sending Simultaneously Collective Communication Generalized Algorithms Performance Results Conclusion

Page 5: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Model of Parallel Computation

Target Architectures Distributed-memory parallel architectures

Indexingp computational nodes Indexed 0 … p - 1

Logically Fully ConnectedA node can send directly to any other node

Page 6: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Model of Parallel Computation

TopologyN-dimensional torus

5

9 11

3

7

8

0

10

12 13 15

1

4

14

6

2

Page 7: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Model of Parallel Computation

Old Model of Communicating Between NodesUnidirectional sending or receiving

Page 8: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Model of Parallel Computation

Old Model of Communicating Between NodesSimultaneous sending and receiving

Page 9: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Model of Parallel Computation

Old Model of Communicating Between NodesBidirectional exchange

Page 10: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Model of Parallel Computation

Communicating Between NodesA node can send or receive with 2N other

nodes simultaneously along its 2N different links

Page 11: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Model of Parallel Computation

Communicating Between NodesCannot perform bidirectional exchange on any

link while sending or receiving simultaneously with multiple nodes

Page 12: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Model of Parallel Computation

Cost of Communication

α + nβ

α: startup time, latencyn: number of bytes to communicateβ: per data transmission time, bandwidth

Page 13: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Outline

Testbed Architecture Model of Parallel Computation Sending Simultaneously Collective Communication Generalized Algorithms Performance Results Conclusion

Page 14: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

Old Cost of Communication with Sends to Multiple NodesCost to send to m separate nodes

(α + nβ) m

Page 15: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

New Cost of Communication with Simultaneous Sends

(α + nβ) m

can be replaced with

(α + nβ) + (α + nβ) (m - 1)

Page 16: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

New Cost of Communication with Simultaneous Sends

(α + nβ) m

can be replaced with

(α + nβ) + (α + nβ) (m - 1) τ

Cost of one send Cost of extra sends

Page 17: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

New Cost of Communication with Simultaneous Sends

(α + nβ) m

can be replaced with

(α + nβ) + (α + nβ) (m - 1) τ

Cost of one send Cost of extra sends

0 ≤ τ ≤ 1

Page 18: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

Benchmarking Sending SimultaneouslyLogarithmic-Logarithmic timing graphsMidplane – 512 nodesSending simultaneously with 1 – 6 neighbors8 bytes – 4 MB

Page 19: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

Page 20: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

Cost of Communication with Simultaneous Sends

(α + nβ) (1 + (m - 1) τ)

Page 21: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

Page 22: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Sending Simultaneously

Page 23: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Outline

Testbed Architecture Model of Parallel Computation Sending Simultaneously Collective Communication Generalized Algorithms Performance Results Conclusion

Page 24: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Collective Communication

Broadcast (Bcast)Motivating example

Before After

Page 25: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Outline

Testbed Architecture Model of Parallel Computation Sending Simultaneously Collective Communication Generalized Algorithms Performance Results Conclusion

Page 26: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Generalized Algorithms

Short-Vector AlgorithmsMinimum-Spanning Tree

Long-Vector AlgorithmsBucket Algorithm

Page 27: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Generalized Algorithms

Minimum-Spanning Tree

Page 28: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Generalized Algorithms

Minimum-Spanning TreeDivide p nodes into N+1 partitions

Page 29: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Generalized Algorithms

Minimum-Spanning TreeDisjointed partitions on N-dimensional mesh

5

9 11

3

7

8

0

10

12 13 15

1

4

14

6

2

Page 30: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Generalized Algorithms

Minimum-Spanning TreeDivide dimensions by a decrementing counter

from N+1

5

9 11

3

7

8

0

10

12 13 15

1

4

14

6

2

Page 31: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Generalized Algorithms

Minimum-Spanning TreeNow divide into 2N+1 partitions

5

9 11

3

7

8

0

10

12 13 15

1

4

14

6

2

Page 32: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Outline

Testbed Architecture Model of Parallel Computation Sending Simultaneously Collective Communication Generalized Algorithms Performance Results Conclusion

Page 33: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Performance Results

Single point-to-pointcommunication

Page 34: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Performance Results

my-bcast-MST

Page 35: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Outline

Testbed Architecture Model of Parallel Computation Sending Simultaneously Collective Communication Generalized Algorithms Performance Results Conclusion

Page 36: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Conclusion

IBM Blue Gene/L supports functionality of sending simultaneouslyBenchmarking along with model checking

verifies this claim New generalized algorithms show clear

performance gains

Page 37: Collective Communication on Architectures that Support Simultaneous Communication over Multiple Links Ernie Chan.

Conclusion

Future DirectionsRoom for optimization to reduce

implementation overheadWhat if not using MPI_COMM_WORLD?Possible new algorithm for Bucket Algorithm

Questions? [email protected]