Since recently picking up a Qualcomm Snapdragon X Elite laptop for Linux testing now that the Linux support is starting to evolve into better shape (albeit still with many rough corners limiting the daily usability of such devices with Linux), one of the areas I was curious about was looking at the performance of Linux binaries with GCC vs. LLVM Clang. Here are some benchmarks for those wondering how the GCC and Clang compilers are competing on the Snapdragon X Elite with the Oryon CPU cores.
LLVM/Clang has long enjoyed a lot of interest from ARM and SoC vendors thanks to Google relying heavily on the LLVM-based compiler for Android as well as Apple’s Xcode being derived from LLVM/Clang. As I’ve shown across many different benchmarks over the years, thanks to all the industry interest in LLVM/Clang, the AArch64 performance under Clang can be extremely competitive — and often outperforming — the GNU Compiler Collection built binaries. LLVM/Clang on x86_64 is very competitive too these days for delivering speedy binaries but on AArch64 it’s always felt to have an extra leg-up in performance relative to GCC.
So with the Acer Swift 14 AI laptop (SF14-11T-X3RZ) that I have been using for Qualcomm Snapdragon X Elite (X1E-78-100) testing under Linux, I ran some benchmarks for curiosity sake of different C/C++ open-source programs built under GCC and then LLVM Clang for reference of those resulting binaries. Ubuntu 25.04 was running on this Snapdragon X Elite laptop and for simplicity as well as reproducibility sake I used the GCC 14.2 and LLVM Clang 20.1.2 compilers offered by the Ubuntu 25.04 archive. The same CFLAGS/CXXFLAGS were used each time.
Building out a number of different open-source codebases and then benchmarking the binaries built under GCC 14 and LLVM/Clang 20 reaffirmed prior compiler performance experiences on AArch64 seen across Ampere ARM64 server platforms and other hardware.