DPDK usage discussions
 help / color / mirror / Atom feed
* [dpdk-users] build dpdk for a cpu that doesn't support avx
@ 2019-02-21 14:47 Alex Kiselev
  2019-02-21 15:32 ` Alex Kiselev
  0 siblings, 1 reply; 4+ messages in thread
From: Alex Kiselev @ 2019-02-21 14:47 UTC (permalink / raw)
  To: users

Hi.

Is it possible to build DPDK application  on a machine that do have AVX support
for use at another machine that doesn't have AVX feature?

Thanks.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-users] build dpdk for a cpu that doesn't support avx
  2019-02-21 14:47 [dpdk-users] build dpdk for a cpu that doesn't support avx Alex Kiselev
@ 2019-02-21 15:32 ` Alex Kiselev
  2019-02-21 16:02   ` Van Haaren, Harry
  0 siblings, 1 reply; 4+ messages in thread
From: Alex Kiselev @ 2019-02-21 15:32 UTC (permalink / raw)
  To: users

It looks like I've found a way:

I edited $RTE_SDK/config/defconfig_x86_64-native-linuxapp-gcc
  CONFIG_RTE_MACHINE="x86-64"

and then I used
  make EXTRA_CFLAGS="-march=x86-64 -mpopcnt -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mfpmath=sse -mpopcnt"

The application has started successfully.
But I am wondering, maybe I've missed something and there are potential bugs in this way?

> Hi.

> Is it possible to build DPDK application  on a machine that do have AVX support
> for use at another machine that doesn't have AVX feature?

> Thanks.

--
Alex

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-users] build dpdk for a cpu that doesn't support avx
  2019-02-21 15:32 ` Alex Kiselev
@ 2019-02-21 16:02   ` Van Haaren, Harry
  2019-02-21 16:32     ` Alex Kiselev
  0 siblings, 1 reply; 4+ messages in thread
From: Van Haaren, Harry @ 2019-02-21 16:02 UTC (permalink / raw)
  To: Alex Kiselev, users

> -----Original Message-----
> From: users [mailto:users-bounces@dpdk.org] On Behalf Of Alex Kiselev
> Sent: Thursday, February 21, 2019 3:33 PM
> To: users@dpdk.org
> Subject: Re: [dpdk-users] build dpdk for a cpu that doesn't support avx
> 
> It looks like I've found a way:
> 
> I edited $RTE_SDK/config/defconfig_x86_64-native-linuxapp-gcc
>   CONFIG_RTE_MACHINE="x86-64"
> 
> and then I used
>   make EXTRA_CFLAGS="-march=x86-64 -mpopcnt -mmmx -msse -msse2 -msse3 -mssse3
> -msse4.1 -msse4.2 -mfpmath=sse -mpopcnt"
> 
> The application has started successfully.
> But I am wondering, maybe I've missed something and there are potential bugs
> in this way?
> 
> > Hi.
> 
> > Is it possible to build DPDK application  on a machine that do have AVX
> support
> > for use at another machine that doesn't have AVX feature?
> 
> > Thanks.


Using -march to manually tune should work fine, just be aware of mistakes made; this is an error prone method..

As per the GCC docs, you can target specific CPU families, and the optimal flags will be selected:
https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html

Example:  -march=goldmont-plus

With make, EXTRA_CFLAGS="-march=NAME-HERE" should work
With Meson, cd <build_dir> && meson configure -Dc_args="-march=NAME-HERE"

I guess there's a prettier method for meson, but the above works here :)

Hope that helps, -Harry

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-users] build dpdk for a cpu that doesn't support avx
  2019-02-21 16:02   ` Van Haaren, Harry
@ 2019-02-21 16:32     ` Alex Kiselev
  0 siblings, 0 replies; 4+ messages in thread
From: Alex Kiselev @ 2019-02-21 16:32 UTC (permalink / raw)
  To: Van Haaren, Harry, users


>> -----Original Message-----
>> From: users [mailto:users-bounces@dpdk.org] On Behalf Of Alex Kiselev
>> Sent: Thursday, February 21, 2019 3:33 PM
>> To: users@dpdk.org
>> Subject: Re: [dpdk-users] build dpdk for a cpu that doesn't support avx

>> It looks like I've found a way:

>> I edited $RTE_SDK/config/defconfig_x86_64-native-linuxapp-gcc
>>   CONFIG_RTE_MACHINE="x86-64"

>> and then I used
>>   make EXTRA_CFLAGS="-march=x86-64 -mpopcnt -mmmx -msse -msse2 -msse3 -mssse3
>> -msse4.1 -msse4.2 -mfpmath=sse -mpopcnt"

>> The application has started successfully.
>> But I am wondering, maybe I've missed something and there are potential bugs
>> in this way?

>> > Hi.

>> > Is it possible to build DPDK application  on a machine that do have AVX
>> support
>> > for use at another machine that doesn't have AVX feature?

>> > Thanks.


> Using -march to manually tune should work fine, just be aware of
> mistakes made; this is an error prone method..

> As per the GCC docs, you can target specific CPU families, and the optimal flags will be selected:
> https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html

> Example:  -march=goldmont-plus

> With make, EXTRA_CFLAGS="-march=NAME-HERE" should work
> With Meson, cd <build_dir> && meson configure -Dc_args="-march=NAME-HERE"

> I guess there's a prettier method for meson, but the above works here :)

> Hope that helps, -Harry

Yes, it helped. Thank you. 
I've switched to using EXTRA_CFLAGS="-march=westmere"

--
Alex

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-02-21 16:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-21 14:47 [dpdk-users] build dpdk for a cpu that doesn't support avx Alex Kiselev
2019-02-21 15:32 ` Alex Kiselev
2019-02-21 16:02   ` Van Haaren, Harry
2019-02-21 16:32     ` Alex Kiselev

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).