> On 18 Apr 2017, at 12:52, Marco Varlese <marco.varl...@suse.com> wrote:
> 
> On Fri, 2017-04-14 at 11:19 +0000, Damjan Marion (damarion) wrote:
>> Marco,
>> 
>> If you want to do downstream packaging and link against shared dpdk, you can 
>> do it by compiling directly from autotools project. Basically:
>> 
>> cd src/
>> autoreconf -fis
>> export CFLAGS=….
>> ./configure —flags
>> make
>> make install
>> 
>> Please note that we are intentionally linking against static DPDK libs as 
>> want
>> to have flexibility
>> of adding additional patches to dpdk build. Currently we have bunch of 
>> patcher
>> related to Mellanox ConnectX-5 
>> which are not available in latest dpdk release.
> I understand why you use the internal DPDK version. 
> However, I am hopeful (for the future) that cross-collaboration with the DPDK
> project can avoid the need of keep doing this (for all the good reason of 
> having
> a common up-stream project with all the goodies in it rather than some sort of
> "fork" in a consumer project).

+1

> 
>> 
>> May I ask what are your distro guidance when it comes to optimization of the
>> code for specific 
>> microarchitectures? Do you need to support all x86_64 systems or just few
>> latest generations?
> We support DPDK since version 2.2 (roughly mid-2015) so I would say any
> processor which is not older than 2 years...
> 
>> 
>> How do you compile DPDK?
> I think the easiest for me here is to post here the link to our .spec file 
> used
> to generate the package we ship...
> https://build.opensuse.org/package/view_file/network/dpdk/dpdk.spec?expand=1
> You should be able to access it; in case you can't, please, let me know so I 
> can
> send it to you…

OK, so looks like your DPDK distro is compiled with -march=core2 which is 11 
year
old instruction set. That means that SSE4 and AVX/AVX2 instructions are 
disabled.

If i get it right that also means that vector PMDs are disabled (at least i40e) 
as it
requires SSE4.1 instructions.

All this means that performance of VPP linked against your dpdk libraries will 
be significantly
slower.


> 
> I'm going to try your suggested steps and will let you know how it goes.
> 
>> 
>> Thanks,
>> 
>> Damjan
> Thanks,
> Marco
> 
> 
>> 
>> 
>>> 
>>> On 12 Apr 2017, at 11:33, Marco Varlese <marco.varl...@suse.com> wrote:
>>> 
>>> BTW, in case you're wondering which commands I am using to build:
>>> 
>>>> 
>>>> make bootstrap
>>>> make build (using build-release produces the same issue)
>>> 
>>> 
>>> Regards,
>>> Marco
>>> 
>>> On Tue, 2017-04-11 at 09:27 +0200, Marco Varlese wrote:
>>>> 
>>>> Hi,
>>>> 
>>>> I am facing a build issue with the latest VPP and not sure if others have
>>>> seen
>>>> the same? (I'm copying/pasting the errors below)
>>>> 
>>>> It appears to be broken for both "shared dpdk" and using the "in-repo"
>>>> dpdk
>>>> source code. Both compilation mode worked just fine for me using VPP 17.01
>>>> so
>>>> not sure if I have to change anything in the .mk files or build the code
>>>> differently...
>>>> 
>>>> I have to say that since I am very interested in consuming the VPP code
>>>> downstream the "shared mode" compilation option is much more valuable to
>>>> me...
>>>> 
>>>> Any help would be much appreciated.
>>>> 
>>>> 
>>>> When building in shared mode for dpdk I get the following error:
>>>> 
>>>> t -f 'vpp/app/version.c' || echo '/home/abuild/rpmbuild/BUILD/vpp/build-
>>>> data/../src/'`vpp/app/version.c
>>>> [  415s] /home/abuild/rpmbuild/BUILD/vpp/build-
>>>> data/../src/vpp/vnet/main.c:21:29: fatal error: vpp/app/version.h: No such
>>>> file
>>>> or directory
>>>> [  415s]  #include <vpp/app/version.h>
>>>> [  415s]                              ^
>>>> [  415s] compilation terminated.
>>>> [  415s] make[4]: *** [Makefile:5872: vpp/vnet/bin_vpp-main.o] Error 1
>>>> [  415s] make[4]: *** Waiting for unfinished jobs....
>>>> [  415s] /home/abuild/rpmbuild/BUILD/vpp/build-
>>>> data/../src/vpp/app/version.c:17:29: fatal error: vpp/app/version.h: No
>>>> such
>>>> file or directory
>>>> [  415s]  #include <vpp/app/version.h>
>>>> [  415s]                              ^
>>>> [  415s] compilation terminated.
>>>> [  415s] make[4]: *** [Makefile:5900: vpp/app/bin_vpp-version.o] Error 1
>>>> [  415s] mv -f vpp/app/.deps/bin_vpp-vpe_cli.Tpo vpp/app/.deps/bin_vpp-
>>>> vpe_cli.Po
>>>> [  416s] mv -f vpp-api/pneum/.deps/libpneum_la-pneum.Tpo vpp-
>>>> api/pneum/.deps/libpneum_la-pneum.Plo
>>>> [  425s] make[4]: Leaving directory
>>>> '/home/abuild/rpmbuild/BUILD/vpp/build-
>>>> root/build-vpp-native/vpp'
>>>> [  425s] make[3]: *** [Makefile:6764: all-recursive] Error 1
>>>> [  425s] make[3]: Leaving directory
>>>> '/home/abuild/rpmbuild/BUILD/vpp/build-
>>>> root/build-vpp-native/vpp'
>>>> [  425s] make[2]: *** [Makefile:3426: all] Error 2
>>>> [  425s] make[2]: Leaving directory
>>>> '/home/abuild/rpmbuild/BUILD/vpp/build-
>>>> root/build-vpp-native/vpp'
>>>> [  425s] make[1]: *** [Makefile:699: vpp-build] Error 2
>>>> [  425s] make[1]: Leaving directory
>>>> '/home/abuild/rpmbuild/BUILD/vpp/build-
>>>> root'
>>>> [  425s] make: *** [Makefile:213: build-release] Error 2
>>>> [  425s] error: Bad exit status from /var/tmp/rpm-tmp.t3xVux (%build)
>>>> [  425s] 
>>>> [  425s] 
>>>> [  425s] RPM build errors:
>>>> [  425s]     Bad exit status from /var/tmp/rpm-tmp.t3xVux (%build)
>>>> [  425s] 
>>>> [  425s] linux-yk3w.suse failed "build vpp.spec" at Tue Apr 11 07:19:21
>>>> UTC
>>>> 2017.
>>>> [  425s] 
>>>> 
>>>> 
>>>> On the other hand, when building the code using the in-repo dpdk source
>>>> code I
>>>> get the following one:
>>>> 
>>>>   CC test.o
>>>> /usr/lib64/gcc/x86_64-suse-linux/6/../../../../x86_64-suse-linux/bin/ld:
>>>> /usr/lib64/libmvec_nonshared.a(svml_finite_alias.oS): relocation
>>>> R_X86_64_PC32
>>>> against undefined symbol `_ZGVbN2v_log@@GLIBC_2.22' can not be used when
>>>> making
>>>> a shared object; recompile with -fPIC
>>>> /usr/lib64/gcc/x86_64-suse-linux/6/../../../../x86_64-suse-linux/bin/ld:
>>>> final
>>>> link failed: Bad value
>>>> collect2: error: ld returned 1 exit status
>>>> /home/mvarlese/repos/vpp/build-root/build-vpp-native/dpdk/dpdk-
>>>> 17.02/mk/rte.app.mk:235: recipe for target 'cmdline_test' failed
>>>> make[9]: *** [cmdline_test] Error 1
>>>> /home/mvarlese/repos/vpp/build-root/build-vpp-native/dpdk/dpdk-
>>>> 17.02/mk/rte.subdir.mk:61: recipe for target 'cmdline_test' failed
>>>> make[8]: *** [cmdline_test] Error 2
>>>> make[8]: *** Waiting for unfinished jobs....
>>>>   CC resource.o
>>>> 
>>>> 
>>>> Thanks and regards,
>>>> Marco
>>>> 
>>>> _______________________________________________
>>>> vpp-dev mailing list
>>>> vpp-dev@lists.fd.io
>>>> https://lists.fd.io/mailman/listinfo/vpp-dev
>>> _______________________________________________
>>> vpp-dev mailing list
>>> vpp-dev@lists.fd.io
>>> https://lists.fd.io/mailman/listinfo/vpp-dev
>> 
> _______________________________________________
> vpp-dev mailing list
> vpp-dev@lists.fd.io
> https://lists.fd.io/mailman/listinfo/vpp-dev

_______________________________________________
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to