DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
@ 2018-11-20  1:39 Fiona Trahe
  2018-11-20  1:53 ` Stephen Hemminger
                   ` (2 more replies)
  0 siblings, 3 replies; 21+ messages in thread
From: Fiona Trahe @ 2018-11-20  1:39 UTC (permalink / raw)
  To: dev
  Cc: akhil.goyal, tomaszx.jozwiak, shally.verma, ashish.gupta,
	lee.daly, fiona.trahe

A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
is added. A PMD which processes operations using a software
acceleration engine should set this if the bulk of the
processing is done during the dequeue. It should leave it
cleared if the bulk of the processing is done during the
enqueue (default).
An application may find this useful for tuning.

Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
---
 lib/librte_compressdev/rte_compressdev.c | 2 ++
 lib/librte_compressdev/rte_compressdev.h | 8 ++++++++
 2 files changed, 10 insertions(+)

diff --git a/lib/librte_compressdev/rte_compressdev.c b/lib/librte_compressdev/rte_compressdev.c
index 10101eb..90d6862 100644
--- a/lib/librte_compressdev/rte_compressdev.c
+++ b/lib/librte_compressdev/rte_compressdev.c
@@ -66,6 +66,8 @@ rte_compressdev_get_feature_name(uint64_t flag)
 		return "CPU_AVX512";
 	case RTE_COMPDEV_FF_CPU_NEON:
 		return "CPU_NEON";
+	case RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE:
+		return "OP_DONE_IN_DEQ";
 	default:
 		return NULL;
 	}
diff --git a/lib/librte_compressdev/rte_compressdev.h b/lib/librte_compressdev/rte_compressdev.h
index 7b68170..0fc8ed1 100644
--- a/lib/librte_compressdev/rte_compressdev.h
+++ b/lib/librte_compressdev/rte_compressdev.h
@@ -73,6 +73,14 @@ rte_compressdev_capability_get(uint8_t dev_id,
 /**< Utilises CPU SIMD AVX512 instructions */
 #define	RTE_COMPDEV_FF_CPU_NEON			(1ULL << 5)
 /**< Utilises CPU NEON instructions */
+#define RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE	(1ULL << 6)
+/**< Only applicable when RTE_COMPDEV_FF_HW_ACCELERATED flag
+ * is not set. A PMD which processes operations using a software
+ * acceleration engine should set this if the bulk of the
+ * processing is done during the dequeue. It should leave it
+ * cleared if the processing is done during the enqueue (default).
+ * An application may find this useful for tuning.
+ */
 
 /**
  * Get the name of a compress device feature flag.
-- 
2.7.4

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-11-20  1:39 [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done Fiona Trahe
@ 2018-11-20  1:53 ` Stephen Hemminger
  2018-11-20 16:25   ` Trahe, Fiona
  2018-11-20  5:17 ` Verma, Shally
  2019-01-17 17:36 ` [dpdk-dev] [PATCH v2] " Fiona Trahe
  2 siblings, 1 reply; 21+ messages in thread
From: Stephen Hemminger @ 2018-11-20  1:53 UTC (permalink / raw)
  To: Fiona Trahe
  Cc: dev, akhil.goyal, tomaszx.jozwiak, shally.verma, ashish.gupta, lee.daly

On Tue, 20 Nov 2018 01:39:48 +0000
Fiona Trahe <fiona.trahe@intel.com> wrote:

> A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> is added. A PMD which processes operations using a software
> acceleration engine should set this if the bulk of the
> processing is done during the dequeue. It should leave it
> cleared if the bulk of the processing is done during the
> enqueue (default).
> An application may find this useful for tuning.
> 
> Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>

What application? or is this "if we build it they will come?"

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-11-20  1:39 [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done Fiona Trahe
  2018-11-20  1:53 ` Stephen Hemminger
@ 2018-11-20  5:17 ` Verma, Shally
  2018-11-20 16:40   ` Trahe, Fiona
  2019-01-17 17:36 ` [dpdk-dev] [PATCH v2] " Fiona Trahe
  2 siblings, 1 reply; 21+ messages in thread
From: Verma, Shally @ 2018-11-20  5:17 UTC (permalink / raw)
  To: Fiona Trahe, dev; +Cc: akhil.goyal, tomaszx.jozwiak, Gupta, Ashish, lee.daly

HI Fiona

>-----Original Message-----
>From: Fiona Trahe <fiona.trahe@intel.com>
>Sent: 20 November 2018 07:10
>To: dev@dpdk.org
>Cc: akhil.goyal@nxp.com; tomaszx.jozwiak@intel.com; Verma, Shally <Shally.Verma@cavium.com>; Gupta, Ashish
><Ashish.Gupta@cavium.com>; lee.daly@intel.com; fiona.trahe@intel.com
>Subject: [PATCH] compressdev: add feature flag to specify where processing is done
>
>External Email
>
>A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
>is added. A PMD which processes operations using a software
>acceleration engine should set this if the bulk of the
>processing is done during the dequeue. It should leave it
>cleared if the bulk of the processing is done during the
>enqueue (default).
>An application may find this useful for tuning.

Help me understand a bit , so how does it work when:
1. PMD do ops processing only at enqueue , will not set this flag?
2. PMD do ops processing only at dequeue, then?
3. PMD can do op processing both at enqueue and dequeue and in such case,  can set this flag to indicate this support? So that app can choose?

if supported then app set this feature flag on PMD and PMD take it as a hint to know application preference of processing point or PMD always do bulk processing at chosen point?

And why specific to SW PMD, I see HW PMD can do use this feature flag?!

Thanks
Shally

>
>Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
>---
> lib/librte_compressdev/rte_compressdev.c | 2 ++
> lib/librte_compressdev/rte_compressdev.h | 8 ++++++++
> 2 files changed, 10 insertions(+)
>
>diff --git a/lib/librte_compressdev/rte_compressdev.c b/lib/librte_compressdev/rte_compressdev.c
>index 10101eb..90d6862 100644
>--- a/lib/librte_compressdev/rte_compressdev.c
>+++ b/lib/librte_compressdev/rte_compressdev.c
>@@ -66,6 +66,8 @@ rte_compressdev_get_feature_name(uint64_t flag)
>                return "CPU_AVX512";
>        case RTE_COMPDEV_FF_CPU_NEON:
>                return "CPU_NEON";
>+       case RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE:
>+               return "OP_DONE_IN_DEQ";
>        default:
>                return NULL;
>        }
>diff --git a/lib/librte_compressdev/rte_compressdev.h b/lib/librte_compressdev/rte_compressdev.h
>index 7b68170..0fc8ed1 100644
>--- a/lib/librte_compressdev/rte_compressdev.h
>+++ b/lib/librte_compressdev/rte_compressdev.h
>@@ -73,6 +73,14 @@ rte_compressdev_capability_get(uint8_t dev_id,
> /**< Utilises CPU SIMD AVX512 instructions */
> #define        RTE_COMPDEV_FF_CPU_NEON                 (1ULL << 5)
> /**< Utilises CPU NEON instructions */
>+#define RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE   (1ULL << 6)
>+/**< Only applicable when RTE_COMPDEV_FF_HW_ACCELERATED flag
>+ * is not set. A PMD which processes operations using a software
>+ * acceleration engine should set this if the bulk of the
>+ * processing is done during the dequeue. It should leave it
>+ * cleared if the processing is done during the enqueue (default).
>+ * An application may find this useful for tuning.
>+ */
>
> /**
>  * Get the name of a compress device feature flag.
>--
>2.7.4

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-11-20  1:53 ` Stephen Hemminger
@ 2018-11-20 16:25   ` Trahe, Fiona
  2018-11-20 18:07     ` Stephen Hemminger
  0 siblings, 1 reply; 21+ messages in thread
From: Trahe, Fiona @ 2018-11-20 16:25 UTC (permalink / raw)
  To: Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, shally.verma, ashish.gupta,
	Daly, Lee, Trahe, Fiona

Hi Stephen,

> -----Original Message-----
> From: Stephen Hemminger [mailto:stephen@networkplumber.org]
> Sent: Monday, November 19, 2018 6:54 PM
> To: Trahe, Fiona <fiona.trahe@intel.com>
> Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>;
> shally.verma@caviumnetworks.com; ashish.gupta@caviumnetworks.com; Daly, Lee <lee.daly@intel.com>
> Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
> 
> On Tue, 20 Nov 2018 01:39:48 +0000
> Fiona Trahe <fiona.trahe@intel.com> wrote:
> 
> > A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> > is added. A PMD which processes operations using a software
> > acceleration engine should set this if the bulk of the
> > processing is done during the dequeue. It should leave it
> > cleared if the bulk of the processing is done during the
> > enqueue (default).
> > An application may find this useful for tuning.
> >
> > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
> 
> What application? or is this "if we build it they will come?"
[Fiona] Our storage team asked for this, so not quite.
Seems like it might by generically useful, so a bit of the latter too :)
Would you prefer I removed that line?

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-11-20  5:17 ` Verma, Shally
@ 2018-11-20 16:40   ` Trahe, Fiona
  0 siblings, 0 replies; 21+ messages in thread
From: Trahe, Fiona @ 2018-11-20 16:40 UTC (permalink / raw)
  To: Verma, Shally, dev
  Cc: akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee, Trahe, Fiona

Hi Shally,

> -----Original Message-----
> From: Verma, Shally [mailto:Shally.Verma@cavium.com]
> Sent: Monday, November 19, 2018 10:17 PM
> To: Trahe, Fiona <fiona.trahe@intel.com>; dev@dpdk.org
> Cc: akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta, Ashish
> <Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>
> Subject: RE: [PATCH] compressdev: add feature flag to specify where processing is done
> 
> HI Fiona
> 
> >-----Original Message-----
> >From: Fiona Trahe <fiona.trahe@intel.com>
> >Sent: 20 November 2018 07:10
> >To: dev@dpdk.org
> >Cc: akhil.goyal@nxp.com; tomaszx.jozwiak@intel.com; Verma, Shally <Shally.Verma@cavium.com>;
> Gupta, Ashish
> ><Ashish.Gupta@cavium.com>; lee.daly@intel.com; fiona.trahe@intel.com
> >Subject: [PATCH] compressdev: add feature flag to specify where processing is done
> >
> >External Email
> >
> >A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> >is added. A PMD which processes operations using a software
> >acceleration engine should set this if the bulk of the
> >processing is done during the dequeue. It should leave it
> >cleared if the bulk of the processing is done during the
> >enqueue (default).
> >An application may find this useful for tuning.
> 
> Help me understand a bit , so how does it work when:
> 1. PMD do ops processing only at enqueue , will not set this flag?
> 2. PMD do ops processing only at dequeue, then?
> 3. PMD can do op processing both at enqueue and dequeue and in such case,  can set this flag to indicate
> this support? So that app can choose?
[Fiona] Both sw PMDs already upstreamed do the bulk of the work on the enqueue.
So no need to set the flag.
It doesn't seem likely that PMDs will split the workload between enqueue and dequeue, if they do for some reason, thy can set whichever makes most sense.
It's like a hint, similar to the HW flag - to help an application to tune - applications don't have to use it if they don't want to.
I'm planning to send same patch for cryptodev - there two PMDs do all the work on dequeue, the rest do it on enqueue. Our Storage team asked for this as they changed some polling timings once they understood
where the work was done.

 
> if supported then app set this feature flag on PMD and PMD take it as a hint to know application
> preference of processing point or PMD always do bulk processing at chosen point?
[Fiona] No, it's the opposite - the PMD reports the capabilities to the appl.
> 
> And why specific to SW PMD, I see HW PMD can do use this feature flag?!
[Fiona] HW is not using CPU cycle as the work is offloaded, so I don't see how it can apply there.



> 
> Thanks
> Shally

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-11-20 16:25   ` Trahe, Fiona
@ 2018-11-20 18:07     ` Stephen Hemminger
  2018-12-18 14:43       ` Trahe, Fiona
  0 siblings, 1 reply; 21+ messages in thread
From: Stephen Hemminger @ 2018-11-20 18:07 UTC (permalink / raw)
  To: Trahe, Fiona
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, shally.verma, ashish.gupta,
	Daly, Lee

On Tue, 20 Nov 2018 16:25:25 +0000
"Trahe, Fiona" <fiona.trahe@intel.com> wrote:

> Hi Stephen,
> 
> > -----Original Message-----
> > From: Stephen Hemminger [mailto:stephen@networkplumber.org]
> > Sent: Monday, November 19, 2018 6:54 PM
> > To: Trahe, Fiona <fiona.trahe@intel.com>
> > Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>;
> > shally.verma@caviumnetworks.com; ashish.gupta@caviumnetworks.com; Daly, Lee <lee.daly@intel.com>
> > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
> > 
> > On Tue, 20 Nov 2018 01:39:48 +0000
> > Fiona Trahe <fiona.trahe@intel.com> wrote:
> >   
> > > A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> > > is added. A PMD which processes operations using a software
> > > acceleration engine should set this if the bulk of the
> > > processing is done during the dequeue. It should leave it
> > > cleared if the bulk of the processing is done during the
> > > enqueue (default).
> > > An application may find this useful for tuning.
> > >
> > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>  
> > 
> > What application? or is this "if we build it they will come?"  
> [Fiona] Our storage team asked for this, so not quite.
> Seems like it might by generically useful, so a bit of the latter too :)
> Would you prefer I removed that line?

Hopefully, there would be one or more open source projects using the API.
I just did a survey of DPDK an 1/3 of it is never used by any open source
project.  Hate to see more dead code and special cases created.

At least, some example code in examples would help. Something like a simple
in memory compressed storage server using a network API (SMB?/SSH?/FTP?)

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-11-20 18:07     ` Stephen Hemminger
@ 2018-12-18 14:43       ` Trahe, Fiona
  2018-12-19  5:47         ` Verma, Shally
  0 siblings, 1 reply; 21+ messages in thread
From: Trahe, Fiona @ 2018-12-18 14:43 UTC (permalink / raw)
  To: Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, shally.verma, ashish.gupta,
	Daly, Lee, Luse, Paul E, Trahe, Fiona

Hi Stephen

//snip//
> > > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
> > >
> > > On Tue, 20 Nov 2018 01:39:48 +0000
> > > Fiona Trahe <fiona.trahe@intel.com> wrote:
> > >
> > > > A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> > > > is added. A PMD which processes operations using a software
> > > > acceleration engine should set this if the bulk of the
> > > > processing is done during the dequeue. It should leave it
> > > > cleared if the bulk of the processing is done during the
> > > > enqueue (default).
> > > > An application may find this useful for tuning.
> > > >
> > > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
> > >
> > > What application? or is this "if we build it they will come?"
> > [Fiona] Our storage team asked for this, so not quite.
> > Seems like it might by generically useful, so a bit of the latter too :)
> > Would you prefer I removed that line?
> 
> Hopefully, there would be one or more open source projects using the API.
> I just did a survey of DPDK an 1/3 of it is never used by any open source
> project.  Hate to see more dead code and special cases created.
> 
> At least, some example code in examples would help. Something like a simple
> in memory compressed storage server using a network API (SMB?/SSH?/FTP?)
[Fiona] There is no compressdev sample app yet. 
However I've double-checked with the SPDK team, they're currently integrating
compressdev and intend to push a patch to SPDK - a storage open-source project - using this flag.

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-12-18 14:43       ` Trahe, Fiona
@ 2018-12-19  5:47         ` Verma, Shally
  2018-12-19 17:09           ` Trahe, Fiona
  0 siblings, 1 reply; 21+ messages in thread
From: Verma, Shally @ 2018-12-19  5:47 UTC (permalink / raw)
  To: Trahe, Fiona, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E



>-----Original Message-----
>From: Trahe, Fiona <fiona.trahe@intel.com>
>Sent: 18 December 2018 20:13
>To: Stephen Hemminger <stephen@networkplumber.org>
>Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Verma, Shally
><Shally.Verma@cavium.com>; Gupta, Ashish <Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E
><paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>
>Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
>
>External Email
>
>Hi Stephen
>
>//snip//
>> > > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
>> > >
>> > > On Tue, 20 Nov 2018 01:39:48 +0000
>> > > Fiona Trahe <fiona.trahe@intel.com> wrote:
>> > >
>> > > > A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
>> > > > is added. A PMD which processes operations using a software
>> > > > acceleration engine should set this if the bulk of the
>> > > > processing is done during the dequeue. It should leave it
>> > > > cleared if the bulk of the processing is done during the
>> > > > enqueue (default).
>> > > > An application may find this useful for tuning.
>> > > >
>> > > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
>> > >
>> > > What application? or is this "if we build it they will come?"
>> > [Fiona] Our storage team asked for this, so not quite.
>> > Seems like it might by generically useful, so a bit of the latter too :)
>> > Would you prefer I removed that line?
>>
>> Hopefully, there would be one or more open source projects using the API.
>> I just did a survey of DPDK an 1/3 of it is never used by any open source
>> project.  Hate to see more dead code and special cases created.
>>
>> At least, some example code in examples would help. Something like a simple
>> in memory compressed storage server using a network API (SMB?/SSH?/FTP?)
>[Fiona] There is no compressdev sample app yet.
>However I've double-checked with the SPDK team, they're currently integrating
>compressdev and intend to push a patch to SPDK - a storage open-source project - using this flag.
[Shally] Am seeing some of our HW based PMD also leveraging this choice. So I would say to make it generic feature flag instead of SW specific.

Thanks
Shally

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-12-19  5:47         ` Verma, Shally
@ 2018-12-19 17:09           ` Trahe, Fiona
  2019-01-10 18:46             ` De Lara Guarch, Pablo
  0 siblings, 1 reply; 21+ messages in thread
From: Trahe, Fiona @ 2018-12-19 17:09 UTC (permalink / raw)
  To: Verma, Shally, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E, Trahe, Fiona

Hi Shally,

> -----Original Message-----
> From: Verma, Shally [mailto:Shally.Verma@cavium.com]
> Sent: Tuesday, December 18, 2018 10:48 PM
> To: Trahe, Fiona <fiona.trahe@intel.com>; Stephen Hemminger <stephen@networkplumber.org>
> Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta,
> Ashish <Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E
> <paul.e.luse@intel.com>
> Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
> 
> 
> 
> >-----Original Message-----
> >From: Trahe, Fiona <fiona.trahe@intel.com>
> >Sent: 18 December 2018 20:13
> >To: Stephen Hemminger <stephen@networkplumber.org>
> >Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Verma,
> Shally
> ><Shally.Verma@cavium.com>; Gupta, Ashish <Ashish.Gupta@cavium.com>; Daly, Lee
> <lee.daly@intel.com>; Luse, Paul E
> ><paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>
> >Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
> >
> >External Email
> >
> >Hi Stephen
> >
> >//snip//
> >> > > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is
> done
> >> > >
> >> > > On Tue, 20 Nov 2018 01:39:48 +0000
> >> > > Fiona Trahe <fiona.trahe@intel.com> wrote:
> >> > >
> >> > > > A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> >> > > > is added. A PMD which processes operations using a software
> >> > > > acceleration engine should set this if the bulk of the
> >> > > > processing is done during the dequeue. It should leave it
> >> > > > cleared if the bulk of the processing is done during the
> >> > > > enqueue (default).
> >> > > > An application may find this useful for tuning.
> >> > > >
> >> > > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
> >> > >
> >> > > What application? or is this "if we build it they will come?"
> >> > [Fiona] Our storage team asked for this, so not quite.
> >> > Seems like it might by generically useful, so a bit of the latter too :)
> >> > Would you prefer I removed that line?
> >>
> >> Hopefully, there would be one or more open source projects using the API.
> >> I just did a survey of DPDK an 1/3 of it is never used by any open source
> >> project.  Hate to see more dead code and special cases created.
> >>
> >> At least, some example code in examples would help. Something like a simple
> >> in memory compressed storage server using a network API (SMB?/SSH?/FTP?)
> >[Fiona] There is no compressdev sample app yet.
> >However I've double-checked with the SPDK team, they're currently integrating
> >compressdev and intend to push a patch to SPDK - a storage open-source project - using this flag.
> [Shally] Am seeing some of our HW based PMD also leveraging this choice. So I would say to make it
> generic feature flag instead of SW specific.
 [Fiona] I can do but would like to understand this better first.
My understanding of HW offload is that the enqueue is just packaging up the op and sending to the HW.
And the dequeue is just collecting the result from the HW and passing back to the op.
The work is done by the HW accelerator, in between those 2 API calls, not using any CPU cycles.
So what would it mean for HW to set OP_DONE_IN_DEQUEUE?
 
> Thanks
> Shally

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2018-12-19 17:09           ` Trahe, Fiona
@ 2019-01-10 18:46             ` De Lara Guarch, Pablo
  2019-01-12  6:47               ` Verma, Shally
  2019-01-16 11:21               ` Shally Verma
  0 siblings, 2 replies; 21+ messages in thread
From: De Lara Guarch, Pablo @ 2019-01-10 18:46 UTC (permalink / raw)
  To: Trahe, Fiona, Verma, Shally, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E, Trahe, Fiona

Hi Shally,

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Trahe, Fiona
> Sent: Wednesday, December 19, 2018 5:10 PM
> To: Verma, Shally <Shally.Verma@cavium.com>; Stephen Hemminger
> <stephen@networkplumber.org>
> Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
> <tomaszx.jozwiak@intel.com>; Gupta, Ashish <Ashish.Gupta@cavium.com>;
> Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Trahe,
> Fiona <fiona.trahe@intel.com>
> Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify
> where processing is done
> 
> Hi Shally,
> 
> > -----Original Message-----
> > From: Verma, Shally [mailto:Shally.Verma@cavium.com]
> > Sent: Tuesday, December 18, 2018 10:48 PM
> > To: Trahe, Fiona <fiona.trahe@intel.com>; Stephen Hemminger
> > <stephen@networkplumber.org>
> > Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
> > <tomaszx.jozwiak@intel.com>; Gupta, Ashish
> <Ashish.Gupta@cavium.com>;
> > Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>
> > Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to
> > specify where processing is done
> >
> >
> >
> > >-----Original Message-----
> > >From: Trahe, Fiona <fiona.trahe@intel.com>
> > >Sent: 18 December 2018 20:13
> > >To: Stephen Hemminger <stephen@networkplumber.org>
> > >Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
> > ><tomaszx.jozwiak@intel.com>; Verma,
> > Shally
> > ><Shally.Verma@cavium.com>; Gupta, Ashish
> <Ashish.Gupta@cavium.com>;
> > >Daly, Lee
> > <lee.daly@intel.com>; Luse, Paul E
> > ><paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>
> > >Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to
> > >specify where processing is done
> > >
> > >External Email
> > >
> > >Hi Stephen
> > >
> > >//snip//
> > >> > > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag
> > >> > > to specify where processing is
> > done
> > >> > >
> > >> > > On Tue, 20 Nov 2018 01:39:48 +0000 Fiona Trahe
> > >> > > <fiona.trahe@intel.com> wrote:
> > >> > >
> > >> > > > A new device feature flag,
> > >> > > > RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> > >> > > > is added. A PMD which processes operations using a software
> > >> > > > acceleration engine should set this if the bulk of the
> > >> > > > processing is done during the dequeue. It should leave it
> > >> > > > cleared if the bulk of the processing is done during the
> > >> > > > enqueue (default).
> > >> > > > An application may find this useful for tuning.
> > >> > > >
> > >> > > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
> > >> > >
> > >> > > What application? or is this "if we build it they will come?"
> > >> > [Fiona] Our storage team asked for this, so not quite.
> > >> > Seems like it might by generically useful, so a bit of the latter
> > >> > too :) Would you prefer I removed that line?
> > >>
> > >> Hopefully, there would be one or more open source projects using the
> API.
> > >> I just did a survey of DPDK an 1/3 of it is never used by any open
> > >> source project.  Hate to see more dead code and special cases created.
> > >>
> > >> At least, some example code in examples would help. Something like
> > >> a simple in memory compressed storage server using a network API
> > >> (SMB?/SSH?/FTP?)
> > >[Fiona] There is no compressdev sample app yet.
> > >However I've double-checked with the SPDK team, they're currently
> > >integrating compressdev and intend to push a patch to SPDK - a storage
> open-source project - using this flag.
> > [Shally] Am seeing some of our HW based PMD also leveraging this
> > choice. So I would say to make it generic feature flag instead of SW specific.
>  [Fiona] I can do but would like to understand this better first.
> My understanding of HW offload is that the enqueue is just packaging up
> the op and sending to the HW.
> And the dequeue is just collecting the result from the HW and passing back
> to the op.
> The work is done by the HW accelerator, in between those 2 API calls, not
> using any CPU cycles.
> So what would it mean for HW to set OP_DONE_IN_DEQUEUE?

Any comments on this? I agree with Fiona that this flag makes sense on SW only,
but it seems that you have another use case.

Thanks,
Pablo

> 
> > Thanks
> > Shally

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2019-01-10 18:46             ` De Lara Guarch, Pablo
@ 2019-01-12  6:47               ` Verma, Shally
  2019-01-16 11:21               ` Shally Verma
  1 sibling, 0 replies; 21+ messages in thread
From: Verma, Shally @ 2019-01-12  6:47 UTC (permalink / raw)
  To: De Lara Guarch, Pablo, Trahe, Fiona, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E, Trahe, Fiona

HI Pablo

Sorry for delay in response.

>-----Original Message-----
>From: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>
>Sent: 11 January 2019 00:17
>To: Trahe, Fiona <fiona.trahe@intel.com>; Verma, Shally <Shally.Verma@cavium.com>; Stephen Hemminger
><stephen@networkplumber.org>
>Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta, Ashish
><Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Trahe, Fiona
><fiona.trahe@intel.com>
>Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
>
....

>> > >> I just did a survey of DPDK an 1/3 of it is never used by any open
>> > >> source project.  Hate to see more dead code and special cases created.
>> > >>
>> > >> At least, some example code in examples would help. Something like
>> > >> a simple in memory compressed storage server using a network API
>> > >> (SMB?/SSH?/FTP?)
>> > >[Fiona] There is no compressdev sample app yet.
>> > >However I've double-checked with the SPDK team, they're currently
>> > >integrating compressdev and intend to push a patch to SPDK - a storage
>> open-source project - using this flag.
>> > [Shally] Am seeing some of our HW based PMD also leveraging this
>> > choice. So I would say to make it generic feature flag instead of SW specific.
>>  [Fiona] I can do but would like to understand this better first.
>> My understanding of HW offload is that the enqueue is just packaging up
>> the op and sending to the HW.
>> And the dequeue is just collecting the result from the HW and passing back
>> to the op.
>> The work is done by the HW accelerator, in between those 2 API calls, not
>> using any CPU cycles.
>> So what would it mean for HW to set OP_DONE_IN_DEQUEUE?
>
>Any comments on this? I agree with Fiona that this flag makes sense on SW only,
>but it seems that you have another use case.
I am waiting for feedback on this internally. Will revert on this as I get more information.

Thanks
Shally
>
>Thanks,
>Pablo
>
>>
>> > Thanks
>> > Shally

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2019-01-10 18:46             ` De Lara Guarch, Pablo
  2019-01-12  6:47               ` Verma, Shally
@ 2019-01-16 11:21               ` Shally Verma
  2019-01-16 11:36                 ` Trahe, Fiona
  1 sibling, 1 reply; 21+ messages in thread
From: Shally Verma @ 2019-01-16 11:21 UTC (permalink / raw)
  To: De Lara Guarch, Pablo, Trahe, Fiona, Verma, Shally, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E, Trahe, Fiona, Anoob Joseph, Tejasree Kondoj

Hi Pablo, Fiona

>-----Original Message-----
>From: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>
>Sent: 11 January 2019 00:17
>To: Trahe, Fiona <fiona.trahe@intel.com>; Verma, Shally <Shally.Verma@cavium.com>; Stephen Hemminger
><stephen@networkplumber.org>
>Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta, Ashish
><Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Trahe, Fiona
><fiona.trahe@intel.com>
>Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
>
>External Email
>
>Hi Shally,
>
>> -----Original Message-----
>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Trahe, Fiona
>> Sent: Wednesday, December 19, 2018 5:10 PM
>> To: Verma, Shally <Shally.Verma@cavium.com>; Stephen Hemminger
>> <stephen@networkplumber.org>
>> Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
>> <tomaszx.jozwiak@intel.com>; Gupta, Ashish <Ashish.Gupta@cavium.com>;
>> Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Trahe,
>> Fiona <fiona.trahe@intel.com>
>> Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify
>> where processing is done
>>
>> Hi Shally,
>>
>> > -----Original Message-----
>> > From: Verma, Shally [mailto:Shally.Verma@cavium.com]
>> > Sent: Tuesday, December 18, 2018 10:48 PM
>> > To: Trahe, Fiona <fiona.trahe@intel.com>; Stephen Hemminger
>> > <stephen@networkplumber.org>
>> > Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
>> > <tomaszx.jozwiak@intel.com>; Gupta, Ashish
>> <Ashish.Gupta@cavium.com>;
>> > Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>
>> > Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to
>> > specify where processing is done
>> >
>> >
>> >
>> > >-----Original Message-----
>> > >From: Trahe, Fiona <fiona.trahe@intel.com>
>> > >Sent: 18 December 2018 20:13
>> > >To: Stephen Hemminger <stephen@networkplumber.org>
>> > >Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
>> > ><tomaszx.jozwiak@intel.com>; Verma,
>> > Shally
>> > ><Shally.Verma@cavium.com>; Gupta, Ashish
>> <Ashish.Gupta@cavium.com>;
>> > >Daly, Lee
>> > <lee.daly@intel.com>; Luse, Paul E
>> > ><paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>
>> > >Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to
>> > >specify where processing is done
>> > >
>> > >External Email
>> > >
>> > >Hi Stephen
>> > >
>> > >//snip//
>> > >> > > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag
>> > >> > > to specify where processing is
>> > done
>> > >> > >
>> > >> > > On Tue, 20 Nov 2018 01:39:48 +0000 Fiona Trahe
>> > >> > > <fiona.trahe@intel.com> wrote:
>> > >> > >
>> > >> > > > A new device feature flag,
>> > >> > > > RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
>> > >> > > > is added. A PMD which processes operations using a software
>> > >> > > > acceleration engine should set this if the bulk of the
>> > >> > > > processing is done during the dequeue. It should leave it
>> > >> > > > cleared if the bulk of the processing is done during the
>> > >> > > > enqueue (default).
>> > >> > > > An application may find this useful for tuning.
>> > >> > > >
>> > >> > > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
>> > >> > >
>> > >> > > What application? or is this "if we build it they will come?"
>> > >> > [Fiona] Our storage team asked for this, so not quite.
>> > >> > Seems like it might by generically useful, so a bit of the latter
>> > >> > too :) Would you prefer I removed that line?
>> > >>
>> > >> Hopefully, there would be one or more open source projects using the
>> API.
>> > >> I just did a survey of DPDK an 1/3 of it is never used by any open
>> > >> source project.  Hate to see more dead code and special cases created.
>> > >>
>> > >> At least, some example code in examples would help. Something like
>> > >> a simple in memory compressed storage server using a network API
>> > >> (SMB?/SSH?/FTP?)
>> > >[Fiona] There is no compressdev sample app yet.
>> > >However I've double-checked with the SPDK team, they're currently
>> > >integrating compressdev and intend to push a patch to SPDK - a storage
>> open-source project - using this flag.
>> > [Shally] Am seeing some of our HW based PMD also leveraging this
>> > choice. So I would say to make it generic feature flag instead of SW specific.
>>  [Fiona] I can do but would like to understand this better first.
>> My understanding of HW offload is that the enqueue is just packaging up
>> the op and sending to the HW.
>> And the dequeue is just collecting the result from the HW and passing back
>> to the op.
>> The work is done by the HW accelerator, in between those 2 API calls, not
>> using any CPU cycles.
>> So what would it mean for HW to set OP_DONE_IN_DEQUEUE?
>
>Any comments on this? I agree with Fiona that this flag makes sense on SW only,
>but it seems that you have another use case.

So, after having internal discussions, it is realized this feature will be useful for particular scenario in HW also (though not very common
in practice but still in use).
Some hw based PMD, example current octeontx compression, enqueues an op and wait for it to complete
in enqueue itself to ensure in-order completion and then return. By giving this control to app, it can dictate PMD whether 
to wait for its completion in enqueue or dequeue.  This is useful where out-of-order completion of ops negatively impact app 
performance. Such app can use this flag to alter PMD behaviour. Also, we have another PMD, where it internally takes similar
flag to make this decision, having it exposed will make it more portable.

Thanks
Shally

>
>Thanks,
>Pablo
>
>>
>> > Thanks
>> > Shally

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2019-01-16 11:21               ` Shally Verma
@ 2019-01-16 11:36                 ` Trahe, Fiona
  2019-01-16 12:09                   ` Shally Verma
  0 siblings, 1 reply; 21+ messages in thread
From: Trahe, Fiona @ 2019-01-16 11:36 UTC (permalink / raw)
  To: Shally Verma, De Lara Guarch, Pablo, Verma, Shally, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E, Anoob Joseph, Tejasree Kondoj, Trahe, Fiona

Hi Shally,

> -----Original Message-----
> From: Shally Verma [mailto:shallyv@marvell.com]
> Sent: Wednesday, January 16, 2019 11:22 AM
> To: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>;
> Verma, Shally <Shally.Verma@cavium.com>; Stephen Hemminger <stephen@networkplumber.org>
> Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta,
> Ashish <Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E
> <paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>; Anoob Joseph
> <anoobj@marvell.com>; Tejasree Kondoj <ktejasree@marvell.com>
> Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
> 
> Hi Pablo, Fiona
> 
> >-----Original Message-----
> >From: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>
> >Sent: 11 January 2019 00:17
> >To: Trahe, Fiona <fiona.trahe@intel.com>; Verma, Shally <Shally.Verma@cavium.com>; Stephen
> Hemminger
> ><stephen@networkplumber.org>
> >Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta,
> Ashish
> ><Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E
> <paul.e.luse@intel.com>; Trahe, Fiona
> ><fiona.trahe@intel.com>
> >Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
> >
> >External Email
> >
> >Hi Shally,
> >
> >> -----Original Message-----
> >> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Trahe, Fiona
> >> Sent: Wednesday, December 19, 2018 5:10 PM
> >> To: Verma, Shally <Shally.Verma@cavium.com>; Stephen Hemminger
> >> <stephen@networkplumber.org>
> >> Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
> >> <tomaszx.jozwiak@intel.com>; Gupta, Ashish <Ashish.Gupta@cavium.com>;
> >> Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Trahe,
> >> Fiona <fiona.trahe@intel.com>
> >> Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify
> >> where processing is done
> >>
> >> Hi Shally,
> >>
> >> > -----Original Message-----
> >> > From: Verma, Shally [mailto:Shally.Verma@cavium.com]
> >> > Sent: Tuesday, December 18, 2018 10:48 PM
> >> > To: Trahe, Fiona <fiona.trahe@intel.com>; Stephen Hemminger
> >> > <stephen@networkplumber.org>
> >> > Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
> >> > <tomaszx.jozwiak@intel.com>; Gupta, Ashish
> >> <Ashish.Gupta@cavium.com>;
> >> > Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>
> >> > Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to
> >> > specify where processing is done
> >> >
> >> >
> >> >
> >> > >-----Original Message-----
> >> > >From: Trahe, Fiona <fiona.trahe@intel.com>
> >> > >Sent: 18 December 2018 20:13
> >> > >To: Stephen Hemminger <stephen@networkplumber.org>
> >> > >Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
> >> > ><tomaszx.jozwiak@intel.com>; Verma,
> >> > Shally
> >> > ><Shally.Verma@cavium.com>; Gupta, Ashish
> >> <Ashish.Gupta@cavium.com>;
> >> > >Daly, Lee
> >> > <lee.daly@intel.com>; Luse, Paul E
> >> > ><paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>
> >> > >Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to
> >> > >specify where processing is done
> >> > >
> >> > >External Email
> >> > >
> >> > >Hi Stephen
> >> > >
> >> > >//snip//
> >> > >> > > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag
> >> > >> > > to specify where processing is
> >> > done
> >> > >> > >
> >> > >> > > On Tue, 20 Nov 2018 01:39:48 +0000 Fiona Trahe
> >> > >> > > <fiona.trahe@intel.com> wrote:
> >> > >> > >
> >> > >> > > > A new device feature flag,
> >> > >> > > > RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> >> > >> > > > is added. A PMD which processes operations using a software
> >> > >> > > > acceleration engine should set this if the bulk of the
> >> > >> > > > processing is done during the dequeue. It should leave it
> >> > >> > > > cleared if the bulk of the processing is done during the
> >> > >> > > > enqueue (default).
> >> > >> > > > An application may find this useful for tuning.
> >> > >> > > >
> >> > >> > > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
> >> > >> > >
> >> > >> > > What application? or is this "if we build it they will come?"
> >> > >> > [Fiona] Our storage team asked for this, so not quite.
> >> > >> > Seems like it might by generically useful, so a bit of the latter
> >> > >> > too :) Would you prefer I removed that line?
> >> > >>
> >> > >> Hopefully, there would be one or more open source projects using the
> >> API.
> >> > >> I just did a survey of DPDK an 1/3 of it is never used by any open
> >> > >> source project.  Hate to see more dead code and special cases created.
> >> > >>
> >> > >> At least, some example code in examples would help. Something like
> >> > >> a simple in memory compressed storage server using a network API
> >> > >> (SMB?/SSH?/FTP?)
> >> > >[Fiona] There is no compressdev sample app yet.
> >> > >However I've double-checked with the SPDK team, they're currently
> >> > >integrating compressdev and intend to push a patch to SPDK - a storage
> >> open-source project - using this flag.
> >> > [Shally] Am seeing some of our HW based PMD also leveraging this
> >> > choice. So I would say to make it generic feature flag instead of SW specific.
> >>  [Fiona] I can do but would like to understand this better first.
> >> My understanding of HW offload is that the enqueue is just packaging up
> >> the op and sending to the HW.
> >> And the dequeue is just collecting the result from the HW and passing back
> >> to the op.
> >> The work is done by the HW accelerator, in between those 2 API calls, not
> >> using any CPU cycles.
> >> So what would it mean for HW to set OP_DONE_IN_DEQUEUE?
> >
> >Any comments on this? I agree with Fiona that this flag makes sense on SW only,
> >but it seems that you have another use case.
> 
> So, after having internal discussions, it is realized this feature will be useful for particular scenario in
> HW also (though not very common
> in practice but still in use).
> Some hw based PMD, example current octeontx compression, enqueues an op and wait for it to
> complete
> in enqueue itself to ensure in-order completion and then return. 
[Fiona] ok, I understand this point. I'll change the name to 
RTE_COMPDEV_FF_OP_DONE_IN_DEQUEUE to accommodate this.

By giving this control to app, it can
> dictate PMD whether
> to wait for its completion in enqueue or dequeue.
[Fiona] I'm not sure if this is a typo or not. You mean it can dictate to the app where it should wait?
This is a capability flag exported by the PMD, the appl can only query it to see where the PMD
does the work, NOT set it to tell the PMD where to do the work.

  This is useful where out-of-order completion of ops
> negatively impact app
> performance. Such app can use this flag to alter PMD behaviour. Also, we have another PMD, where it
> internally takes similar
> flag to make this decision, having it exposed will make it more portable.
> 
> Thanks
> Shally
> 
> >
> >Thanks,
> >Pablo
> >
> >>
> >> > Thanks
> >> > Shally

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2019-01-16 11:36                 ` Trahe, Fiona
@ 2019-01-16 12:09                   ` Shally Verma
  2019-01-16 12:44                     ` Trahe, Fiona
  0 siblings, 1 reply; 21+ messages in thread
From: Shally Verma @ 2019-01-16 12:09 UTC (permalink / raw)
  To: Trahe, Fiona, De Lara Guarch, Pablo, Verma, Shally, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E, Anoob Joseph, Tejasree Kondoj



>-----Original Message-----
>From: Trahe, Fiona <fiona.trahe@intel.com>
>Sent: 16 January 2019 17:06
>To: Shally Verma <shallyv@marvell.com>; De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Verma, Shally
><Shally.Verma@cavium.com>; Stephen Hemminger <stephen@networkplumber.org>
>Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta, Ashish
><Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Anoob Joseph
><anoobj@marvell.com>; Tejasree Kondoj <ktejasree@marvell.com>; Trahe, Fiona <fiona.trahe@intel.com>
>Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
>
>Hi Shally,
>
>> -----Original Message-----
>> From: Shally Verma [mailto:shallyv@marvell.com]
>> Sent: Wednesday, January 16, 2019 11:22 AM
>> To: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>;
>> Verma, Shally <Shally.Verma@cavium.com>; Stephen Hemminger <stephen@networkplumber.org>
>> Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta,
>> Ashish <Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E
>> <paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>; Anoob Joseph
>> <anoobj@marvell.com>; Tejasree Kondoj <ktejasree@marvell.com>
>> Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
>>
>> Hi Pablo, Fiona
>>
>> >-----Original Message-----
>> >From: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>
>> >Sent: 11 January 2019 00:17
>> >To: Trahe, Fiona <fiona.trahe@intel.com>; Verma, Shally <Shally.Verma@cavium.com>; Stephen
>> Hemminger
>> ><stephen@networkplumber.org>
>> >Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta,
>> Ashish
>> ><Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E
>> <paul.e.luse@intel.com>; Trahe, Fiona
>> ><fiona.trahe@intel.com>
>> >Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
>> >
>> >External Email
>> >
>> >Hi Shally,
>> >
>> >> -----Original Message-----
>> >> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Trahe, Fiona
>> >> Sent: Wednesday, December 19, 2018 5:10 PM
>> >> To: Verma, Shally <Shally.Verma@cavium.com>; Stephen Hemminger
>> >> <stephen@networkplumber.org>
>> >> Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
>> >> <tomaszx.jozwiak@intel.com>; Gupta, Ashish <Ashish.Gupta@cavium.com>;
>> >> Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Trahe,
>> >> Fiona <fiona.trahe@intel.com>
>> >> Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify
>> >> where processing is done
>> >>
>> >> Hi Shally,
>> >>
>> >> > -----Original Message-----
>> >> > From: Verma, Shally [mailto:Shally.Verma@cavium.com]
>> >> > Sent: Tuesday, December 18, 2018 10:48 PM
>> >> > To: Trahe, Fiona <fiona.trahe@intel.com>; Stephen Hemminger
>> >> > <stephen@networkplumber.org>
>> >> > Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
>> >> > <tomaszx.jozwiak@intel.com>; Gupta, Ashish
>> >> <Ashish.Gupta@cavium.com>;
>> >> > Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>
>> >> > Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to
>> >> > specify where processing is done
>> >> >
>> >> >
>> >> >
>> >> > >-----Original Message-----
>> >> > >From: Trahe, Fiona <fiona.trahe@intel.com>
>> >> > >Sent: 18 December 2018 20:13
>> >> > >To: Stephen Hemminger <stephen@networkplumber.org>
>> >> > >Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX
>> >> > ><tomaszx.jozwiak@intel.com>; Verma,
>> >> > Shally
>> >> > ><Shally.Verma@cavium.com>; Gupta, Ashish
>> >> <Ashish.Gupta@cavium.com>;
>> >> > >Daly, Lee
>> >> > <lee.daly@intel.com>; Luse, Paul E
>> >> > ><paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>
>> >> > >Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to
>> >> > >specify where processing is done
>> >> > >
>> >> > >External Email
>> >> > >
>> >> > >Hi Stephen
>> >> > >
>> >> > >//snip//
>> >> > >> > > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag
>> >> > >> > > to specify where processing is
>> >> > done
>> >> > >> > >
>> >> > >> > > On Tue, 20 Nov 2018 01:39:48 +0000 Fiona Trahe
>> >> > >> > > <fiona.trahe@intel.com> wrote:
>> >> > >> > >
>> >> > >> > > > A new device feature flag,
>> >> > >> > > > RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
>> >> > >> > > > is added. A PMD which processes operations using a software
>> >> > >> > > > acceleration engine should set this if the bulk of the
>> >> > >> > > > processing is done during the dequeue. It should leave it
>> >> > >> > > > cleared if the bulk of the processing is done during the
>> >> > >> > > > enqueue (default).
>> >> > >> > > > An application may find this useful for tuning.
>> >> > >> > > >
>> >> > >> > > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
>> >> > >> > >
>> >> > >> > > What application? or is this "if we build it they will come?"
>> >> > >> > [Fiona] Our storage team asked for this, so not quite.
>> >> > >> > Seems like it might by generically useful, so a bit of the latter
>> >> > >> > too :) Would you prefer I removed that line?
>> >> > >>
>> >> > >> Hopefully, there would be one or more open source projects using the
>> >> API.
>> >> > >> I just did a survey of DPDK an 1/3 of it is never used by any open
>> >> > >> source project.  Hate to see more dead code and special cases created.
>> >> > >>
>> >> > >> At least, some example code in examples would help. Something like
>> >> > >> a simple in memory compressed storage server using a network API
>> >> > >> (SMB?/SSH?/FTP?)
>> >> > >[Fiona] There is no compressdev sample app yet.
>> >> > >However I've double-checked with the SPDK team, they're currently
>> >> > >integrating compressdev and intend to push a patch to SPDK - a storage
>> >> open-source project - using this flag.
>> >> > [Shally] Am seeing some of our HW based PMD also leveraging this
>> >> > choice. So I would say to make it generic feature flag instead of SW specific.
>> >>  [Fiona] I can do but would like to understand this better first.
>> >> My understanding of HW offload is that the enqueue is just packaging up
>> >> the op and sending to the HW.
>> >> And the dequeue is just collecting the result from the HW and passing back
>> >> to the op.
>> >> The work is done by the HW accelerator, in between those 2 API calls, not
>> >> using any CPU cycles.
>> >> So what would it mean for HW to set OP_DONE_IN_DEQUEUE?
>> >
>> >Any comments on this? I agree with Fiona that this flag makes sense on SW only,
>> >but it seems that you have another use case.
>>
>> So, after having internal discussions, it is realized this feature will be useful for particular scenario in
>> HW also (though not very common
>> in practice but still in use).
>> Some hw based PMD, example current octeontx compression, enqueues an op and wait for it to
>> complete
>> in enqueue itself to ensure in-order completion and then return.
>[Fiona] ok, I understand this point. I'll change the name to
>RTE_COMPDEV_FF_OP_DONE_IN_DEQUEUE to accommodate this.

[Shally] Ok. that suffice purpose.

>
>By giving this control to app, it can
>> dictate PMD whether
>> to wait for its completion in enqueue or dequeue.
>[Fiona] I'm not sure if this is a typo or not. You mean it can dictate to the app where it should wait?
>This is a capability flag exported by the PMD, the appl can only query it to see where the PMD
>does the work, NOT set it to tell the PMD where to do the work.
[Shally] "it" here referred to app i.e. PMD can expose its capability that it can do work at either end and then
app can state its "preference" where PMD should do work. However looking at your description, seems I misunderstood a bit. 

So, would like to understand it bit more on how flag would help app to tune itself as per current given description? 
For example, if PMD says, It does actual processing in dequeue, then how it will impact app design for better performance?

Just to avoid confusion, "work" here primarily mean "wait for completion" of submitted op in context of HW PMD. For SW PMD,
It could be just adding ops in processing ring to be picked up later for actual processing in dequeue.

Thanks
Shally


>
>  This is useful where out-of-order completion of ops
>> negatively impact app
>> performance. Such app can use this flag to alter PMD behaviour. Also, we have another PMD, where it
>> internally takes similar
>> flag to make this decision, having it exposed will make it more portable.
>>
>> Thanks
>> Shally
>>
>> >
>> >Thanks,
>> >Pablo
>> >
>> >>
>> >> > Thanks
>> >> > Shally

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2019-01-16 12:09                   ` Shally Verma
@ 2019-01-16 12:44                     ` Trahe, Fiona
  2019-01-16 13:47                       ` Shally Verma
  0 siblings, 1 reply; 21+ messages in thread
From: Trahe, Fiona @ 2019-01-16 12:44 UTC (permalink / raw)
  To: Shally Verma, De Lara Guarch, Pablo, Verma, Shally, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E, Anoob Joseph, Tejasree Kondoj, Trahe, Fiona

Hi Shally,

> So, would like to understand it bit more on how flag would help app to tune itself as per current given
> description?
> For example, if PMD says, It does actual processing in dequeue, then how it will impact app design for
> better performance?
[Fiona] One example: It could enqueue a large burst, say 32 ops. Then if it tried to dequeue 32 ops that
could be a very long blocking call. So instead it could choose to dequeue 8 at a time.
Vice versa if work done in enqueue.

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

* Re: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
  2019-01-16 12:44                     ` Trahe, Fiona
@ 2019-01-16 13:47                       ` Shally Verma
  0 siblings, 0 replies; 21+ messages in thread
From: Shally Verma @ 2019-01-16 13:47 UTC (permalink / raw)
  To: Trahe, Fiona, De Lara Guarch, Pablo, Verma, Shally, Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, Gupta, Ashish, Daly, Lee,
	Luse, Paul E, Anoob Joseph, Tejasree Kondoj



>-----Original Message-----
>From: Trahe, Fiona <fiona.trahe@intel.com>
>Sent: 16 January 2019 18:15
>To: Shally Verma <shallyv@marvell.com>; De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Verma, Shally
><Shally.Verma@cavium.com>; Stephen Hemminger <stephen@networkplumber.org>
>Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; Gupta, Ashish
><Ashish.Gupta@cavium.com>; Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Anoob Joseph
><anoobj@marvell.com>; Tejasree Kondoj <ktejasree@marvell.com>; Trahe, Fiona <fiona.trahe@intel.com>
>Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
>
>Hi Shally,
>
>> So, would like to understand it bit more on how flag would help app to tune itself as per current given
>> description?
>> For example, if PMD says, It does actual processing in dequeue, then how it will impact app design for
>> better performance?
>[Fiona] One example: It could enqueue a large burst, say 32 ops. Then if it tried to dequeue 32 ops that
>could be a very long blocking call. So instead it could choose to dequeue 8 at a time.
>Vice versa if work done in enqueue.
Ok. I get it. For now I would suggest to keep it as per original description i.e.  Read only capability flag which app can read tune itself. This will help current octeontx compression PMD as well. We will revisit on its description based on requirement.

Thanks
Shally

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

* [dpdk-dev] [PATCH v2] compressdev: add feature flag to specify where processing is done
  2018-11-20  1:39 [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done Fiona Trahe
  2018-11-20  1:53 ` Stephen Hemminger
  2018-11-20  5:17 ` Verma, Shally
@ 2019-01-17 17:36 ` Fiona Trahe
  2019-02-20 16:00   ` Shally Verma
  2 siblings, 1 reply; 21+ messages in thread
From: Fiona Trahe @ 2019-01-17 17:36 UTC (permalink / raw)
  To: dev; +Cc: pablo.de.lara.guarch, fiona.trahe, akhil.goyal, paul.e.luse

A new device feature flag, RTE_COMPDEV_FF_OP_DONE_IN_DEQUEUE
is added. A PMD should set this if the bulk of the
processing is done during the dequeue. It should leave it
cleared if the bulk of the processing is done during the
enqueue (default).
Applications can use this as a hint for tuning.

Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
---
 lib/librte_compressdev/rte_compressdev.c | 2 ++
 lib/librte_compressdev/rte_compressdev.h | 6 ++++++
 2 files changed, 8 insertions(+)

diff --git a/lib/librte_compressdev/rte_compressdev.c b/lib/librte_compressdev/rte_compressdev.c
index 10101ebbe..338134bdf 100644
--- a/lib/librte_compressdev/rte_compressdev.c
+++ b/lib/librte_compressdev/rte_compressdev.c
@@ -66,6 +66,8 @@ rte_compressdev_get_feature_name(uint64_t flag)
 		return "CPU_AVX512";
 	case RTE_COMPDEV_FF_CPU_NEON:
 		return "CPU_NEON";
+	case RTE_COMPDEV_FF_OP_DONE_IN_DEQUEUE:
+		return "OP_DONE_IN_DEQ";
 	default:
 		return NULL;
 	}
diff --git a/lib/librte_compressdev/rte_compressdev.h b/lib/librte_compressdev/rte_compressdev.h
index 7b68170a5..d3c0000f0 100644
--- a/lib/librte_compressdev/rte_compressdev.h
+++ b/lib/librte_compressdev/rte_compressdev.h
@@ -73,6 +73,12 @@ rte_compressdev_capability_get(uint8_t dev_id,
 /**< Utilises CPU SIMD AVX512 instructions */
 #define	RTE_COMPDEV_FF_CPU_NEON			(1ULL << 5)
 /**< Utilises CPU NEON instructions */
+#define RTE_COMPDEV_FF_OP_DONE_IN_DEQUEUE	(1ULL << 6)
+/**< A PMD should set this if the bulk of the
+ * processing is done during the dequeue. It should leave it
+ * cleared if the processing is done during the enqueue (default).
+ * Applications can use this as a hint for tuning.
+ */
 
 /**
  * Get the name of a compress device feature flag.
-- 
2.13.6

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

* Re: [dpdk-dev] [PATCH v2] compressdev: add feature flag to specify where processing is done
  2019-01-17 17:36 ` [dpdk-dev] [PATCH v2] " Fiona Trahe
@ 2019-02-20 16:00   ` Shally Verma
  2019-03-22 15:09     ` Akhil Goyal
  0 siblings, 1 reply; 21+ messages in thread
From: Shally Verma @ 2019-02-20 16:00 UTC (permalink / raw)
  To: Fiona Trahe, dev; +Cc: pablo.de.lara.guarch, akhil.goyal, paul.e.luse



>-----Original Message-----
>From: dev <dev-bounces@dpdk.org> On Behalf Of Fiona Trahe
>Sent: 17 January 2019 23:06
>To: dev@dpdk.org
>Cc: pablo.de.lara.guarch@intel.com; fiona.trahe@intel.com; akhil.goyal@nxp.com; paul.e.luse@intel.com
>Subject: [dpdk-dev] [PATCH v2] compressdev: add feature flag to specify where processing is done
>
>External Email
>
>A new device feature flag, RTE_COMPDEV_FF_OP_DONE_IN_DEQUEUE
>is added. A PMD should set this if the bulk of the
>processing is done during the dequeue. It should leave it
>cleared if the bulk of the processing is done during the
>enqueue (default).
>Applications can use this as a hint for tuning.
>
>Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
Acked-by: Shally Verma <shally.verma@marvell.com>

Thanks
Shally

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

* Re: [dpdk-dev] [PATCH v2] compressdev: add feature flag to specify where processing is done
  2019-02-20 16:00   ` Shally Verma
@ 2019-03-22 15:09     ` Akhil Goyal
  2019-03-22 15:09       ` Akhil Goyal
  0 siblings, 1 reply; 21+ messages in thread
From: Akhil Goyal @ 2019-03-22 15:09 UTC (permalink / raw)
  To: Shally Verma, Fiona Trahe, dev; +Cc: pablo.de.lara.guarch, paul.e.luse



On 2/20/2019 9:30 PM, Shally Verma wrote:
>
>> -----Original Message-----
>> From: dev <dev-bounces@dpdk.org> On Behalf Of Fiona Trahe
>> Sent: 17 January 2019 23:06
>> To: dev@dpdk.org
>> Cc: pablo.de.lara.guarch@intel.com; fiona.trahe@intel.com; akhil.goyal@nxp.com; paul.e.luse@intel.com
>> Subject: [dpdk-dev] [PATCH v2] compressdev: add feature flag to specify where processing is done
>>
>> External Email
>>
>> A new device feature flag, RTE_COMPDEV_FF_OP_DONE_IN_DEQUEUE
>> is added. A PMD should set this if the bulk of the
>> processing is done during the dequeue. It should leave it
>> cleared if the bulk of the processing is done during the
>> enqueue (default).
>> Applications can use this as a hint for tuning.
>>
>> Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
> Acked-by: Shally Verma <shally.verma@marvell.com>
>
> Thanks
> Shally
Applied to dpdk-next-crypto

Thanks.

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

* Re: [dpdk-dev] [PATCH v2] compressdev: add feature flag to specify where processing is done
  2019-03-22 15:09     ` Akhil Goyal
@ 2019-03-22 15:09       ` Akhil Goyal
  0 siblings, 0 replies; 21+ messages in thread
From: Akhil Goyal @ 2019-03-22 15:09 UTC (permalink / raw)
  To: Shally Verma, Fiona Trahe, dev; +Cc: pablo.de.lara.guarch, paul.e.luse



On 2/20/2019 9:30 PM, Shally Verma wrote:
>
>> -----Original Message-----
>> From: dev <dev-bounces@dpdk.org> On Behalf Of Fiona Trahe
>> Sent: 17 January 2019 23:06
>> To: dev@dpdk.org
>> Cc: pablo.de.lara.guarch@intel.com; fiona.trahe@intel.com; akhil.goyal@nxp.com; paul.e.luse@intel.com
>> Subject: [dpdk-dev] [PATCH v2] compressdev: add feature flag to specify where processing is done
>>
>> External Email
>>
>> A new device feature flag, RTE_COMPDEV_FF_OP_DONE_IN_DEQUEUE
>> is added. A PMD should set this if the bulk of the
>> processing is done during the dequeue. It should leave it
>> cleared if the bulk of the processing is done during the
>> enqueue (default).
>> Applications can use this as a hint for tuning.
>>
>> Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
> Acked-by: Shally Verma <shally.verma@marvell.com>
>
> Thanks
> Shally
Applied to dpdk-next-crypto

Thanks.

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

* [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done
@ 2018-12-18 18:41 Luse, Paul E
  0 siblings, 0 replies; 21+ messages in thread
From: Luse, Paul E @ 2018-12-18 18:41 UTC (permalink / raw)
  To: Stephen Hemminger
  Cc: dev, akhil.goyal, Jozwiak, TomaszX, shally.verma, ashish.gupta,
	Daly, Lee, Trahe, Fiona

Resend wrong subject

-----Original Message-----
From: Trahe, Fiona
Sent: Tuesday, December 18, 2018 7:43 AM
To: Stephen Hemminger <stephen@networkplumber.org>
Cc: dev@dpdk.org; akhil.goyal@nxp.com; Jozwiak, TomaszX <tomaszx.jozwiak@intel.com>; shally.verma@caviumnetworks.com; ashish.gupta@caviumnetworks.com; Daly, Lee <lee.daly@intel.com>; Luse, Paul E <paul.e.luse@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>
Subject: RE: [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done

Hi Stephen

//snip//
> > > Subject: Re: [dpdk-dev] [PATCH] compressdev: add feature flag to 
> > > specify where processing is done
> > >
> > > On Tue, 20 Nov 2018 01:39:48 +0000 Fiona Trahe 
> > > <fiona.trahe@intel.com> wrote:
> > >
> > > > A new device feature flag, RTE_COMPDEV_FF_SW_OP_DONE_IN_DEQUEUE
> > > > is added. A PMD which processes operations using a software 
> > > > acceleration engine should set this if the bulk of the 
> > > > processing is done during the dequeue. It should leave it 
> > > > cleared if the bulk of the processing is done during the enqueue 
> > > > (default).
> > > > An application may find this useful for tuning.
> > > >
> > > > Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
> > >
> > > What application? or is this "if we build it they will come?"
> > [Fiona] Our storage team asked for this, so not quite.
> > Seems like it might by generically useful, so a bit of the latter 
> > too :) Would you prefer I removed that line?
> 
> Hopefully, there would be one or more open source projects using the API.
> I just did a survey of DPDK an 1/3 of it is never used by any open 
> source project.  Hate to see more dead code and special cases created.
> 
> At least, some example code in examples would help. Something like a 
> simple in memory compressed storage server using a network API 
> (SMB?/SSH?/FTP?)
[Fiona] There is no compressdev sample app yet. 
However I've double-checked with the SPDK team, they're currently integrating compressdev and intend to push a patch to SPDK - a storage open-source project - using this flag.

Acked-by: Paul Luse <paul.e.luse@intel.com>

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

end of thread, other threads:[~2019-03-22 15:09 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-20  1:39 [dpdk-dev] [PATCH] compressdev: add feature flag to specify where processing is done Fiona Trahe
2018-11-20  1:53 ` Stephen Hemminger
2018-11-20 16:25   ` Trahe, Fiona
2018-11-20 18:07     ` Stephen Hemminger
2018-12-18 14:43       ` Trahe, Fiona
2018-12-19  5:47         ` Verma, Shally
2018-12-19 17:09           ` Trahe, Fiona
2019-01-10 18:46             ` De Lara Guarch, Pablo
2019-01-12  6:47               ` Verma, Shally
2019-01-16 11:21               ` Shally Verma
2019-01-16 11:36                 ` Trahe, Fiona
2019-01-16 12:09                   ` Shally Verma
2019-01-16 12:44                     ` Trahe, Fiona
2019-01-16 13:47                       ` Shally Verma
2018-11-20  5:17 ` Verma, Shally
2018-11-20 16:40   ` Trahe, Fiona
2019-01-17 17:36 ` [dpdk-dev] [PATCH v2] " Fiona Trahe
2019-02-20 16:00   ` Shally Verma
2019-03-22 15:09     ` Akhil Goyal
2019-03-22 15:09       ` Akhil Goyal
2018-12-18 18:41 [dpdk-dev] [PATCH] " Luse, Paul E

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