From: David Christensen <drc@linux.vnet.ibm.com>
To: Bruce Richardson <bruce.richardson@intel.com>, dev@dpdk.org
Cc: bluca@debian.org, david.marchand@redhat.com,
ian.stokes@intel.com, Ilya Maximets <i.maximets@ovn.org>,
Jerin Jacob <jerinj@marvell.com>,
Ruifeng Wang <ruifeng.wang@arm.com>,
Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>,
konstantin.ananyev@intel.com, ferruh.yigit@intel.com
Subject: Re: [dpdk-dev] [RFC PATCH] build/pkg-config: remove machine arch flag
Date: Wed, 15 Sep 2021 14:23:17 -0700 [thread overview]
Message-ID: <d508695b-9017-5f80-8c3b-54f7fff75db7@linux.vnet.ibm.com> (raw)
In-Reply-To: <YUIfNSZ6jjL5p1pH@bricha3-MOBL.ger.corp.intel.com>
On 9/15/21 9:28 AM, Bruce Richardson wrote:
> On Fri, Dec 11, 2020 at 03:51:11PM +0000, Bruce Richardson wrote:
>> Traditionally any apps built using DPDK had to support the same
>> instruction sets as supported when the DPDK SDK itself was built, since
>> that was "leaked" through to the end-app and DPDK headers via
>> RTE_MACHINE_CPUFLAG_* values. Therefore, when converting over to meson
>> for app build correctness the "-march=" flag was included in the
>> pkg-config cflags output.
>>
>> However, since the DPDK-specific CPU flags are now obsolete, and we
>> instead check directly for compiler-defined flags, we should no longer
>> need to force the exact same architecture match in all cases. To
>> faciliate such flexibility, a new pkg_config_machine_args array - which
>> defaults to the existing machine_args array has been defined. The
>> individual architectures - x86, arm and ppc - can choose if and how to
>> override this value themselves.
>>
>> For x86, since SSE4.2 is the minimum instruction-set level needed to run
>> DPDK, and since some header files assume that minimum level of
>> instruction set support, we override the "-march=" value with "-msse4"
>> for the pkg-config file. This allows end applications to set their own
>> "march" value while still ensuring valid DPDK compilation.
>>
>> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
>> ---
>>
>> CC: Jerin Jacob <jerinj@marvell.com>
>> CC: Ruifeng Wang <ruifeng.wang@arm.com>
>> CC: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
>> CC: David Christensen <drc@linux.vnet.ibm.com> for
>> Feedback requested from ARM and PPC maintainers as to this change
>> and what flags, if any, need to be in the .pc file for DPDK on such
>> platforms. For example - is setting 'pkg_config_machine_args' to
>> 'machine_args' by default necessary behaviour?
>>
>
> Ping for further thoughts or input on this patch.
On initial inspection I don't see any additional value for PPC systems.
Selection of a CPU through -mcpu implies a full ISA for that CPU,
including things like vector extensions, at least with respect to the
minimum supported POWER8 CPU (ISA 2.07) and later ISAs. The values of
machine_args and pkg_config_machine_args should be identical in all
cases I can think of.
If a third party OpenPOWER CPU comes along some time in the future then
the requirements may change.
Dave
next prev parent reply other threads:[~2021-09-15 21:23 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-11 15:51 [dpdk-dev] [RFC PATCH] build/pkg-config: remove machine arch flag Bruce Richardson
2020-12-16 18:45 ` David Christensen
2021-09-15 16:28 ` Bruce Richardson
2021-09-15 21:23 ` David Christensen [this message]
2021-09-16 3:43 ` Jerin Jacob
2021-09-16 10:16 ` Ruifeng Wang
2021-09-16 14:11 ` Ruifeng Wang
2023-06-14 19:33 ` Stephen Hemminger
2023-06-15 8:44 ` Bruce Richardson
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=d508695b-9017-5f80-8c3b-54f7fff75db7@linux.vnet.ibm.com \
--to=drc@linux.vnet.ibm.com \
--cc=bluca@debian.org \
--cc=bruce.richardson@intel.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=honnappa.nagarahalli@arm.com \
--cc=i.maximets@ovn.org \
--cc=ian.stokes@intel.com \
--cc=jerinj@marvell.com \
--cc=konstantin.ananyev@intel.com \
--cc=ruifeng.wang@arm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.