Re: [RFC PATCH v4 2/3] mm/mempolicy: implement weighted interleave

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>Gregory Price wrote:

>Implements interleave weighting for bandwidth optimization.
>
>The mempolicy MPOL_INTERLEAVE utilizes the node weights to implement
>weighted interleave.
>
>There are 3 integration points:
>
>interleave_nodes:
>  Counts the number of allocations as they occur, and applies the
>  weight for the current node.  When the weight reaches 0, switch
>  to the next node.
>
>offset_il_node:
>  Gets the total weight of the nodemask as well as each individual
>  node weight, then calculates the node based on the given index n.
>
>bulk_array_interleave:
>  Gets the total weight of the nodemask as well as each individual
>  node weight, then calculates the number of "interleave rounds" as
>  well as any delta ("partial round").  Calculates the number of
>  pages for each node and allocates them.
>
>  If a node was scheduled for interleave via interleave_nodes, the
>  current weight (pol->cur_weight) will be allocated first, before
>  the remaining bulk calculation is done. This simplifies the
>  calculation at the cost of an additional allocation call.
>
>The functions mempolicy_get_il_weight and mempolicy_get_il_weights
>were added so that should mempolicy be extended in the future to
>include local mempolicy weights, there is a clear integration point.
>
>Signed-off-by: Gregory Price <gregory.price@xxxxxxxxxxxx>

Thank you for the collaboration.
Please add the following signatures to this commit.
Co-authored-by: Srinivasulu Thanneeru <sthanneeru.opensrc@xxxxxxxxxx>
Co-authored-by: Ravi Jonnalagadda <ravis.opensrc@xxxxxxxxxx>
Signed-off-by: Srinivasulu Thanneeru <sthanneeru.opensrc@xxxxxxxxxx>
Signed-off-by: Ravi Jonnalagadda <ravis.opensrc@xxxxxxxxxx>

--
Best Regards,
Ravi Jonnalagadda




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [Monitors]

  Powered by Linux