DPDK usage discussions
 help / color / mirror / Atom feed
* [dpdk-users] Why DPDK latency is high when sending message in interval?
@ 2018-10-27 23:36 Sungho Hong
  2018-10-28  7:53 ` Vincenzo Maffione
  0 siblings, 1 reply; 8+ messages in thread
From: Sungho Hong @ 2018-10-27 23:36 UTC (permalink / raw)
  To: users

Hello DPDK experts,

I'am testing the performance of DPDK not on high speed polling
but sending each packet with 100 microsecond interval.

As same as the POSIX, DPDK performance degrades into 90 ~ 100 microsecond
round-trip latency per  4KB message.

Is there a way to improve the performance, when I am expecting to send the
packet on 100 microsecond interval?

And is there an explanation of the slowdown of DPDK when I am sending the
packet on 100 microsecond interval?

Any insights on this issue will be highly appreciated..
Thanks

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-users] Why DPDK latency is high when sending message in interval?
  2018-10-27 23:36 [dpdk-users] Why DPDK latency is high when sending message in interval? Sungho Hong
@ 2018-10-28  7:53 ` Vincenzo Maffione
  2018-10-28  8:01   ` Sungho Hong
  0 siblings, 1 reply; 8+ messages in thread
From: Vincenzo Maffione @ 2018-10-28  7:53 UTC (permalink / raw)
  To: maverickjin88; +Cc: users

Hi,
  How are you wating for the 100us interval? If you use sleep primitives
like usleep() or nanosleep() your delay is
likely due to the nanosleep() default timerslack, or deep C-states enabled,
or frequency scaling, etc.
This would be completely unrelated to DPDK.

Cheers,
  Vincenzo

Il giorno dom 28 ott 2018 alle ore 01:36 Sungho Hong <
maverickjin88@gmail.com> ha scritto:

> Hello DPDK experts,
>
> I'am testing the performance of DPDK not on high speed polling
> but sending each packet with 100 microsecond interval.
>
> As same as the POSIX, DPDK performance degrades into 90 ~ 100 microsecond
> round-trip latency per  4KB message.
>
> Is there a way to improve the performance, when I am expecting to send the
> packet on 100 microsecond interval?
>
> And is there an explanation of the slowdown of DPDK when I am sending the
> packet on 100 microsecond interval?
>
> Any insights on this issue will be highly appreciated..
> Thanks
>


-- 
Vincenzo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-users] Why DPDK latency is high when sending message in interval?
  2018-10-28  7:53 ` Vincenzo Maffione
@ 2018-10-28  8:01   ` Sungho Hong
  2018-10-28  8:07     ` Vincenzo Maffione
  0 siblings, 1 reply; 8+ messages in thread
From: Sungho Hong @ 2018-10-28  8:01 UTC (permalink / raw)
  To: v.maffione; +Cc: users

Thank you very much for the reply.
But in that case, should I busy wait, to create the delay?

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-users] Why DPDK latency is high when sending message in interval?
  2018-10-28  8:01   ` Sungho Hong
@ 2018-10-28  8:07     ` Vincenzo Maffione
  2018-10-28 10:15       ` Sungho Hong
  2018-10-29 15:23       ` Stephen Hemminger
  0 siblings, 2 replies; 8+ messages in thread
From: Vincenzo Maffione @ 2018-10-28  8:07 UTC (permalink / raw)
  To: maverickjin88; +Cc: users

If you don't care about CPU utilization, busy-wait is the way to go.
Otherwise you can try to usleep() for something like 60-70 us (to lower the
CPU utilization), and then busy-wait for the rest of the interval (so that
you still have maximum precision).

You may want to have a look at this
https://academic.oup.com/comjnl/article/61/6/808/4259797 , specially
sections 4.3 and 4.1.

Cheers,
  Vincenzo

Il giorno dom 28 ott 2018 alle ore 09:01 Sungho Hong <
maverickjin88@gmail.com> ha scritto:

> Thank you very much for the reply.
> But in that case, should I busy wait, to create the delay?
>
>
>

-- 
Vincenzo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-users] Why DPDK latency is high when sending message in interval?
  2018-10-28  8:07     ` Vincenzo Maffione
@ 2018-10-28 10:15       ` Sungho Hong
  2018-10-29 15:23       ` Stephen Hemminger
  1 sibling, 0 replies; 8+ messages in thread
From: Sungho Hong @ 2018-10-28 10:15 UTC (permalink / raw)
  To: v.maffione; +Cc: users

Thank you very much for the help

On Sun, Oct 28, 2018 at 1:07 AM Vincenzo Maffione <v.maffione@gmail.com>
wrote:

> If you don't care about CPU utilization, busy-wait is the way to go.
> Otherwise you can try to usleep() for something like 60-70 us (to lower
> the CPU utilization), and then busy-wait for the rest of the interval (so
> that you still have maximum precision).
>
> You may want to have a look at this
> https://academic.oup.com/comjnl/article/61/6/808/4259797 , specially
> sections 4.3 and 4.1.
>
> Cheers,
>   Vincenzo
>
> Il giorno dom 28 ott 2018 alle ore 09:01 Sungho Hong <
> maverickjin88@gmail.com> ha scritto:
>
>> Thank you very much for the reply.
>> But in that case, should I busy wait, to create the delay?
>>
>>
>>
>
> --
> Vincenzo
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-users] Why DPDK latency is high when sending message in interval?
  2018-10-28  8:07     ` Vincenzo Maffione
  2018-10-28 10:15       ` Sungho Hong
@ 2018-10-29 15:23       ` Stephen Hemminger
  2018-10-29 15:25         ` Vincenzo Maffione
  1 sibling, 1 reply; 8+ messages in thread
From: Stephen Hemminger @ 2018-10-29 15:23 UTC (permalink / raw)
  To: Vincenzo Maffione; +Cc: maverickjin88, users

On Sun, 28 Oct 2018 09:07:02 +0100
Vincenzo Maffione <v.maffione@gmail.com> wrote:

> If you don't care about CPU utilization, busy-wait is the way to go.
> Otherwise you can try to usleep() for something like 60-70 us (to lower the
> CPU utilization), and then busy-wait for the rest of the interval (so that
> you still have maximum precision).
> 
> You may want to have a look at this
> https://academic.oup.com/comjnl/article/61/6/808/4259797 , specially
> sections 4.3 and 4.1.
> 
> Cheers,
>   Vincenzo
> 
> Il giorno dom 28 ott 2018 alle ore 09:01 Sungho Hong <
> maverickjin88@gmail.com> ha scritto:  
> 
> > Thank you very much for the reply.
> > But in that case, should I busy wait, to create the delay?
> >
> >
> >  
> 

If doing very brief and exact sleep, you should change your thread priority to
one of the Real Time classes.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dpdk-users] Why DPDK latency is high when sending message in interval?
  2018-10-29 15:23       ` Stephen Hemminger
@ 2018-10-29 15:25         ` Vincenzo Maffione
  0 siblings, 0 replies; 8+ messages in thread
From: Vincenzo Maffione @ 2018-10-29 15:25 UTC (permalink / raw)
  To: stephen; +Cc: Sungho Hong, users

Right, indeed the timerslack (50us) is not added if the process is
real-time.
But the C-state problem can still hit you hard.

Cheers,
  Vincenzo

Il giorno lun 29 ott 2018 alle ore 16:23 Stephen Hemminger <
stephen@networkplumber.org> ha scritto:

> On Sun, 28 Oct 2018 09:07:02 +0100
> Vincenzo Maffione <v.maffione@gmail.com> wrote:
>
> > If you don't care about CPU utilization, busy-wait is the way to go.
> > Otherwise you can try to usleep() for something like 60-70 us (to lower
> the
> > CPU utilization), and then busy-wait for the rest of the interval (so
> that
> > you still have maximum precision).
> >
> > You may want to have a look at this
> > https://academic.oup.com/comjnl/article/61/6/808/4259797 , specially
> > sections 4.3 and 4.1.
> >
> > Cheers,
> >   Vincenzo
> >
> > Il giorno dom 28 ott 2018 alle ore 09:01 Sungho Hong <
> > maverickjin88@gmail.com> ha scritto:
> >
> > > Thank you very much for the reply.
> > > But in that case, should I busy wait, to create the delay?
> > >
> > >
> > >
> >
>
> If doing very brief and exact sleep, you should change your thread
> priority to
> one of the Real Time classes.
>


-- 
Vincenzo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [dpdk-users] Why DPDK latency is high when sending message in interval?
@ 2018-10-26 20:37 Sungho Hong
  0 siblings, 0 replies; 8+ messages in thread
From: Sungho Hong @ 2018-10-26 20:37 UTC (permalink / raw)
  To: users

Hello DPDK experts,

I'am testing the performance of DPDK not on high speed polling
but sending each packet with 100 microsecond interval.

As same as the POSIX, DPDK performance degrades into 90 ~ 100 microsecond
round-trip latency per  4KB message.

Is there a way to improve the performance, when I am expecting to send the
packet on 100 microsecond interval?

And is there an explanation of the slowdown of DPDK when I am sending the
packet on 100 microsecond interval?

Any insights on this issue will be highly appreciated..
Thanks

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-10-29 15:26 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-27 23:36 [dpdk-users] Why DPDK latency is high when sending message in interval? Sungho Hong
2018-10-28  7:53 ` Vincenzo Maffione
2018-10-28  8:01   ` Sungho Hong
2018-10-28  8:07     ` Vincenzo Maffione
2018-10-28 10:15       ` Sungho Hong
2018-10-29 15:23       ` Stephen Hemminger
2018-10-29 15:25         ` Vincenzo Maffione
  -- strict thread matches above, loose matches on Subject: below --
2018-10-26 20:37 Sungho Hong

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).