Publication | Closed Access
Mapping applications with collectives over sub-communicators on torus networks
37
Citations
19
References
2012
Year
Cluster ComputingEngineeringHigh Performance Computer NetworkComputer ArchitectureNetwork AnalysisCommunicationTask MappingScalable RoutingParallel ComputingComputer EngineeringComputer ScienceNetwork TheoryParallel ApplicationDistributed ProcessingNetwork ScienceDistributed ComputingEdge ComputingCloud ComputingTorus NetworkParallel ProgrammingTorus NetworksLarge-scale NetworkNetwork Topology
The placement of tasks in a parallel application on specific nodes of a supercomputer can significantly impact performance. Traditionally, this task mapping has focused on reducing the distance between communicating tasks on the physical network. This minimizes the number of hops that point-to-point messages travel and thus reduces link sharing between messages and contention. However, for applications that use collectives over sub-communicators, this heuristic may not be optimal. Many collectives can benefit from an increase in bandwidth even at the cost of an increase in hop count, especially when sending large messages. For example, placing communicating tasks in a cube configuration rather than a plane or a line on a torus network increases the number of possible paths messages might take. This increases the available bandwidth which can lead to significant performance gains. We have developed Rubik, a tool that provides a simple and intuitive interface to create a wide variety of mappings for structured communication patterns. Rubik supports a number of elementary operations such as splits, tilts, or shifts, that can be combined into a large number of unique patterns. Each operation can be applied to disjoint groups of processes involved in collectives to increase the effective bandwidth. We demonstrate the use of Rubik for improving performance of two parallel codes, pF3D and Qbox, which use collectives over sub-communicators.
| Year | Citations | |
|---|---|---|
Page 1
Page 1