Hi Lijian,

If I got it right, neither gcc or clang available in ubuntu 18.04 LTS are able 
to produce N1 optimised binaries. correct?

If yes, can we just add clang-10 from: https://apt.llvm.org to vpp build 
scripts?

In particular:

# 10
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-10 main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-10 main


Damjan


> On 9 May 2020, at 12:12, Lijian Zhang <lijian.zh...@arm.com> wrote:
> 
> Hi Damjan,
> The patch[2] installs clang-9 in package dependencies and sets “clang-10 
> clang-9 gcc-9 cc” as the default compiler.
>
> The problem is,
> 1. clang-9 does not support ‘-mtune=qdf24xx’, ‘-mtune=neoverse-n1’, 
> ‘-mcpu=neoverse-n1’, so it cannot do arch-specific compiling and optimal 
> function selection for those two CPUs.
> These options requires gcc-9.2, clang-10 and any newer versions.
> 2. The clang package servers for Ubuntu-18.04 mentioned in 
> https://apt.llvm.org/ support x86, but does not support Arm64, so we cannot 
> install clang-10/clang-11 directly via apt commands on Arm servers.
>
> I’m thinking two options,
> 1. remove clang-9 dependency in Makefile or add for x86_64 only, so that 
> users should install clang-10/clang-9 for x86 manually, and for Arm, install 
> gcc-9 and clang-10/clang-11(not available yet). Just like CSIT has to update 
> gcc version to gcc-8.3 manually(gcc-8.3 not listed in dependencies) 
> previously.
> 2. there are other several workaround,
>               2.1 install clang-10 from source code until we can do clang-10 
> binary install on Ubuntu-18.04 on Arm;
>               2.2 keep the code as it is now, although it will disable 
> multi-arch support for these two CPUs with clang-9;
>               2.3 when we are developing code or doing benchmarking, we need 
> to hack the code temporarily from “set(CMAKE_C_COMPILER_NAMES clang-10 
> clang-9 gcc-9 cc)” to “set(CMAKE_C_COMPILER_NAMES clang-10 gcc-9 cc)”, so 
> that multi-arch will be supported with gcc-9.
>
> Could you suggest on this issue?
> Thanks.
> From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of Damjan Marion 
> via lists.fd.io
> Sent: 2020年4月28日 22:14
> To: vpp-dev <vpp-dev@lists.fd.io>
> Subject: [vpp-dev] clang-9
>
>
> Folks,
>
> As there is bug in gnu assembler which is shipping with ubuntu 18.04 we are 
> not able to produce working binaries with avx512 instruction set.
> Because of that, I had to change default to avx2. reported bug[1], but it is 
> ignored for a year.
>
> As alternative[2], I wanted to consider using clang-9 which is shipped with 
> ubuntu 18.04 and seems like it is even capable of producing faster binaries 
> than gcc.
> Unfortunately, "make test" is failing at several places including vxlan, 
> ipsec and tcp stack[3].
>
> May I ask folks who “own” that code to take a quick look?
>
> Thanks,
>
> Damjan
>
> [1] https://bugs.launchpad.net/ubuntu/cosmic/+source/binutils/+bug/1819961
> [2] https://gerrit.fd.io/r/c/vpp/+/26744
> [3] https://jenkins.fd.io/job/vpp-verify-master-ubuntu1804/3615/console
>
>
>
> 

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#16314): https://lists.fd.io/g/vpp-dev/message/16314
Mute This Topic: https://lists.fd.io/mt/73327785/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to