Cavium ThunderX 96-Core vs. Ampere eMAG Benchmarks

Tests being worked on by Michael Larabel for a future article. Just some interesting Cavium vs. AMpere ARM Linux benchmarks.

HTML result view exported from: https://openbenchmarking.org/result/1902121-KH-1810094SK42.

Cavium ThunderX 96-Core vs. Ampere eMAG BenchmarksProcessorMotherboardMemoryDiskGraphicsNetworkChipsetAudioOSKernelDisplay DriverCompilerFile-SystemScreen ResolutionDesktopDisplay ServerOpenGLCavium ThunderX 96-CoreAmpere eMAG OSPREYLenovo i7 8700Cavium ThunderX (96 Cores)FOXCONN C2U4N_MB (G31FB18A BIOS)4 x 32 GB DDR4-2133MHz 36ASF4G72PZ-2G3B1250GB Samsung SSD 850ASPEED ASPEED FamilyCavium THUNDERX Interface + Cavium THUNDERX BGXUbuntu 16.044.10.0-38-generic (aarch64)modesetting 1.18.4GCC 5.4.0 20160609ext4800x600Ampere eMAG ARMv8 @ 3.00GHz (32 Cores)AmpereComputing OSPREY (4.8.19 BIOS)Applied Micro Circuits X-Gene8 x 16384 MB DDR4-2400MHz Samsung M393A2K43CB2-CTD256GB Samsung SSD 860Intel I210 Gigabit ConnectionCentOS 7.5.18044.14.0-49.el7.centos.180925+amp.ilp32.aarch64 (aarch64) 20180926GCC 6.0.0 20150826xfs1024x768Intel Core i7-8700 @ 4.60GHz (12 Cores)LENOVO 36EFIntel Device 3ec22 x 8192 MB DDR4-2666MT/s1000GB Western Digital WD1003FZEX-0Zotac NVIDIA GeForce GTX 1060 3GB 3072MB (139/405MHz)Realtek ALC662 rev3Realtek RTL8111/8168/8411Ubuntu 18.044.15.0-45-generic (x86_64)Xfce 4.12X Server 1.19.6NVIDIA 390.774.6.0ext43600x1080OpenBenchmarking.orgCompiler Details- Cavium ThunderX 96-Core: --build=aarch64-linux-gnu --disable-browser-plugin --disable-libquadmath --disable-werror --enable-checking=release --enable-clocale=gnu --enable-fix-cortex-a53-843419 --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-plugin --enable-shared --enable-threads=posix --host=aarch64-linux-gnu --target=aarch64-linux-gnu --with-arch-directory=aarch64 --with-default-libstdcxx-abi=new -v - Ampere eMAG OSPREY: --build=x86_64-unknown-linux-gnu --disable-libmudflap --disable-libquadmath --disable-libsanitizer --disable-libssp --enable-languages=c,c++,fortran,objc --enable-multilib --enable-shared --host=aarch64-apm-linux-gnu --target=aarch64-apm-linux-gnu --with-abi=lp64 --with-build-sysroot=/home/bhuber/sandbox/gcc/toolchain-build-scripts/buildroot/9.0.7-le/install/opt/apm-aarch64/9.0.7-le/bin/../aarch64-apm-linux-gnu/libc --with-cpu=xgene1 --with-multilib-list=lp64,ilp32 --with-plugin-ld=ld - Lenovo i7 8700: --build=x86_64-linux-gnu --disable-vtable-verify --disable-werror --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-gnu-unique-object --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-offload-targets=nvptx-none --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --program-prefix=x86_64-linux-gnu- --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-default-libstdcxx-abi=new --with-gcc-major-version-only --with-multilib-list=m32,m64,mx32 --with-target-system-zlib --with-tune=generic --without-cuda-driver -v Python Details- Cavium ThunderX 96-Core: Python 2.7.12 + Python 3.5.2- Ampere eMAG OSPREY: Python 2.7.5Disk Details- Ampere eMAG OSPREY: DEADLINE / attr2,inode64,noquota,relatime,rwProcessor Details- Ampere eMAG OSPREY: Scaling Governor: cppc_cpufreq performance- Lenovo i7 8700: Scaling Governor: intel_pstate powersaveSystem Details- Lenovo i7 8700: Python 2.7.15rc1.

Cavium ThunderX 96-Core vs. Ampere eMAG Benchmarksmafft: Multiple Sequence Alignmentbuild-linux-kernel: Time To Compilec-ray: Total Timeencode-mp3: WAV To MP3pybench: Total For Average Test Timesaobench: 2048 x 2048 - Total Timepgbench: Buffer Test - Normal Load - Read Onlypgbench: Buffer Test - Normal Load - Read Writepgbench: Buffer Test - Single Thread - Read Onlypgbench: Buffer Test - Single Thread - Read WriteCavium ThunderX 96-CoreAmpere eMAG OSPREYLenovo i7 870017.65218.938.37212.6011425235.31177073482530282453.70276.488.97110.354775151.24163394468058664313.4594.5414.2826.32104936.88OpenBenchmarking.org

Timed MAFFT Alignment

Multiple Sequence Alignment

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed MAFFT Alignment 6.864Multiple Sequence AlignmentCavium ThunderX 96-CoreAmpere eMAG OSPREYLenovo i7 870048121620SE +/- 0.76, N = 6SE +/- 0.06, N = 3SE +/- 0.14, N = 617.653.703.451. (CC) gcc options: -O3 -lm -lpthread

Timed Linux Kernel Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed Linux Kernel Compilation 4.13Time To CompileCavium ThunderX 96-CoreAmpere eMAG OSPREYLenovo i7 870060120180240300SE +/- 3.36, N = 3SE +/- 2.72, N = 3SE +/- 1.37, N = 3218.93276.4894.54

C-Ray

Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total TimeCavium ThunderX 96-CoreAmpere eMAG OSPREYLenovo i7 870048121620SE +/- 0.08, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 38.378.9714.281. (CC) gcc options: -lm -lpthread -O3

LAME MP3 Encoding

WAV To MP3

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.100WAV To MP3Cavium ThunderX 96-CoreAmpere eMAG OSPREYLenovo i7 870050100150200250SE +/- 0.19, N = 3SE +/- 0.03, N = 3SE +/- 0.03, N = 3212.60110.3526.321. (CC) gcc options: -lm

PyBench

Total For Average Test Times

OpenBenchmarking.orgMilliseconds, Fewer Is BetterPyBench 2008-08-14Total For Average Test TimesCavium ThunderX 96-CoreAmpere eMAG OSPREYLenovo i7 87002K4K6K8K10KSE +/- 21.88, N = 3SE +/- 6.81, N = 3SE +/- 1.76, N = 31142547751049

AOBench

Size: 2048 x 2048 - Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterAOBenchSize: 2048 x 2048 - Total TimeCavium ThunderX 96-CoreAmpere eMAG OSPREYLenovo i7 870050100150200250SE +/- 0.03, N = 3SE +/- 0.01, N = 3SE +/- 0.57, N = 6235.31151.2436.881. (CC) gcc options: -lm -O3

PostgreSQL pgbench

Scaling: Buffer Test - Test: Normal Load - Mode: Read Only

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.0Scaling: Buffer Test - Test: Normal Load - Mode: Read OnlyCavium ThunderX 96-CoreAmpere eMAG OSPREY40K80K120K160K200KSE +/- 1351.32, N = 3SE +/- 147.63, N = 31770731633941. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

Scaling: Buffer Test - Test: Normal Load - Mode: Read Write

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.0Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteCavium ThunderX 96-CoreAmpere eMAG OSPREY10002000300040005000SE +/- 13.13, N = 3SE +/- 2.90, N = 3482546801. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

Scaling: Buffer Test - Test: Single Thread - Mode: Read Only

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.0Scaling: Buffer Test - Test: Single Thread - Mode: Read OnlyCavium ThunderX 96-CoreAmpere eMAG OSPREY13002600390052006500SE +/- 40.28, N = 3SE +/- 79.07, N = 3302858661. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

Scaling: Buffer Test - Test: Single Thread - Mode: Read Write

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.0Scaling: Buffer Test - Test: Single Thread - Mode: Read WriteCavium ThunderX 96-CoreAmpere eMAG OSPREY90180270360450SE +/- 1.10, N = 3SE +/- 0.24, N = 32454311. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm


Phoronix Test Suite v10.8.4