> On Jul 5, 2024, at 5:10 PM, Pavan Nikhilesh Bhagavatula
> wrote:
>
>> 04/07/2024 16:55, Stephen Hemminger:
>>> On Thu, 04 Jul 2024 16:14:42 +0200
>>> Thomas Monjalon wrote:
>>>
>> Let’s ask Pavan why this flag is used in cn10k driver.
>>
>> From our perspective, WFE is availab
> > > > We are using this flag to allow application to choose between WFE
> > > > and
> > non- > WFE code path. > The non-WFE path performs slightly better. >
> > Is it correct if I assume that this flag is not used to indicate the
> > availability
> >
> > >
> > > We are using this flag to allow a
; ; Jack Bond-Preston pres...@foss.arm.com>; Nick Connolly ; Vinod
> Krishna ; david.march...@redhat.com; nd
> ; nd
> Subject: [EXTERNAL] RE: [PATCH v2 2/2] eal: add Arm WFET in power
> management intrinsics
>
> > > We are using this flag to allow application to choose betw
> 04/07/2024 16:55, Stephen Hemminger:
> > On Thu, 04 Jul 2024 16:14:42 +0200
> > Thomas Monjalon wrote:
> >
> > > > > Let’s ask Pavan why this flag is used in cn10k driver.
> > > > >
> > > > > From our perspective, WFE is available on all the supported arm
> platforms in
> > > > > DPDK.
> > > > >
>
> We are using this flag to allow application to choose between WFE and non-
> WFE code path.
> The non-WFE path performs slightly better.
>
Is it correct if I assume that this flag is not used to indicate the
availability
of WFE instruction in any of your platforms?
If so, then its usage is
04/07/2024 16:55, Stephen Hemminger:
> On Thu, 04 Jul 2024 16:14:42 +0200
> Thomas Monjalon wrote:
>
> > > > Let’s ask Pavan why this flag is used in cn10k driver.
> > > >
> > > > From our perspective, WFE is available on all the supported arm
> > > > platforms in
> > > > DPDK.
> > > > Therefor
04/07/2024 12:55, Pavan Nikhilesh Bhagavatula:
> > > 03/07/2024 15:27, Wathsala Wathawana Vithanage:
> > > > > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED #ifdef block.
> > > > > > This patch fixes this issue by moving __RTE_ARM_WFE out of
> > > > > > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED block.
> > > > > >
> >
> > 03/07/2024 15:27, Wathsala Wathawana Vithanage:
> > > > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED #ifdef block.
> > > > > This patch fixes this issue by moving __RTE_ARM_WFE out of
> > > > > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED block.
> > > > >
> > > > > Perhaps we should change RTE_ARM_USE_WFE to somethi
> 03/07/2024 15:27, Wathsala Wathawana Vithanage:
> > > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED #ifdef block.
> > > > This patch fixes this issue by moving __RTE_ARM_WFE out of
> > > > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED block.
> > > >
> > > > Perhaps we should change RTE_ARM_USE_WFE to something like
> >
> > > > +uint8_t wfet_en;
> > >
> > > It should be made static probably.
> > > This variable will be unused in some cases, needs #ifdef.
> > >
> >
> > This variable is used in all cases. It's 1 when WFET is available, 0 when
> > it's not.
>
> It would be 0 if you make it static yes.
No need to m
03/07/2024 15:27, Wathsala Wathawana Vithanage:
> > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED #ifdef block.
> > > This patch fixes this issue by moving __RTE_ARM_WFE out of
> > > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED block.
> > >
> > > Perhaps we should change RTE_ARM_USE_WFE to something like
> > > RTE_ARM_US
> RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED #ifdef block.
> > This patch fixes this issue by moving __RTE_ARM_WFE out of
> > RTE_WAIT_UNTIL_EQUAL_ARCH_DEFINED block.
> >
> > Perhaps we should change RTE_ARM_USE_WFE to something like
> > RTE_ARM_USE_WFE_IN_WAIT_UNTIL_EQUAL ?
>
> Yes perhaps.
RTE_ARM_USE_WF
01/07/2024 23:34, Wathsala Wathawana Vithanage:
> > 19/06/2024 08:45, Wathsala Vithanage:
> > > rte_cpu_get_intrinsics_support(struct rte_cpu_intrinsics *intrinsics)
> > > {
> > > memset(intrinsics, 0, sizeof(*intrinsics)); -#ifdef RTE_ARM_USE_WFE
> > > intrinsics->power_monitor = 1;
> > > -#e
> 19/06/2024 08:45, Wathsala Vithanage:
> > --- a/lib/eal/arm/include/rte_cpuflags_64.h
> > +++ b/lib/eal/arm/include/rte_cpuflags_64.h
> > @@ -36,6 +36,7 @@ enum rte_cpu_flag_t {
> > RTE_CPUFLAG_SVEF64MM,
> > RTE_CPUFLAG_SVEBF16,
> > RTE_CPUFLAG_AARCH64,
> > + RTE_CPUFLAG_WFXT,
> >
19/06/2024 08:45, Wathsala Vithanage:
> --- a/lib/eal/arm/include/rte_cpuflags_64.h
> +++ b/lib/eal/arm/include/rte_cpuflags_64.h
> @@ -36,6 +36,7 @@ enum rte_cpu_flag_t {
> RTE_CPUFLAG_SVEF64MM,
> RTE_CPUFLAG_SVEBF16,
> RTE_CPUFLAG_AARCH64,
> + RTE_CPUFLAG_WFXT,
> };
It may
Wait for event with timeout (WFET) puts the CPU in a low power
mode and stays there until an event is signalled (SEV), loss of
an exclusive monitor or a timeout.
WFET is enabled selectively by checking FEAT_WFxT in Linux
auxiliary vector. If FEAT_WFxT is not available power management
will fallback
16 matches
Mail list logo