Dear Lijian, I don’t see how this matters if neither gcc 9.2+ or clang-10 are available in ubuntu 18.04. For custom builds users can simply say make CC=whatever-compiler-they-want …
Also there is no N1 available in CSIT, so we cannot really judge about performance impact on the large number of different features. — Damjan > On 28 May 2020, at 09:50, Lijian Zhang <lijian.zh...@arm.com> wrote: > > Hi Damjan, > I got some feedback regarding switching default compiler from gcc to clang in > VPP, from compiler team. > > " Neither LLVM nor GCC tune much for Neoverse N1, I think the difference is > that GCC has better vectorization and a better optimized AArch64 backend. > GCC10 has just been released and will likely do even better (it is now ~20% > ahead of LLVM on SPEC)." > > " I was looking at the roadmap for LLVM (which is the backend for clang). I > see plans for tuning for Zeus and Perseus, but just support for N1. I think > they fixed some alignment issues and replaced some intrinsics, but no > specific N1 tuning. LLVM is behind gcc in performance, by a decent amount." > > I did some benchmarking on L2/L3 single flow throughput btw gcc-9.2.0 > (-march=armv8.2-a+crc+crypto -mtune=neoverse-n1) and clang-10 > (-mcpu=neoverse-n1). From the results below, gcc-9.2.0 gives better > throughput number (about 4%) than clang-10. > > clang-10: > L3: 11.04Mpps/10.99Mpps/11.02Mpps > L2: 11.55Mpps/11.56Mpps > > gcc-9.2.0 > L3: 11.61Mpps/11.55Mpps/11.59Mpps > L2: 12.15Mpps/12.16Mpps > > Is it possible to restore gcc as the default compiler for vpp, or for vpp > compiling on Arm CPU? > Is it possible to remove clang-9 dependency in Makefile, or make it applied > for x86 only? > This dependency forces vpp compiling to use clang-9 always. > > diff --git a/Makefile b/Makefile > ifeq ($(OS_VERSION_ID),18.04) > DEB_DEPENDS += python-dev python-all python-pip python-virtualenv > DEB_DEPENDS += libssl-dev > - DEB_DEPENDS += clang-9 > diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt > -set(CMAKE_C_COMPILER_NAMES clang-10 clang-9 gcc-9 cc) > +set(CMAKE_C_COMPILER_NAMES gcc-9 cc) > > Thanks.
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#16594): https://lists.fd.io/g/vpp-dev/message/16594 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] -=-=-=-=-=-=-=-=-=-=-=-