[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <99bc7a22-6fa4-49e1-b98b-4b6a46f1b9b8@linux.alibaba.com>
Date: Fri, 12 Apr 2024 10:07:35 +0800
From: Heng Qi <hengqi@...ux.alibaba.com>
To: Brett Creeley <bcreeley@....com>, netdev@...r.kernel.org,
virtualization@...ts.linux.dev
Cc: Jakub Kicinski <kuba@...nel.org>, "David S. Miller"
<davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Paolo Abeni <pabeni@...hat.com>, Jason Wang <jasowang@...hat.com>,
"Michael S. Tsirkin" <mst@...hat.com>,
Ratheesh Kannoth <rkannoth@...vell.com>,
Alexander Lobakin <aleksander.lobakin@...el.com>,
Xuan Zhuo <xuanzhuo@...ux.alibaba.com>
Subject: Re: [PATCH net-next v6 2/4] ethtool: provide customized dim profile
management
在 2024/4/11 下午11:19, Brett Creeley 写道:
>
>
> On 4/11/2024 7:12 AM, Heng Qi wrote:
>> Caution: This message originated from an External Source. Use proper
>> caution when opening attachments, clicking links, or responding.
>>
>>
>> The NetDIM library, currently leveraged by an array of NICs, delivers
>> excellent acceleration benefits. Nevertheless, NICs vary significantly
>> in their dim profile list prerequisites.
>>
>> Specifically, virtio-net backends may present diverse sw or hw device
>> implementation, making a one-size-fits-all parameter list impractical.
>> On Alibaba Cloud, the virtio DPU's performance under the default DIM
>> profile falls short of expectations, partly due to a mismatch in
>> parameter configuration.
>>
>> I also noticed that ice/idpf/ena and other NICs have customized
>> profilelist or placed some restrictions on dim capabilities.
>>
>> Motivated by this, I tried adding new params for "ethtool -C" that
>> provides
>> a per-device control to modify and access a device's interrupt
>> parameters.
>>
>> Usage
>> ========
>> 1. Query the currently customized list of the device
>>
>> $ ethtool -c ethx
>> ...
>> rx-eqe-profile:
>> {.usec = 1, .pkts = 256, .comps = 0,},
>> {.usec = 8, .pkts = 256, .comps = 0,},
>> {.usec = 64, .pkts = 256, .comps = 0,},
>> {.usec = 128, .pkts = 256, .comps = 0,},
>> {.usec = 256, .pkts = 256, .comps = 0,}
>> rx-cqe-profile: n/a
>> tx-eqe-profile: n/a
>> tx-cqe-profile: n/a
>>
>> 2. Tune
>> $ ethtool -C ethx rx-eqe-profile 1,1,0_2,2,0_3,3,0_4,4,0_5,5,0
>> $ ethtool -c ethx
>> ...
>> rx-eqe-profile:
>> {.usec = 1, .pkts = 1, .comps = 0,},
>> {.usec = 2, .pkts = 2, .comps = 0,},
>> {.usec = 3, .pkts = 3, .comps = 0,},
>> {.usec = 4, .pkts = 4, .comps = 0,},
>> {.usec = 5, .pkts = 5, .comps = 0,}
>> rx-cqe-profile: n/a
>> tx-eqe-profile: n/a
>> tx-cqe-profile: n/a
>>
>> 3. Hint
>> If the device does not support some type of customized dim
>> profiles, the corresponding "n/a" will display.
>
> What if the user specifies a *-eqe-profile and *-cqe-profile for rx
> and/or tx? Is that supported? If so, which one is the active profile?
I think you mean GET? GET currently does not support any parameters, the
working profile will be displayed.
>
> Maybe I missed this, but it doesn't seem like the output from "ethtool
> -c ethX" shows the active profile it just dumps the profile
> configurations.
Now it is required that dev->priv_flags is set to one of
IFF_PROFILE_{USEC, PKTS, COMPS} (which means that the
driver supports configurable profiles) before the profile can be queried
or do you want to query without this restriction?
Thanks!
>
> Thanks,
>
> Brett
>
> [snip]
Powered by blists - more mailing lists