Articles

GCC 10 vs Clang 10 Compiler ydeevne på AMD 2 + Intel Cascade Lake

Vi leverede mange benchmarks for Clang 10.0 på forskellige CPU ‘ er efter den opdaterede LLVM compiler stack udgivelse tidligere på året. Med GCC 10 udgivet tidligere i denne måned, vi er begyndt vores benchmarking af denne årlige funktionsudgivelse til GNU Compiler Collection. Først op er et kig på GCC 9 vs GCC 10 vs LLVM Clang 10 compiler ydeevne på AMD fra 2 og Intel Cascade Lake systemer.

denne første runde af benchmarking for GCC 10 vs Clang 10 ser på udgivelsesbygningerne af hver plus GCC 9.3 ved test på AMD Threadripper 3990h og Intel Core i9 10980h arbejdsstationer. Threadripper 3990 er ved at løbe tør for Systemet76 Thelio Major. Begge systemer kørte Ubuntu 20.04 LTS med Linuks 5.4-kernen, og alle kompilatorerne blev bygget på samme frigivelsestilstand. Der er RAM / SSD-forskelle mellem systemerne, der ikke har til hensigt at sammenligne AMD vs. Intel-ydeevnen, men snarere se på, hvordan disse LLVM Clang-og GCC-kompilatorer udfører på tværs af flere CPU-familier. Yderligere CPU benchmarks vil være kommende med disse compilere.

under hele benchmarkingen blev CFLAGS/CFLAGS sat til “-O3-march=native” for både AMD fra 2 og Intel Cascade Lake systemer. En bred vifte af C / C++-benchmarks blev kørt under genopbygning af open source-benchmarks under hver af de forskellige kompilatorer, der blev testet.

Med blosc-kompressoren var clang 10.0-ydelsen grundlæggende bundet med GCC 10, mens Core i9 10980-ydelsen så GCC levere bedre ydelse end denne seneste clang-udgivelse.

med Crypto++ benchmarks var der ikke meget forskel mellem GCC 9.3 til GCC 10.1, mens clang 10.0-præstationen fortsatte med at spore gcc på Cascade Lake hedt-systemet. På Threadripper Thelio Major-systemet havde Clang-ydeevnen en tendens til at køre godt mod GCC med undtagelse af heltal og elliptisk kurve public key algorithms test, hvor GCC kom målbart stærkere ud.

Lcnul med sin egen back-end oplevede nogle mindre gevinster ud af GCC 10 og endnu bedre ydeevne med Clang 10, mens i9-10980-systemet så lidt hurtigere ydeevne på GCC 9.3.

clangs LAMMPS binære ydeevne var i tråd med GCC på begge systemer.