[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231110152606.123-1-ravis.opensrc@micron.com>
Date: Fri, 10 Nov 2023 20:56:06 +0530
From: Ravi Jonnalagadda <ravis.opensrc@...ron.com>
To: <gregory.price@...verge.com>
CC: <linux-kernel@...r.kernel.org>, <linux-cxl@...r.kernel.org>,
<linux-mm@...ck.org>, <cgroups@...r.kernel.org>,
<linux-doc@...r.kernel.org>, <ying.huang@...el.com>,
<akpm@...ux-foundation.org>, <mhocko@...nel.org>, <tj@...nel.org>,
<lizefan.x@...edance.com>, <hannes@...xchg.org>, <corbet@....net>,
<roman.gushchin@...ux.dev>, <shakeelb@...gle.com>,
<muchun.song@...ux.dev>,
Srinivasulu Thanneeru <sthanneeru.opensrc@...ron.com>,
Ravi Jonnalagadda <ravis.opensrc@...ron.com>
Subject: Re: [RFC PATCH v4 2/3] mm/mempolicy: implement weighted interleave
>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@...verge.com>
Thank you for the collaboration.
Please add the following signatures to this commit.
Co-authored-by: Srinivasulu Thanneeru <sthanneeru.opensrc@...ron.com>
Co-authored-by: Ravi Jonnalagadda <ravis.opensrc@...ron.com>
Signed-off-by: Srinivasulu Thanneeru <sthanneeru.opensrc@...ron.com>
Signed-off-by: Ravi Jonnalagadda <ravis.opensrc@...ron.com>
--
Best Regards,
Ravi Jonnalagadda
Powered by blists - more mailing lists