DPDK usage discussions
 help / color / mirror / Atom feed
From: amit sehas <cun23@yahoo.com>
To: Wisam Jaddo <wisamm@nvidia.com>, Nishant Verma <vnish11@gmail.com>
Cc: "users@dpdk.org" <users@dpdk.org>
Subject: Re: core performance
Date: Mon, 23 Sep 2024 23:17:54 +0000 (UTC)	[thread overview]
Message-ID: <1299564509.11731667.1727133474900@mail.yahoo.com> (raw)
In-Reply-To: <CAHhCjUEhRYQPzOdoh+WvV0utNLPfeg1wWtGorCrU7A+zwVkdvQ@mail.gmail.com>

Thanks for the responses, this is on AWS, which is utilizing Xeon with hyperthreading. Not utilizing hyperthreading is not an option.

After trying a few things i am narrowing down on the following approach:

only for the critical threads we could utilize:  rte_thread_set_priority to RTE_THREAD_PRIORITY_REALTIME_CRITICAL

however this API requires a rte_thread_t parameter, if we utilize rte_eal_remote_launch, we are not provided with this parameter.
I am searching through the code to see if there is an API where i can obtain the rte_thread_t for the current thread that was launched with rte_eal_remote_launch.

regards






On Monday, September 23, 2024 at 03:18:11 PM PDT, Nishant Verma <vnish11@gmail.com> wrote: 





Also make sure all core you are using are physical core not the logical core. 
Secondly, check your core isolation options and apply them accordingly.


.

Regards,
Nishant Verma


On Mon, Sep 23, 2024 at 6:04 PM Wisam Jaddo <wisamm@nvidia.com> wrote:
> Hello Amit,
> 
>> -----Original Message-----
>> From: amit sehas <cun23@yahoo.com>
>> Sent: Monday, September 23, 2024 11:57 PM
>> To: users@dpdk.org
>> Subject: core performance
>> 
>> We are seeing different dpdk threads (launched via rte_eal_remote_launch()),
>> demonstrate very different performance.
>> 
>> 
>> 
>> After placing counters all over the code, we realize that some threads are
>> uniformly slow, in other words there is no application level issue that is
>> throttling one thread over the other. We come to the conculsion that either
>> the Cores on which they are running are not at the same frequency which
>> seems doubtful or the threads are not getting a chance to execute on the cores
>> uniformly.
>> 
>> 
>> 
>> It seems that isolcpus has been deprecated in recent versions of linux.
>> 
>> 
>> 
>> What is the recommended approach to prevent the kernel from utilizing some
>> CPU threads, for anything other than the threads that are launched on them.
> 
> If you are wishing to run each thread on separate core, try to use rte_eal_mp_remote_launch()
> instead of rte_eal_remote_launch(), make sure that your CPU is isolated, and you are passing correct
> Cores that were isolated to your app using -c, -l.
> 
> 
>> 
>> 
>> 
>> Is there some API in dpdk which also helps us determine which CPU core the
>> thread is pinned to?
>> 
>> I did not find any code in dpdk which actually performed pinning of a thread to
>> a CPU core.
>> 
>> 
>> 
>> In our case it is more or less certain that the different threads are simply not
>> getting the same CPU core time, as a result some are demonstrating higher
>> throughput than the others ...
>> 
>> 
>> 
>> how do we fix this?
> 
> BRs,
> Wisam Jaddo
> 


  reply	other threads:[~2024-09-23 23:18 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1987164393.11670398.1727125003663.ref@mail.yahoo.com>
2024-09-23 20:56 ` amit sehas
2024-09-23 21:56   ` Wisam Jaddo
2024-09-23 22:17     ` Nishant Verma
2024-09-23 23:17       ` amit sehas [this message]
2024-09-24  1:14         ` Nishant Verma
     [not found]           ` <2025533199.11789856.1727143607670@mail.yahoo.com>
     [not found]             ` <CAHhCjUFjqobchJ79z0BLLRXrLZdb2QyVPM6fbji6T7jpiKLa2Q@mail.gmail.com>
2024-09-24 14:40               ` amit sehas
2024-09-24 16:38                 ` Stephen Hemminger
2024-09-24 20:47                   ` amit sehas
2024-09-26 12:32                     ` amit sehas
2024-09-26 16:56                       ` amit sehas
2024-09-26 17:03                         ` amit sehas
2024-09-27  3:03                           ` Stephen Hemminger
2024-09-27  3:13                             ` amit sehas
2024-09-27  3:23                               ` amit sehas
2024-09-24 13:25         ` Stephen Hemminger

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=1299564509.11731667.1727133474900@mail.yahoo.com \
    --to=cun23@yahoo.com \
    --cc=users@dpdk.org \
    --cc=vnish11@gmail.com \
    --cc=wisamm@nvidia.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).