DPDK patches and discussions
 help / color / mirror / Atom feed
From: kumaraparameshwaran rathinavel <kumaraparamesh92@gmail.com>
To: Ferruh Yigit <ferruh.yigit@amd.com>
Cc: dev@dpdk.org, hujiayu.hu@foxmail.com
Subject: Re: RFC - GRO Flowlookup Optimisation
Date: Wed, 22 Nov 2023 21:05:21 +0530	[thread overview]
Message-ID: <CANxNyasDckWdOCQdr6TUHy0zgqYC97FXm7Z9THOJ5a_YXFSzuw@mail.gmail.com> (raw)
In-Reply-To: <ee977cb2-4e50-46ed-9406-baa5f6b0cefa@amd.com>

[-- Attachment #1: Type: text/plain, Size: 1751 bytes --]

On Wed, Nov 22, 2023 at 4:05 PM Ferruh Yigit <ferruh.yigit@amd.com> wrote:

> On 11/22/2023 6:01 AM, kumaraparameshwaran rathinavel wrote:
> > Hi Folks,
> >
> > The current GRO code uses an unoptimised version of flow lookup where
> > each flow in the table is iterated over during the flow matching
> > process. For a rte_gro_reassemble_burst in lightweight mode this would
> > not cause much of an impact. But with rte_gro_reassemble which is done
> > with a timeout interval, this causes higher CPU utilisation during
> > throughput tests. The proposal here is to use a Hash based flowtable
> > which could make use of the  rte_hash table implementation in DPDK.
> > There could be a hash table for each of the GRO types. The lookup
> > function and the key could be different for each one of the types. If
> > there is a consensus that this could have a better performance impact I
> > would work on an initial patch set. Please let me know your thoughts.
> >
>
>
> Hi Kumara,
>
> Your proposal looks reasonable to me, I think it worth to try.
> cc'ed techboard for more comment.
>
>> Thanks Ferruh - Sure I will get a initial patch set with TCP/IPv4 GRO
>> type.
>>
>
> Do you have any performance measurement with the existing code? To have
> it helps to evaluate impact of the change.
>
>> I did some testing sometime back and the observations were that on a
>> 10Gbps link, the throughput value with iperf testing
>> of unoptimised and optimised were almost the same, but the CPU
>> conservation was upto 30-35%. So any tests running in
>> parallel like imix kind of traffic would definitely have better results.
>> I will try to profile the two cases with some performance impacting
>> results.
>>
>

[-- Attachment #2: Type: text/html, Size: 2442 bytes --]

  reply	other threads:[~2023-11-22 15:35 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-22  6:01 kumaraparameshwaran rathinavel
2023-11-22 10:35 ` Ferruh Yigit
2023-11-22 15:35   ` kumaraparameshwaran rathinavel [this message]
2023-11-22 15:14 胡嘉瑜
2023-11-22 15:36 ` kumaraparameshwaran rathinavel

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=CANxNyasDckWdOCQdr6TUHy0zgqYC97FXm7Z9THOJ5a_YXFSzuw@mail.gmail.com \
    --to=kumaraparamesh92@gmail.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@amd.com \
    --cc=hujiayu.hu@foxmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).