On Thu, Apr 15, 2021 at 01:32:08PM +0000, Juraj Linkeš wrote: > > > > -----Original Message----- > > From: Bruce Richardson <bruce.richard...@intel.com> > > Sent: Wednesday, March 31, 2021 2:39 PM > > To: Juraj Linkeš <juraj.lin...@pantheon.tech> > > Cc: tho...@monjalon.net; david.march...@redhat.com; > > honnappa.nagaraha...@arm.com; dev@dpdk.org > > Subject: Re: [PATCH v4] build: add platform meson option > > > > On Wed, Mar 31, 2021 at 12:16:59PM +0000, Juraj Linkeš wrote: > > > Bruce, what do you think of the patch now? Do we need to add/change > > anything else, like documentation? > > > > > > One thing to note is that we're changing the default behavior in this > > > patch > > from machine=native to machine=generic (or more accurately, to > > cpu_instruction_set=generic). Do we want to do that? > > > > > The patch in general looks ok, but I am uncertain about this change indeed. > > Especially since the -march flag we mirror to the pkg-config file. I'd like > > to see > > something like [1] included along with such a change. It allows us per-arch > > to > > select the flags to send to the pkg-config file, rather than just always > > using > > machine_args blindly. > > > > Feedback appreciated. > > > > I'm not sure what feedback do you want here. I'm not that familiar with > pkg-config files. I think this is about DPDK being built a set of > instructions and an app using DPDK being able to be built another set of > instructions and the pkg-config file bridges these? Could you expand a bit? I > read the other commit msg (in [1]) as well and I don't know how it's related > to this patch. > The main thing I suppose I'm concerned about is that I'd like more input from people on the change from "native" to "generic" build by default.
On top of that, the patch I linked to adjusts things a little further allowing separation of the ISA level used for building DPDK and for building the app using DPDK. For example, for x86, it would probably be more respectful for applications to have "-msse4" in the pkg-config file, rather than -march=native or -march=corei7. The fact that DPDK was compiled for a particular micro-arch should not force the user to use the same micro-arch. Instead, each architecture should be able to output a separate value that is suitable - in x86 case, turning on SSE4.2 as the minimum needed ISA level. However, I'm prepared to accept that discussion of the latter change can be dealt with separately from this patch. So long as others have no objection to change in default machine flags, I'm ok with it too. /Bruce