From: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
To: Dave Jiang <dave.jiang@intel.com>
Cc: <linux-cxl@vger.kernel.org>, <linux-pci@vger.kernel.org>,
<dan.j.williams@intel.com>, <ira.weiny@intel.com>,
<vishal.l.verma@intel.com>, <alison.schofield@intel.com>,
<dave@stgolabs.net>
Subject: Re: [PATCH v3 2/2] cxl: Calculate region bandwidth of targets with shared upstream link
Date: Fri, 7 Jun 2024 18:58:05 +0100 [thread overview]
Message-ID: <20240607185805.00007872@Huawei.com> (raw)
In-Reply-To: <92744829-dbb8-4681-914d-c36797518e3c@intel.com>
On Fri, 7 Jun 2024 09:12:31 -0700
Dave Jiang <dave.jiang@intel.com> wrote:
> On 6/7/24 7:30 AM, Jonathan Cameron wrote:
> >
> >>>> + if (is_cxl_root(parent_port)) {
> >>>> + ctx->port = parent_port;
> >>>> + cxl_coordinates_combine(ctx->coord, ctx->coord,
> >>>> + dport->coord);
> >>>
> >>> I'm a bit lost in all the levels of iteration so may have missed it.
> >>>
> >>> Do we assume that GP BW (which is the root bridge) is shared across multiple root
> >>> ports on that host bridge if they are both part of the interleave set?
> >>
> >> Do we need to count the number of RPs under a HB and do min(aggregated_RPs_BW, (GP_BW / no of RPs) * affiliated_RPs_in_region)?
> >
> > I'm not 100% sure I understand the question.
> >
> > Taking this again and expanding it another level.
> >
> >
> >
> > Host CPU
> > ______________________________________
> > | |
> > | |
> > | 3 from GP/HMAT | 3 from GP/HMAT
> > _____|_____ _______|______
> > RP RP RP RP
> > 2| |2 2| |2
> > __|__ ___|__ __|___ __|____
> > |1 |1 1| |1 |1 |1 |1 |1
> > EP EP EP EP EP EP EP EP
> >
> > Then your maths
> >
> > aggregated RPs BW is 8
> > (GP_BW/no of RPS) * affliated RPS in region.
> > = (3/2 * 4)
> > = 6
>
> While the result is the same, the math would be this below right?
> min((3/2 * 2), 4) + min((3/2 * 2), 4)
That's better, but I thought your thing above was about RPs in a HB vs
RPs across the whole thing. Hence was trying to align with that.
I'm lost and it's end of Friday. Lets work this out with code.
Jonathan
>
> > Which is correct. So yes, I think that works if we assume everything is balanced.
> > I'm fine with that assumption as that should be the common case.
> >
> >
> > Jonathan
> >
> >
>
next prev parent reply other threads:[~2024-06-07 17:58 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-29 21:38 [PATCH v3 0/2] cxl: Region bandwidth calculation for targets with shared upstream link Dave Jiang
2024-05-29 21:38 ` [PATCH v3 1/2] cxl: Preserve the CDAT access_coordinate for an endpoint Dave Jiang
2024-05-29 21:38 ` [PATCH v3 2/2] cxl: Calculate region bandwidth of targets with shared upstream link Dave Jiang
2024-06-05 14:19 ` Jonathan Cameron
2024-06-05 18:05 ` Dave Jiang
2024-06-06 23:39 ` Dave Jiang
2024-06-07 14:30 ` Jonathan Cameron
2024-06-07 16:12 ` Dave Jiang
2024-06-07 17:58 ` Jonathan Cameron [this message]
2024-06-05 18:38 ` [PATCH v3 0/2] cxl: Region bandwidth calculation for " Alison Schofield
2024-06-06 23:27 ` Dave Jiang
2024-06-06 23:46 ` Dave Jiang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240607185805.00007872@Huawei.com \
--to=jonathan.cameron@huawei.com \
--cc=alison.schofield@intel.com \
--cc=dan.j.williams@intel.com \
--cc=dave.jiang@intel.com \
--cc=dave@stgolabs.net \
--cc=ira.weiny@intel.com \
--cc=linux-cxl@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=vishal.l.verma@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.