[mpich-discuss] how to design a efficient distributed load balance algorithm
James Dinan
dinan at mcs.anl.gov
Tue Jan 4 13:04:10 CST 2011
Xiao,
If you know the T_i's and the speed of each machine, then a common
approach is to pose this as a graph partitioning problem. You could
then feed the resulting graph into an existing partitioner (Zoltan, for
example: http://www.cs.sandia.gov/Zoltan/). One challenge you may have
to look into is that the common use case is to give you an equiparition
of the work, but you would actually want unequal partitions with less
work for slow processors and more for the fast ones.
Clustering techniques have also been applied to problems like this and a
simple clustering algorithm might also provide a good solution.
Best,
~Jim.
On 1/4/11 12:28 PM, Xiao Li wrote:
> Hi MPICH2 people,
>
> Suppose I have N jobs and M machines. Each job needs T_i time to finish.
> Now, the problem is I want an algorithm that quickly dispatch N jobs to
> M machines in the constrain that the slowest machine's completion time
> is minimal. Formally speaking, I need a function f:N->M that mapping N
> jobs to M machines with constrain *\argmin_f \max_j \sum_{f(i)=j}{T_i}.
> *Would anybody give me some tips for this algorithm?
>
> cheers
> Xiao
>
>
>
> _______________________________________________
> mpich-discuss mailing list
> mpich-discuss at mcs.anl.gov
> https://lists.mcs.anl.gov/mailman/listinfo/mpich-discuss
More information about the mpich-discuss
mailing list