Skip to content

Instantly share code, notes, and snippets.

@nathanchance
Last active November 1, 2019 06:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nathanchance/7bc40942ac0a86490e692b63345e6f6a to your computer and use it in GitHub Desktop.
Save nathanchance/7bc40942ac0a86490e692b63345e6f6a to your computer and use it in GitHub Desktop.

LLVM 9.0.0 benchmarks

Done on Packet's m1.xlarge.x86 with this script.

Total build time: 4d 19h 50m 5s

LLVM build times (7 runs)

All ./build-llvm.py invocations were run with --check-targets clang lld llvm --no-ccache --no-update.

Command Mean [s] Min [s] Max [s] Relative
./build-llvm.py --build-stage1-only 624.713 ± 0.610 623.782 625.858 1.00
./build-llvm.py 1006.284 ± 1.559 1003.950 1008.929 1.61 ± 0.00
./build-llvm.py --lto=thin 3259.119 ± 4.720 3252.568 3264.702 5.22 ± 0.01
./build-llvm.py --lto=full 6866.874 ± 69.054 6755.185 6965.644 10.99 ± 0.11
./build-llvm.py --pgo 3097.596 ± 4.321 3094.325 3105.729 4.96 ± 0.01
./build-llvm.py --lto=thin --pgo 5207.130 ± 5.725 5199.100 5212.698 8.34 ± 0.01
./build-llvm.py --lto=full --pgo 6146.230 ± 45.917 6100.540 6243.587 9.84 ± 0.07

arm64 defconfig (48 runs)

Command Mean [s] Min [s] Max [s] Relative
GCC 9.2.0 162.250 ± 0.918 160.468 164.408 1.18 ± 0.01
LLVM (stage 1) 177.843 ± 0.482 176.858 178.845 1.29 ± 0.01
LLVM (default) 175.602 ± 0.515 174.678 176.909 1.28 ± 0.01
LLVM (ThinLTO) 170.241 ± 0.556 169.175 171.790 1.24 ± 0.01
LLVM (LTO) 169.940 ± 0.542 168.994 171.050 1.24 ± 0.01
LLVM (PGO) 145.391 ± 0.622 143.998 146.735 1.06 ± 0.01
LLVM (PGO + ThinLTO) 139.643 ± 0.555 138.554 140.766 1.02 ± 0.01
LLVM (PGO + LTO) 137.460 ± 0.457 136.281 138.376 1.00

arm32 multi_v7_defconfig (48 runs)

Command Mean [s] Min [s] Max [s] Relative
GCC 9.2.0 108.562 ± 0.638 107.309 110.105 1.04 ± 0.01
LLVM (stage 1) 135.741 ± 0.600 134.344 137.370 1.29 ± 0.01
LLVM (default) 133.958 ± 0.603 132.494 135.378 1.28 ± 0.01
LLVM (ThinLTO) 130.099 ± 0.513 129.269 131.100 1.24 ± 0.01
LLVM (LTO) 129.865 ± 0.427 128.894 130.557 1.24 ± 0.01
LLVM (PGO) 110.952 ± 0.422 110.026 111.900 1.06 ± 0.01
LLVM (PGO + ThinLTO) 106.781 ± 0.449 105.787 107.662 1.02 ± 0.01
LLVM (PGO + LTO) 104.863 ± 0.419 103.909 105.695 1.00

powerpc ppc44x_defconfig (48 runs)

Command Mean [s] Min [s] Max [s] Relative
GCC 9.2.0 35.519 ± 0.533 34.320 36.891 1.06 ± 0.02
LLVM (stage 1) 41.824 ± 0.400 41.176 42.943 1.25 ± 0.02
LLVM (default) 41.802 ± 0.362 41.104 42.553 1.25 ± 0.02
LLVM (ThinLTO) 40.519 ± 0.480 39.516 42.018 1.21 ± 0.02
LLVM (LTO) 40.271 ± 0.465 39.355 41.316 1.20 ± 0.02
LLVM (PGO) 35.506 ± 0.364 34.765 36.463 1.06 ± 0.02
LLVM (PGO + ThinLTO) 34.118 ± 0.389 33.383 34.980 1.02 ± 0.02
LLVM (PGO + LTO) 33.425 ± 0.330 32.663 34.367 1.00

powerpc powernv_defconfig (48 runs)

Command Mean [s] Min [s] Max [s] Relative
GCC 9.2.0 102.086 ± 0.726 100.287 103.348 1.00
LLVM (stage 1) 140.860 ± 0.775 138.934 142.287 1.38 ± 0.01
LLVM (default) 139.624 ± 0.784 137.967 141.420 1.37 ± 0.01
LLVM (ThinLTO) 135.690 ± 0.623 134.286 137.292 1.33 ± 0.01
LLVM (LTO) 134.912 ± 0.633 133.495 136.353 1.32 ± 0.01
LLVM (PGO) 114.171 ± 0.660 112.663 115.792 1.12 ± 0.01
LLVM (PGO + ThinLTO) 110.570 ± 0.571 109.420 111.832 1.08 ± 0.01
LLVM (PGO + LTO) 108.832 ± 0.575 107.860 110.243 1.07 ± 0.01

x86_64 defconfig (48 runs)

Command Mean [s] Min [s] Max [s] Relative
GCC 9.2.0 70.294 ± 0.647 68.986 71.747 1.00
LLVM (stage 1) 90.881 ± 0.450 89.935 91.796 1.29 ± 0.01
LLVM (default) 89.734 ± 0.557 87.932 90.944 1.28 ± 0.01
LLVM (ThinLTO) 87.397 ± 0.657 85.697 89.129 1.24 ± 0.01
LLVM (LTO) 86.978 ± 0.601 85.225 88.790 1.24 ± 0.01
LLVM (PGO) 75.349 ± 0.453 74.414 76.164 1.07 ± 0.01
LLVM (PGO + ThinLTO) 72.868 ± 0.482 71.715 74.042 1.04 ± 0.01
LLVM (PGO + LTO) 71.644 ± 0.496 70.781 72.932 1.02 ± 0.01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment