pub trait OutDegreePartitionOp<NI, EV>where
    NI: Idx,{
    // Required method
    fn out_degree_partition(&self, concurrency: usize) -> Vec<Range<NI>>;
}
Expand description

Partition the node set based on the out degrees of the nodes.

Required Methods§

source

fn out_degree_partition(&self, concurrency: usize) -> Vec<Range<NI>>

Creates a range-based out degree partition of the nodes.

Divide the nodes into concurrency number of ranges such that these ranges have roughly equal total out degree. That is, the sum of the out degrees of the nodes of each range should be roughly equal to the extent that that’s actually possible. The length of the returned vector will never exceed concurrency.

Implementors§

source§

impl<NI, EV, D> OutDegreePartitionOp<NI, EV> for Dwhere NI: Idx, D: Graph<NI> + DirectedDegrees<NI> + DirectedNeighborsWithValues<NI, EV>,