mbox

[0/2] simplify building x86 code with AVX2 support

Message ID 20230727093107.7242-1-bruce.richardson@intel.com (mailing list archive)
Headers

Message

Bruce Richardson July 27, 2023, 9:31 a.m. UTC
  Inside our optimized vector drivers (and libs), there were always build
time checks for various levels of instruction set support, most
notably AVX2 and AVX-512 on x86 systems. One of the checks done in
each case was verifying that the compiler used was able to generate
AVX code appropriately. However, since this was originally done,
our minimum compiler support has been updated and so we no longer
need to check this - all supported compilers can generate AVX2.
This allows us to simplify the build logic for the x86 vector code.

In future, we can do similarly for AVX-512.

Bruce Richardson (2):
  build/x86: remove conditional checks for AVX2 support
  build: remove unnecessary AVX2 compiler flag

 drivers/net/bnxt/bnxt_ethdev.c          |  8 ++++----
 drivers/net/bnxt/bnxt_rxr.h             |  2 +-
 drivers/net/bnxt/bnxt_txr.h             |  2 +-
 drivers/net/bnxt/meson.build            | 26 +++++++++----------------
 drivers/net/enic/meson.build            | 10 +++-------
 drivers/net/i40e/i40e_rxtx.c            | 14 ++++---------
 drivers/net/i40e/meson.build            | 22 ++++++---------------
 drivers/net/iavf/iavf_rxtx_vec_common.h |  2 +-
 drivers/net/iavf/meson.build            | 22 ++++++---------------
 drivers/net/ice/meson.build             | 21 ++++++--------------
 lib/acl/meson.build                     | 23 +++++-----------------
 lib/acl/rte_acl.c                       | 10 +++-------
 12 files changed, 49 insertions(+), 113 deletions(-)

--
2.39.2
  

Comments

David Marchand Oct. 12, 2023, 12:37 p.m. UTC | #1
Hello Bruce,

On Thu, Jul 27, 2023 at 11:31 AM Bruce Richardson
<bruce.richardson@intel.com> wrote:
>
> Inside our optimized vector drivers (and libs), there were always build
> time checks for various levels of instruction set support, most
> notably AVX2 and AVX-512 on x86 systems. One of the checks done in
> each case was verifying that the compiler used was able to generate
> AVX code appropriately. However, since this was originally done,
> our minimum compiler support has been updated and so we no longer
> need to check this - all supported compilers can generate AVX2.
> This allows us to simplify the build logic for the x86 vector code.
>
> In future, we can do similarly for AVX-512.
>
> Bruce Richardson (2):
>   build/x86: remove conditional checks for AVX2 support
>   build: remove unnecessary AVX2 compiler flag
>
>  drivers/net/bnxt/bnxt_ethdev.c          |  8 ++++----
>  drivers/net/bnxt/bnxt_rxr.h             |  2 +-
>  drivers/net/bnxt/bnxt_txr.h             |  2 +-
>  drivers/net/bnxt/meson.build            | 26 +++++++++----------------
>  drivers/net/enic/meson.build            | 10 +++-------
>  drivers/net/i40e/i40e_rxtx.c            | 14 ++++---------
>  drivers/net/i40e/meson.build            | 22 ++++++---------------
>  drivers/net/iavf/iavf_rxtx_vec_common.h |  2 +-
>  drivers/net/iavf/meson.build            | 22 ++++++---------------
>  drivers/net/ice/meson.build             | 21 ++++++--------------
>  lib/acl/meson.build                     | 23 +++++-----------------
>  lib/acl/rte_acl.c                       | 10 +++-------
>  12 files changed, 49 insertions(+), 113 deletions(-)

Sorry, this series had fallen through the cracks... though I intended
to apply with other build update series.

It still applies fine, I ran my checks and I see nothing wrong with the series.
Applied, thanks for the cleanup.