On 5/29/2013 10:22 PM, Jens Domke wrote:
> Currently, DFSSSP maps the src/dest paths statically to certain VLs.
> Especially for deadlock-free topologies this can result in an
> unfair balancing. Some VLs within one link might be overused,
> which results in slower bandwidth for some src/dest pairs.
> 
> The fix changes the VL assignment in two ways: first we balance the
> number of paths per VL; and second we randomly assign the VL
> as long as this doesn't violate the deadlock-freedom.
> 
> 1) The balancing splits the paths across available free VLs, so that
> the maximal number of paths per VL is minimized. We save the number
> of VLs for each deadlock-free channel dependency graph. E.g. for
> 8 VLs, paths per CDG: {14,5,1} => balanced VLs: {{3,3,3,3,2},{3,2},1}
> we have 5 VLs to choose from for CDG(0), two for CDG(1) and
> one for CDG(2).
> 
> 2) get_dfsssp_sl(...) will use the information of (1) to randomly
> assign the VL for one src/dest pair within the possible number of
> VLs. E.g. for a src/dest pair of CDG(0) we have 5 VLs to choose from,
> therefore VL := baseVL + rand()%5
> 
> Signed-off-by: Jens Domke <[email protected]>

Thanks. Applied with removal of debug code.

-- Hal
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to