[Buildroot] [PATCH v4 04/13] package/gemmlowp: new package

Yann E. MORIN yann.morin.1998 at free.fr
Mon Jan 30 07:13:36 UTC 2023


James, All,

On 2023-01-29 20:17 -0700, James Hilliard spake thusly:
> On Sun, Jan 29, 2023 at 2:45 PM Yann E. MORIN <yann.morin.1998 at free.fr> wrote:
[--SNIP--]
> > For x86, we should probably have code like (what we have as
> > BR2_X86_CPU_HAS_SSE4 seems to be SSE4.1, but it is not clear whether
> > there is an actual delta between SSE4 and SSE4.1 [0], so let's be safe
> > and assume that BR2_X86_CPU_HAS_SSE4 is not enough):
> >
> >     ifeq ($(BR2_X86_CPU_HAS_SSE42),y)
> >     GEMMLOWP_OPTIM += -msse4.1
> >     endif
> >
> > However, that same header seems to also have some detection based on
> > macros... This needs to be cleared, maybe?
> 
> Well gemmlowp is effectively a header only library so optimization flags would
> not be set for the gemmlowp package itself but rather in something like the
> tensorflow-lite package which consumes the headers AFAIU.

Yeah, I noticed that it was a header-only library only later...

Still, for those packages, gemmlowp, neon-2-sse, maybe fxdiv, they do
have a requirement that SSE be needed, so they should depend on that.
For example:

    config BR2_PACKAGES_GEMMLOWP_ARCH_SUPPORTS
        bool
        default y if BR2_X86_CPU_HAS_SSE42
        default y if BR2_ARM_CPU_HAS_NEON

Or:

    config BR2_PACKAGES_NEON_2_SEE_ARCH_SUPPORTS
        bool
        default y if BR2_X86_CPU_HAS_SSE3

Otherwise, those packages (notable neon-2-sse) don't make much sense, or
will be horribly slow...

Can you send a set of patches, please?

Regards,
Yann E. MORIN.

> Note there's technically an unused deprecated library that gets installed
> to staging, we don't install it to target since we don't have anything consuming
> that deprecated interface at all:
> https://github.com/google/gemmlowp#old-eightbitintgemm-legacy-deprecated-interface
> 
> >
> > [0] https://en.wikipedia.org/wiki/SSE4
> >
> > Regards,
> > Yann E. MORIN.
> >
> > > +$(eval $(cmake-package))
> > > --
> > > 2.34.1
> > >
> > > _______________________________________________
> > > buildroot mailing list
> > > buildroot at buildroot.org
> > > https://lists.buildroot.org/mailman/listinfo/buildroot
> >
> > --
> > .-----------------.--------------------.------------------.--------------------.
> > |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> > | +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
> > | +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
> > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
> > '------------------------------^-------^------------------^--------------------'
> _______________________________________________
> buildroot mailing list
> buildroot at buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'



More information about the buildroot mailing list