Issue No. 04 - April (2005 vol. 16)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TPDS.2005.48
Loris Marchal , IEEE
Yves Robert , IEEE
<p><b>Abstract</b>—In this paper, we consider the communications involved by the execution of a complex application, deployed on a heterogeneous platform. Such applications extensively use macrocommunication schemes, for example, to broadcast data items. Rather than aiming at minimizing the execution time of a single broadcast, we focus on the steady-state operation. We assume that there is a large number of messages to be broadcast in pipeline fashion, and we aim at maximizing the throughput, i.e., the (rational) number of messages which can be broadcast every time-step. We target heterogeneous platforms, modeled by a graph where resources have different communication and computation speeds. Achieving the best throughput may well require that the target platform is used in totality: We show that neither spanning trees nor DAGs are as powerful as general graphs. We show how to compute the best throughput using linear programming, and how to exhibit a periodic schedule, first when restricting to a DAG, and then when using a general graph. The polynomial compactness of the description comes from the decomposition of the schedule into several broadcast trees that are used concurrently to reach the best throughput. It is important to point out that a concrete scheduling algorithm based upon the steady-state operation is asymptotically optimal, in the class of all possible schedules (not only periodic solutions).</p>
Scheduling, collective communications, NP-completeness, broadcast, heuristics, heterogeneous clusters, grids.
O. Beaumont, L. Marchal, Y. Robert and A. Legrand, "Pipelining Broadcasts on Heterogeneous Platforms," in IEEE Transactions on Parallel & Distributed Systems, vol. 16, no. , pp. 300-313, 2005.