* [dpdk-users] DPDK Enqueue Pipeline
@ 2020-02-26 10:38 Avinash .
2020-02-26 15:25 ` Stephen Hemminger
0 siblings, 1 reply; 3+ messages in thread
From: Avinash . @ 2020-02-26 10:38 UTC (permalink / raw)
To: users; +Cc: Gokul Bargaje, Mohit P. Tahiliani
Hi all,
The DPDK QoS scheduler has a 4-stage pipeline for enqueuing the packets.
This is used for hiding the latency of prefetching the data structures.
Why is there no pipeline for dequeuing the packets?
How does the dequeue function maintain the state of a packet? In other
words, if I want to backtrace the packet that is dequeued to get the info
of what was the traffic class and from which queue the packet was dequeued.
Is there any way to get this.
Thanks,
Avinash.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-users] DPDK Enqueue Pipeline
2020-02-26 10:38 [dpdk-users] DPDK Enqueue Pipeline Avinash .
@ 2020-02-26 15:25 ` Stephen Hemminger
2020-02-27 10:14 ` Archit Pandey
0 siblings, 1 reply; 3+ messages in thread
From: Stephen Hemminger @ 2020-02-26 15:25 UTC (permalink / raw)
To: Avinash .; +Cc: users, Gokul Bargaje, Mohit P. Tahiliani
On Wed, 26 Feb 2020 16:08:17 +0530
"Avinash ." <avinash.182cs009@nitk.edu.in> wrote:
> Hi all,
> The DPDK QoS scheduler has a 4-stage pipeline for enqueuing the packets.
> This is used for hiding the latency of prefetching the data structures.
> Why is there no pipeline for dequeuing the packets?
> How does the dequeue function maintain the state of a packet? In other
> words, if I want to backtrace the packet that is dequeued to get the info
> of what was the traffic class and from which queue the packet was dequeued.
> Is there any way to get this.
>
> Thanks,
> Avinash.
Prefetching after receive burst is the responsibility of the application.
You can't prefetch until the data arrives, and the amount and policy
for prefetch depends on the timing of the application.
There simple examples in DPDK and more complex in how FD.io VPP does it.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-users] DPDK Enqueue Pipeline
2020-02-26 15:25 ` Stephen Hemminger
@ 2020-02-27 10:14 ` Archit Pandey
0 siblings, 0 replies; 3+ messages in thread
From: Archit Pandey @ 2020-02-27 10:14 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: Avinash ., users, Gokul Bargaje, Mohit P. Tahiliani
In that case, since the packets have been prefetched on enqueue,
would it be necessary to prefetch the packets again upon dequeue?
As an example, DPDK's QoS scheduler only prefetches on enqueue
(using a packet pipeline to hide prefetch latency).
On Wed, Feb 26, 2020 at 8:55 PM Stephen Hemminger <
stephen@networkplumber.org> wrote:
> On Wed, 26 Feb 2020 16:08:17 +0530
> "Avinash ." <avinash.182cs009@nitk.edu.in> wrote:
>
> > Hi all,
> > The DPDK QoS scheduler has a 4-stage pipeline for enqueuing the packets.
> > This is used for hiding the latency of prefetching the data structures.
> > Why is there no pipeline for dequeuing the packets?
> > How does the dequeue function maintain the state of a packet? In other
> > words, if I want to backtrace the packet that is dequeued to get the info
> > of what was the traffic class and from which queue the packet was
> dequeued.
> > Is there any way to get this.
> >
> > Thanks,
> > Avinash.
>
> Prefetching after receive burst is the responsibility of the application.
> You can't prefetch until the data arrives, and the amount and policy
> for prefetch depends on the timing of the application.
>
> There simple examples in DPDK and more complex in how FD.io VPP does it.
>
--
Archit Pandey
Senior Year B.Tech.
Department of Computer Science and Engineering
National Institute of Technology Karnataka
Surathkal, India
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-02-27 10:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-26 10:38 [dpdk-users] DPDK Enqueue Pipeline Avinash .
2020-02-26 15:25 ` Stephen Hemminger
2020-02-27 10:14 ` Archit Pandey
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).