* [dpdk-users] Sharing tables among pipelines
@ 2017-05-04 10:13 Nidhia Varghese
2017-05-08 4:54 ` [dpdk-users] Fwd: " Nidhia Varghese
0 siblings, 1 reply; 8+ messages in thread
From: Nidhia Varghese @ 2017-05-04 10:13 UTC (permalink / raw)
To: dev, users
Hi,
For my pipeline application, I want to share same table between two
different pipeline. Is that possible? If yes, how can I do it?
Thanks for your reply and help.
--
Regards,
Nidhia Varghese
^ permalink raw reply [flat|nested] 8+ messages in thread
* [dpdk-users] Fwd: Sharing tables among pipelines
2017-05-04 10:13 [dpdk-users] Sharing tables among pipelines Nidhia Varghese
@ 2017-05-08 4:54 ` Nidhia Varghese
2017-05-08 5:31 ` [dpdk-users] " zhilong zheng
2017-05-08 8:36 ` [dpdk-users] [dpdk-dev] Fwd: " Singh, Jasvinder
0 siblings, 2 replies; 8+ messages in thread
From: Nidhia Varghese @ 2017-05-08 4:54 UTC (permalink / raw)
To: dev, users
Hi,
Any comments on this question?
Thanks,
Nidhia
---------- Forwarded message ----------
From: Nidhia Varghese <nidhiavarghese93@gmail.com>
Date: Thu, May 4, 2017 at 3:43 PM
Subject: Sharing tables among pipelines
To: dev@dpdk.org, users@dpdk.org
Hi,
For my pipeline application, I want to share same table between two
different pipeline. Is that possible? If yes, how can I do it?
Thanks for your reply and help.
--
Regards,
Nidhia Varghese
--
Regards,
Nidhia Varghese
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-users] Sharing tables among pipelines
2017-05-08 4:54 ` [dpdk-users] Fwd: " Nidhia Varghese
@ 2017-05-08 5:31 ` zhilong zheng
2017-05-08 8:36 ` [dpdk-users] [dpdk-dev] Fwd: " Singh, Jasvinder
1 sibling, 0 replies; 8+ messages in thread
From: zhilong zheng @ 2017-05-08 5:31 UTC (permalink / raw)
To: Nidhia Varghese; +Cc: dev, users
Hi Nidia,
I have tried something similar to yours. Actually, I share some hash tables among different/independent processes.
For my application, I extend the codebase from DPDK Sample Applications 23.1.4(http://dpdk.org/doc/guides-16.07/sample_app_ug/multi_process.html <http://dpdk.org/doc/guides-16.07/sample_app_ug/multi_process.html> Client-Server Multi-process Example). The API "rte_memzone_lookup(const char *name)" contributes to the availability.
I hope this will help you.
Regards,
Zhilong
> 在 2017年5月8日,12:54,Nidhia Varghese <nidhiavarghese93@gmail.com> 写道:
>
> Hi,
>
> Any comments on this question?
>
> Thanks,
> Nidhia
>
> ---------- Forwarded message ----------
> From: Nidhia Varghese <nidhiavarghese93@gmail.com>
> Date: Thu, May 4, 2017 at 3:43 PM
> Subject: Sharing tables among pipelines
> To: dev@dpdk.org, users@dpdk.org
>
>
> Hi,
>
> For my pipeline application, I want to share same table between two
> different pipeline. Is that possible? If yes, how can I do it?
>
> Thanks for your reply and help.
>
> --
>
> Regards,
> Nidhia Varghese
>
>
>
> --
>
> Regards,
> Nidhia Varghese
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-users] [dpdk-dev] Fwd: Sharing tables among pipelines
2017-05-08 4:54 ` [dpdk-users] Fwd: " Nidhia Varghese
2017-05-08 5:31 ` [dpdk-users] " zhilong zheng
@ 2017-05-08 8:36 ` Singh, Jasvinder
2017-05-09 16:28 ` Dumitrescu, Cristian
1 sibling, 1 reply; 8+ messages in thread
From: Singh, Jasvinder @ 2017-05-08 8:36 UTC (permalink / raw)
To: Nidhia Varghese, dev, users
Hi Nidhia,
For my pipeline application, I want to share same table between two different pipeline. Is that possible? If yes, how can I do it?
[Jasvinder] - In the current ip pipeline application, we don’t have such illustration of sharing a table between two pipelines. Therefore, you need to tweak the code to implement it for your application.
Thanks,
Jasvinder
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-users] [dpdk-dev] Fwd: Sharing tables among pipelines
2017-05-08 8:36 ` [dpdk-users] [dpdk-dev] Fwd: " Singh, Jasvinder
@ 2017-05-09 16:28 ` Dumitrescu, Cristian
2017-05-09 17:59 ` Nidhia Varghese
0 siblings, 1 reply; 8+ messages in thread
From: Dumitrescu, Cristian @ 2017-05-09 16:28 UTC (permalink / raw)
To: Singh, Jasvinder, Nidhia Varghese, dev, users
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Singh, Jasvinder
> Sent: Monday, May 8, 2017 11:37 AM
> To: Nidhia Varghese <nidhiavarghese93@gmail.com>; dev@dpdk.org;
> users@dpdk.org
> Subject: Re: [dpdk-dev] Fwd: Sharing tables among pipelines
>
> Hi Nidhia,
>
>
> For my pipeline application, I want to share same table between two
> different pipeline. Is that possible? If yes, how can I do it?
>
This is usually a bad idea due to the implications: locks required for each table record, performance penalty due to cache line ping-pong between cores.
See link below for a quick discussion:
http://www.dpdk.org/doc/guides/prog_guide/packet_framework.html#shared-data-structures
Usually we split the application-level table into several smaller tables that are sections of the big table and each one is handled by a different pipeline instance (of e.g. the flow classification pipeline type), with each instance potentially running on different CPU core; we make sure that packets reach the right pipeline instance through flow affinity schemes like RSS or SW steering.
> [Jasvinder] - In the current ip pipeline application, we don’t have such
> illustration of sharing a table between two pipelines. Therefore, you need to
> tweak the code to implement it for your application.
>
> Thanks,
> Jasvinder
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-users] [dpdk-dev] Fwd: Sharing tables among pipelines
2017-05-09 16:28 ` Dumitrescu, Cristian
@ 2017-05-09 17:59 ` Nidhia Varghese
2017-05-10 16:13 ` Shyam Shrivastav
0 siblings, 1 reply; 8+ messages in thread
From: Nidhia Varghese @ 2017-05-09 17:59 UTC (permalink / raw)
To: Dumitrescu, Cristian; +Cc: Singh, Jasvinder, dev, users
Hi all,
Thanks for your reply.
As given in the link(3rd point), what I need is single writer
thread(pipeline) performing table entry add/delete operations and another
thread(which is in turn another pipeline) that performs lookup operations
to the same table entries.
Thanks,
Nidhia Varghese
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-users] [dpdk-dev] Fwd: Sharing tables among pipelines
2017-05-09 17:59 ` Nidhia Varghese
@ 2017-05-10 16:13 ` Shyam Shrivastav
2017-05-16 10:12 ` Dumitrescu, Cristian
0 siblings, 1 reply; 8+ messages in thread
From: Shyam Shrivastav @ 2017-05-10 16:13 UTC (permalink / raw)
To: Nidhia Varghese; +Cc: Dumitrescu, Cristian, Singh, Jasvinder, dev, users
Something I have gathered reading through code if it helps, ip_pipeline is
designed such that user side cli (_fe) runs in master pipeline and sends
conf requests to various other packet processing pipelines (_be) which
handle such requests at intervals. These can run on same or different
threads(cores) as per conf, no locking requirement as table-updation &
table-reading (packet processing) always happens in same pipeline so always
same thread. Master pipeline can be configured to run on a separate core &
it should be the case, but table updation happens in pipeline thread only
at lower priority.
On Tue, May 9, 2017 at 11:29 PM, Nidhia Varghese <nidhiavarghese93@gmail.com
> wrote:
> Hi all,
>
> Thanks for your reply.
>
> As given in the link(3rd point), what I need is single writer
> thread(pipeline) performing table entry add/delete operations and another
> thread(which is in turn another pipeline) that performs lookup operations
> to the same table entries.
>
>
> Thanks,
> Nidhia Varghese
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [dpdk-users] [dpdk-dev] Fwd: Sharing tables among pipelines
2017-05-10 16:13 ` Shyam Shrivastav
@ 2017-05-16 10:12 ` Dumitrescu, Cristian
0 siblings, 0 replies; 8+ messages in thread
From: Dumitrescu, Cristian @ 2017-05-16 10:12 UTC (permalink / raw)
To: Shyam Shrivastav, Nidhia Varghese; +Cc: Singh, Jasvinder, dev, users
Thanks Shyam, great to see that people get the idea behind this design! Regards, Cristian
From: Shyam Shrivastav [mailto:shrivastav.shyam@gmail.com]
Sent: Wednesday, May 10, 2017 5:14 PM
To: Nidhia Varghese <nidhiavarghese93@gmail.com>
Cc: Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; Singh, Jasvinder <jasvinder.singh@intel.com>; dev@dpdk.org; users@dpdk.org
Subject: Re: [dpdk-users] [dpdk-dev] Fwd: Sharing tables among pipelines
Something I have gathered reading through code if it helps, ip_pipeline is designed such that user side cli (_fe) runs in master pipeline and sends conf requests to various other packet processing pipelines (_be) which handle such requests at intervals. These can run on same or different threads(cores) as per conf, no locking requirement as table-updation & table-reading (packet processing) always happens in same pipeline so always same thread. Master pipeline can be configured to run on a separate core & it should be the case, but table updation happens in pipeline thread only at lower priority.
On Tue, May 9, 2017 at 11:29 PM, Nidhia Varghese <nidhiavarghese93@gmail.com<mailto:nidhiavarghese93@gmail.com>> wrote:
Hi all,
Thanks for your reply.
As given in the link(3rd point), what I need is single writer
thread(pipeline) performing table entry add/delete operations and another
thread(which is in turn another pipeline) that performs lookup operations
to the same table entries.
Thanks,
Nidhia Varghese
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2017-05-16 10:12 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-04 10:13 [dpdk-users] Sharing tables among pipelines Nidhia Varghese
2017-05-08 4:54 ` [dpdk-users] Fwd: " Nidhia Varghese
2017-05-08 5:31 ` [dpdk-users] " zhilong zheng
2017-05-08 8:36 ` [dpdk-users] [dpdk-dev] Fwd: " Singh, Jasvinder
2017-05-09 16:28 ` Dumitrescu, Cristian
2017-05-09 17:59 ` Nidhia Varghese
2017-05-10 16:13 ` Shyam Shrivastav
2017-05-16 10:12 ` Dumitrescu, Cristian
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).