Hi Eric,

On 08/23 06:23:07, Eric Chen wrote:
> Hi Brian,
> 
> I am trying to natively build vpp in aarch64 box as well, 
> 
> However when I "make install-dep", it report error -- "unable to locate 
> package default-jdk-headless",
> 
> If you are using Ubuntu as well, could you share with me your apt-get source 
> list?

Are you natively building on a MACCHIATObin with the Ubuntu filesystem?

> Thanks
> Eric
> 
> -----Original Message-----
> From: vpp-dev-boun...@lists.fd.io [mailto:vpp-dev-boun...@lists.fd.io] On 
> Behalf Of Brian Brooks
> Sent: 2017年8月23日 12:31
> To: George Zhao <george.y.z...@huawei.com>
> Cc: discuss <disc...@lists.fd.io>; csit-dev <csit-...@lists.fd.io>; Damjan 
> Marion (damarion) <damar...@cisco.com>; vpp-dev <vpp-dev@lists.fd.io>
> Subject: [EXT] Re: [vpp-dev] [discuss] Question about VPP support for ARM 64
> 
> External Email
> 
> ----------------------------------------------------------------------
> Hi Damjan, George,
> 
> I just pulled lastest source and tried native build (platforms/vpp.mk) on 
> ARMv8:
> 
>   cat: '/sys/bus/pci/devices/0000:00:01.0/uevent': No such file or directory
> 
> From dpdk/Makefile,
> 
>   
> ##############################################################################
>   # Intel x86
>   
> ##############################################################################
>   ifeq ($(MACHINE),$(filter $(MACHINE),x86_64 i686))
>   DPDK_TARGET           ?= $(MACHINE)-native-linuxapp-$(DPDK_CC)
>   DPDK_MACHINE          ?= nhm
>   DPDK_TUNE             ?= core-avx2
>   
> ##############################################################################
>   # Cavium ThunderX
>   
> ##############################################################################
>   else ifneq (,$(findstring thunder,$(shell cat 
> /sys/bus/pci/devices/0000:00:01.0/uevent | grep cavium)))
>   export CROSS=""
>   DPDK_TARGET           ?= arm64-thunderx-linuxapp-$(DPDK_CC)
>   DPDK_MACHINE          ?= thunderx
>   DPDK_TUNE             ?= generic
> 
> So, I am thinking we need to modify this to support MACHINE=aarch64 and 
> possibly rework thunder detection to not fail hard on non-thunder machines.
> 
> Regards,
> Brian
> 
> On 08/22 17:55:20, George Zhao wrote:
> > Thanks Demjan,
> > 
> > Confirmed that your patches worked on our system as well.
> > 
> > George
> > 
> > From: Damjan Marion (damarion) [mailto:damar...@cisco.com]
> > Sent: Tuesday, August 22, 2017 5:03 AM
> > To: George Zhao
> > Cc: Dave Barach (dbarach); discuss; csit-dev; vpp-dev
> > Subject: Re: [vpp-dev] [discuss] Question about VPP support for ARM 64
> > 
> > Dear George,
> > 
> > I tried on my Cavium ThunderX system with latest Ubuntu and after fixing 
> > few minor issues (all patches submitted to master) I got VPP running.
> > I use latest Ubuntu devel (17.10, mainly as I upgraded to new kernel 
> > in my attempts to get system working)
> > 
> > For me it is hard to help you with your particular system, as I don’t have 
> > access to similar one, but my guess is that it shouldn’’t be too hard to 
> > get it working.
> > 
> > Thanks,
> > 
> > Damjan
> > 
> > On 20 Aug 2017, at 23:12, George Zhao 
> > <george.y.z...@huawei.com<mailto:george.y.z...@huawei.com>> wrote:
> > 
> > Hi Damian,
> > 
> > IT is Applied Micro overdrive 1000, here are the uname -a output:
> > 
> > $>> uname -a
> > Linux OD1K 4.4.0-92-generic #115-Ubuntu SMP Thu Aug 10 09:10:33 UTC 
> > 2017 aarch64 aarch64 aarch64 GNU/Linux
> > 
> > thanks
> > George
> > 发件人:Damjan Marion (damarion)
> > 收件人:George Zhao
> > 抄送:dbarach,discuss,csit-dev,vpp-dev
> > 时间:2017-08-20 10:03:27
> > 主题:Re: [vpp-dev] [discuss] Question about VPP support for ARM 64
> > 
> > 
> > 
> > George, are you using ThunderX platform?
> > 
> > I spent few hours today trying to install latest ubuntu on my ThunderX 
> > system but no luck, kernel hangs at some point, both ubuntu provided and 
> > manually compiled.
> > 
> > Can you share about more details about your system?
> > 
> > Thanks,
> > 
> > Damjan
> > 
> > 
> > 
> > > On 19 Aug 2017, at 22:48, George Zhao 
> > > <george.y.z...@huawei.com<mailto:george.y.z...@huawei.com>> wrote:
> > >
> > > If a bug is filed, may I have the bug number, I would be love to trace 
> > > this patch.
> > >
> > > BTW, how do I file a bug for VPP, I did a quick wiki search with no luck.
> > >
> > > Thanks,
> > > George
> > >
> > > -----Original Message-----
> > > From: Dave Barach (dbarach) [mailto:dbar...@cisco.com]
> > > Sent: Saturday, August 19, 2017 7:42 AM
> > > To: George Zhao 
> > > <george.y.z...@huawei.com<mailto:george.y.z...@huawei.com>>
> > > Cc: vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io>; 
> > > disc...@lists.fd.io<mailto:disc...@lists.fd.io>; 
> > > csit-...@lists.fd.io<mailto:csit-...@lists.fd.io>; Damjan Marion 
> > > (damarion) <damar...@cisco.com<mailto:damar...@cisco.com>>
> > > Subject: RE: [discuss] Question about VPP support for ARM 64
> > >
> > > +1, pls add the typedef...
> > >
> > > Thanks… Dave
> > >
> > > -----Original Message-----
> > > From: Damjan Marion (damarion)
> > > Sent: Saturday, August 19, 2017 9:09 AM
> > > To: Dave Barach (dbarach) 
> > > <dbar...@cisco.com<mailto:dbar...@cisco.com>>
> > > Cc: George Zhao 
> > > <george.y.z...@huawei.com<mailto:george.y.z...@huawei.com>>; 
> > > vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io>; 
> > > disc...@lists.fd.io<mailto:disc...@lists.fd.io>; 
> > > csit-...@lists.fd.io<mailto:csit-...@lists.fd.io>
> > > Subject: Re: [discuss] Question about VPP support for ARM 64
> > >
> > >
> > > GCC is able to compile ARM64 code with 256-bit vectors even if target 
> > > platform have only 128-bit registers.
> > >
> > > I.e. for the u8x32 version of that function it generates:
> > >
> > > ARM64:
> > > dpdk_buffer_init_from_template(void*, void*, void*, void*, void*):
> > >        ld1     {v0.16b - v1.16b}, [x4], 32
> > >        st1     {v0.16b - v1.16b}, [x3], 32
> > >        st1     {v0.16b - v1.16b}, [x2], 32
> > >        st1     {v0.16b - v1.16b}, [x1], 32
> > >        st1     {v0.16b - v1.16b}, [x0], 32
> > >        ld1     {v0.16b - v1.16b}, [x4]
> > >        st1     {v0.16b - v1.16b}, [x3]
> > >        st1     {v0.16b - v1.16b}, [x2]
> > >        st1     {v0.16b - v1.16b}, [x1]
> > >        st1     {v0.16b - v1.16b}, [x0]
> > >        ret
> > >
> > > intel x86-64 without AVX2:
> > >
> > > dpdk_buffer_init_from_template(void*, void*, void*, void*, void*):
> > > push   %rbp
> > > mov    %rsp,%rbp
> > > and    $0xffffffffffffffe0,%rsp
> > > lea    0x10(%rsp),%rsp
> > > movdqa (%r8),%xmm1
> > > movdqa 0x10(%r8),%xmm0
> > > movdqa %xmm0,0x10(%rcx)
> > > movdqa %xmm1,(%rcx)
> > > movdqa %xmm1,(%rdx)
> > > movdqa %xmm0,0x10(%rdx)
> > > movdqa %xmm1,(%rsi)
> > > movdqa %xmm0,0x10(%rsi)
> > > movdqa %xmm1,(%rdi)
> > > movdqa %xmm0,0x10(%rdi)
> > > movdqa 0x20(%r8),%xmm1
> > > movdqa 0x30(%r8),%xmm0
> > > movdqa %xmm0,0x30(%rcx)
> > > movdqa %xmm1,0x20(%rcx)
> > > movdqa %xmm1,0x20(%rdx)
> > > movdqa %xmm0,0x30(%rdx)
> > > movdqa %xmm1,0x20(%rsi)
> > > movdqa %xmm0,0x30(%rsi)
> > > movdqa %xmm1,0x20(%rdi)
> > > movdqa %xmm0,0x30(%rdi)
> > > leaveq
> > > retq
> > >
> > >
> > > So i think here it is only about missing typedef….
> > >
> > >
> > >> On 19 Aug 2017, at 14:51, Dave Barach (dbarach) 
> > >> <dbar...@cisco.com<mailto:dbar...@cisco.com>> wrote:
> > >>
> > >> Dear George,
> > >>
> > >> This specific issue isn’t anywhere near as bad as you might think. As 
> > >> given, the code confuses 128-bit vectors with 256-bit vectors, and 
> > >> 64-bit vectors with 128-bit vectors.
> > >>
> > >> Question: does the hardware involved support 256-bit vectors? Probably 
> > >> not... It almost certainly does support 128-bit vectors.
> > >>
> > >> To make progress, use the known-good u8x16 / 128-bit vector code:
> > >>
> > >> static_always_inline void
> > >> dpdk_buffer_init_from_template (void *d0, void *d1, void *d2, void *d3,
> > >>                      void *s)
> > >> {
> > >> #if defined(CLIB_HAVE_VEC128)
> > >>  int i;
> > >>  for (i = 0; i < 4; i++)
> > >>    {
> > >>      *(u8x16 *) (((u8 *) d0) + i * 16) =
> > >>     *(u8x16 *) (((u8 *) d1) + i * 16) =
> > >>     *(u8x16 *) (((u8 *) d2) + i * 16) =
> > >>     *(u8x16 *) (((u8 *) d3) + i * 16) = *(u8x16 *) (((u8 *) s) + i * 16);
> > >>    }
> > >> #else
> > >> #error "CLIB_HAVE_VEC128 has to be defined"
> > >> #endif
> > >> }
> > >>
> > >> Responsible parties - they know who they are - will be back from PTO 
> > >> shortly. We need to clean up / create CLIB_HAVE_VEC_256 and move the 
> > >> 256-bit vector engine code...
> > >>
> > >> You could also try adding “typedef u8 u8x32 _vector_size(32)” but I 
> > >> somehow doubt that will produce anything other than a compiler error.
> > >>
> > >> HTH… Dave
> > >>
> > >> From: 
> > >> vpp-dev-boun...@lists.fd.io<mailto:vpp-dev-boun...@lists.fd.io> 
> > >> [mailto:vpp-dev-boun...@lists.fd.io] On Behalf Of George Zhao
> > >> Sent: Friday, August 18, 2017 7:32 PM
> > >> To: 'vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io>' 
> > >> <vpp-dev@lists.fd.io<mailto:vpp-dev@lists.fd.io>>; 
> > >> 'disc...@lists.fd.io<mailto:disc...@lists.fd.io>' 
> > >> <disc...@lists.fd.io<mailto:disc...@lists.fd.io>>; 
> > >> 'csit-...@lists.fd.io<mailto:csit-...@lists.fd.io>' 
> > >> <csit-...@lists.fd.io<mailto:csit-...@lists.fd.io>>
> > >> Subject: [vpp-dev] Question about VPP support for ARM 64
> > >>
> > >> We encounter following issues while trying to build VPP over ARM 64. It 
> > >> seems right now only ARM32 are supported in the code. I list the steps 
> > >> we tried and hope VPP folks can help us work around this issue.
> > >>
> > >> Steps:
> > >> 1. install Ubuntu 16.04 on OD1K
> > >> $>> uname -a
> > >> Linux OD1K 4.4.0-92-generic #115-Ubuntu SMP Thu Aug 10 09:10:33 UTC 
> > >> 2017 aarch64 aarch64 aarch64 GNU/Linux
> > >>
> > >> 2. git clone VPP 17.04 and build VPP ## Error:
> > >> make[2]: Entering directory '/home/huawei/GIT/vpp.1704/dpdk'
> > >> cat: '/sys/bus/pci/devices/0000:00:01.0/uevent': No such file or 
> > >> directory
> > >>
> > >> **Work around to bypass MakeFile:
> > >> ###################################################################
> > >> ###########
> > >> # Cavium ThunderX
> > >> ###################################################################
> > >> ########### #else ifneq (,$(findstring thunder,$(shell cat 
> > >> /sys/bus/pci/devices/0000:00:01.0/uevent | grep cavium))) else 
> > >> export CROSS=""
> > >> DPDK_TARGET           ?= arm64-thunderx-linuxapp-$(DPDK_CC)
> > >> DPDK_MACHINE          ?= thunderx
> > >> DPDK_TUNE             ?= generic
> > >>
> > >> 3. Then,  make build and failed following:
> > >> /home/huawei/GIT/vpp.1704/build-data/../src/plugins/dpdk/device/node.c:276:9:
> > >>  error: `u8x32' undeclared (first use in this function)
> > >>       *(u8x32 *) (((u8 *) d0) + i * 32) =
> > >>
> > >> ** Check vppinfra/vppinfra/vector.h   and don’t find u8x32 with “aarch64”
> > >> #if defined (__aarch64__) || defined (__arm__) typedef unsigned int 
> > >> u32x4 _vector_size (16); typedef u8 u8x16 _vector_size (16); 
> > >> typedef u16 u16x8 _vector_size (16); typedef u32 u32x4 _vector_size 
> > >> (16); typedef u64 u64x2 _vector_size (16); #endif
> > >>
> > >> 4. According  https://wiki.fd.io/view/VPP/Alternative_builds
> > >> The VPP seems to support arm32 only .
> > >> export PLATFORM=arm32
> > >>
> > >>
> > >> *Questions:
> > >> Did I miss some steps or should include other header files that defines 
> > >> u8x32?
> > >>
> > >>
> > >> Thanks,
> > >> George
> > >>
> > >> _______________________________________________
> > >> discuss mailing list
> > >> disc...@lists.fd.io<mailto:disc...@lists.fd.io>
> > >> https://lists.fd.io/mailman/listinfo/discuss
> > >
> > > _______________________________________________
> > > vpp-dev mailing list
> > > vpp-dev@lists.fd.io<mailto: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