From: Thomas Monjalon <thomas@monjalon.net>
To: Ferruh Yigit <ferruh.yigit@intel.com>
Cc: dev@dpdk.org, John McNamara <john.mcnamara@intel.com>,
Marko Kovacevic <marko.kovacevic@intel.com>,
stable@dpdk.org, Tom Barbette <barbette@kth.se>,
Yongseok Koh <yskoh@mellanox.com>,
Konstantin Ananyev <konstantin.ananyev@intel.com>,
Bruce Richardson <bruce.richardson@intel.com>,
Vipin Varghese <vipin.varghese@intel.com>
Subject: Re: [dpdk-dev] [PATCH v4] mk: fix scope of disabling AVX512F support
Date: Mon, 14 Jan 2019 12:55:42 +0100 [thread overview]
Message-ID: <1573462.QHEBVEx1sm@xps> (raw)
In-Reply-To: <20190107164942.88785-1-ferruh.yigit@intel.com>
Hi,
Few details reviewed below,
07/01/2019 17:49, Ferruh Yigit:
> --- a/doc/guides/rel_notes/known_issues.rst
> +++ b/doc/guides/rel_notes/known_issues.rst
> +AVX-512 support disabled
> +------------------------
> +
> +**Description**:
> + ``AVX-512`` support has been disabled on some conditions.
> + This shouldn't be confused with ``CONFIG_RTE_ENABLE_AVX512`` config option which is already
> + disabled by default. This config option defines if ``AVX-512`` specific implementations of
> + some file to be used or not. What has been disabled is compiler feature to produce ``AVX-512``
> + instructions from any source code.
> +
> + On DPDK v18.11 ``AVX-512`` disabled for all ``GCC`` builds which reported to cause a performance
> + drop.
*is* disabled
> +
> + On DPDK v19.02 ``AVX-512`` disable scope reduced to ``GCC`` and ``binutils version 2.30`` based
*is* reduced
> + on information accured from the GCC community defect.
> +
> +**Reason**:
> + Generated ``AVX-512`` code cause crash:
> + https://bugs.dpdk.org/show_bug.cgi?id=97
> + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88096
> +
> +**Resolution/Workaround**:
> + Update ``binutils`` to newer version than ``2.30``.
> + Use different compiler, like ``clang`` for this case.
These are 2 possible workarounds. Should we say "Or" ?
> +
> +**Affected Environment/Platform**:
> + ``GCC`` and ``binutils version 2.30``.
> --- a/doc/guides/rel_notes/release_19_02.rst
> +++ b/doc/guides/rel_notes/release_19_02.rst
> @@ -276,6 +276,19 @@ Known Issues
> Also, make sure to start the actual text at the margin.
> =========================================================
>
> +* ``AVX-512`` support has been disabled for ``GCC`` builds when ``binutils 2.30``
> + is detected [1] because of a crash [2]. This can affect ``native`` machine type
> + build targets on the platforms that support ``AVX512F`` like ``Intel Skylake``
> + processors, and can cause a possible performance drop. The immediate workaround
> + is to use ``clang`` compiler on these platforms.
> + Initial workaround in DPDK v18.11 was to disable ``AVX-512`` support for ``GCC``
> + completely, but based on information on defect submitted to GCC community [3],
> + issue has been identified as ``binutils 2.30`` issue. Since currently only GCC
> + generates ``AVX-512`` instructions, scope limited to ``GCC`` and ``binutils 2.30``
*the* scope *is* limited
> +
> + - [1]: Commit ("mk: fix scope of disabling AVX512F support")
> + - [2]: https://bugs.dpdk.org/show_bug.cgi?id=97
> + - [3]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88096
>
Space missing here
> Tested Platforms
> ----------------
> --- a/mk/toolchain/gcc/rte.toolchain-compat.mk
> +++ b/mk/toolchain/gcc/rte.toolchain-compat.mk
> +LD_VERSION = $(shell $(LD) -v)
> +# disable AVX512F support for GCC & binutils 2.30 as a workaround for Bug 97
> +ifneq ($(filter 2.30%,$(LD_VERSION)),)
> +FORCE_DISABLE_AVX512 := y
> +# print warning only once for librte_eal
> +ifneq ($(filter %librte_eal,$(lastword $(CURDIR))),)
Do we need lastword for CURDIR?
next prev parent reply other threads:[~2019-01-14 11:55 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-19 19:29 [dpdk-dev] [PATCH] " Ferruh Yigit
2018-12-19 19:58 ` Thomas Monjalon
2018-12-19 20:20 ` Ferruh Yigit
2018-12-19 20:28 ` Thomas Monjalon
2018-12-19 20:53 ` Ferruh Yigit
2018-12-20 11:29 ` Bruce Richardson
2018-12-19 21:00 ` [dpdk-dev] [PATCH v2] " Ferruh Yigit
2018-12-22 23:02 ` Thomas Monjalon
2019-01-03 16:23 ` [dpdk-dev] [PATCH v3] " Ferruh Yigit
2019-01-03 22:46 ` Yongseok Koh
2019-01-04 2:40 ` Varghese, Vipin
2019-01-04 10:27 ` Ferruh Yigit
2019-01-04 10:28 ` Varghese, Vipin
2019-01-07 16:49 ` [dpdk-dev] [PATCH v4] " Ferruh Yigit
2019-01-08 3:50 ` Varghese, Vipin
2019-01-14 11:55 ` Thomas Monjalon [this message]
2019-01-14 15:49 ` [dpdk-dev] [PATCH v5] " Ferruh Yigit
2019-01-14 16:28 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1573462.QHEBVEx1sm@xps \
--to=thomas@monjalon.net \
--cc=barbette@kth.se \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=john.mcnamara@intel.com \
--cc=konstantin.ananyev@intel.com \
--cc=marko.kovacevic@intel.com \
--cc=stable@dpdk.org \
--cc=vipin.varghese@intel.com \
--cc=yskoh@mellanox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).