CSC/ECE 506 Spring 2010/ch 12 PP
Choosing the “Best” Network
While there is no best network that would work well for all applications, it greatly depends on the given application and the parallel system at hand. The following factors affect the choice of interconnection network.
1. Performance Requirements: Minimize message latency, avoid network from saturating (unable to deliver messages injected by nodes) and increase throughput of the network.
2. Scalability: Adding more processors should increase I/O bandwidth, Memory Bandwidth and Network Bandwidth should increase proportionally.
3. Incremental expandability: Should provide incremental expandability, allowing addition of a small number of nodes while minimizing resource wastage. For example, a network designed for number of processors to be a power of 4 makes it difficult to expand.
4. Partitionability: May be required for security reasons. If network can be partitioned into smaller systems, traffic produced by one user will not affect the others.
5. Simplicity: Simple Design lead to higher clock frequencies and better performance.
6. Distance Span: Maximum distance between nodes should be small.
7. Physical Constraints: Complexity of the connection is limited by the maximum wire density possible and by the maximum pin count. Factors like packaging, wiring, operating temperature should be taken into account since they pose many limitations on designs.
8. Reliability and Reparability: Should allow easy upgrades and repairs. Should minimize faults or detect them and correct them.
9. Expected Workloads: If kind of application is known in advance, network can be optimized for it. If not, network should be robust, design paramenters should be selected to perform well over a wide range of traffic conditions.
10. Cost Constraints: The “best” network might be too expensive. Alternative design considerations are important to meet cost constraints.