Re: What CPU extensions can we assume are available by arch?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jun Aruga writes:

> I recommend using the simde (SIMD Everywhere) library for the packaging and contribution
> to the upstream. https://github.com/nemequ/simde

This does not help unless the project LPCNet maintainers are willing to built the fat binaries and support dynamic selection. Otherwise every user is rebuilding from source.

> You do not need to care about the availability by arch or compiler when using this library.

This is exactly what the Power Vector Library PVECLIB is doing for ppc64le. PVECLIB provides POWER7/8/9 VMX/VSX operations equivalent to <altivec.h> while smoothing over compiler version and platform ISA differences. PVECLIB also provides useful operations beyond the "Power Vector Intrinsic Programming Reference" defined set (like Multiply 128-bit Quadword). Net you can write using power9 operation extensions and still compile for -mcpu=power7/8. PVECLIB provides the appropriate implementation.

Also for GCC (and I think Clang) provide ppc64le equivalent headers to Intel MMX and SSE intrinsic headers (at least for SSE3 and some SSE4). This could be more of a performance compromise (vs PVECLIB) but would be a place to start if you have an existing SSE implementation and want to vectorize ppc64le.

But again someone needs to build and distribute the fat binaries for each project.
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux