Btw the compliers aren’t comparable. GCC 16 didn’t even exist when this was tested.View attachment 136670
GCC 13 vs GCC 16 + Clang 16 oof
sure but clang 16 is 2024 GCC 13 is like 2022 I doubt changes for Zen5/ARL would be in GCC 13 he would have been better off using a LLVM Based compiler for doing testing of around the same timeframe would have been a more fair comparison and if he is using Apple propritery compiler than Intel/AMD might as well use their compiler toolchain.Btw the compliers aren’t comparable. GCC 16 didn’t even exist when this was tested.
It should just say Xcode 16.1 or just apple clang 16.1, don’t know why Michael adds the misleading stuff
Here is a newer GCC 14.2, it’s faster than 13.2. Michael didn’t test FFMPEG compilation in this review but we can compare LLVM compilation.sure but clang 16 is 2024 GCC 13 is like 2022 I doubt changes for Zen5/ARL would be in GCC 13 he would have been better off using a LLVM Based compiler for doing testing of around the same timeframe would have been a more fair comparison and if he is using Apple propritery compiler than Intel/AMD might as well use their compiler toolchain.



Because he doesn't care about the fine details, but scale and automation, that is why when you scrutinize the benchmarks from phoronix you will see all kinds of inconsistenciesIt should just say Xcode 16.1 or just apple clang 16.1, don’t know why Michael adds the misleading stuff
Support for Zen5 in mainstream LLVM is still a joke. It's copy paste of Zen4 backend which itself only recently got fixed and was a copy paste of Zen3. AMD is dropping a ball there.I doubt changes for Zen5/ARL would be in GCC 13 he would have been better off using a LLVM Based compiler for doing testing of around the same timeframe would have been a more fair comparison and if he is using Apple propritery compiler than Intel/AMD might as well use their compiler toolchain.
Michael didn’t test FFMPEG compilation in this review but we can compare LLVM compilation.
Be sure to build the same target as by default each will compile for the same architecture it's running on, which will trigger different code/data paths in the compilerI’m going to test my own 9800X3D on LLVM and see the time difference.
Software readings for everything. Here's the review.How did they measure power for the x86 machines? As I previously wrote, I only trust power at the wall, after all this is what the machines I run consume.
The M4 showing was all the more impressive when looking at the CPU power consumption exposed by powermetrics compared to the Intel/AMD RAPL/PowerCap results on Linux.
Correct. If one wants a real gcc, it can be installed via homebrew and be used this way:I guess on MacOS simply gcc aliases clang for convenience.
$ gcc-15 --version
gcc-15 (Homebrew GCC 15.2.0) 15.2.0
$ gcc --version
Apple clang version 17.0.0 (clang-1700.6.3.2)



I would expect it to be the slowest, after all it's supposed to run extra optimization passes so the binary it produces is faster, I doubt anyone pays a lot of attention to how fast it itself is running.oh and AMD's complier is pure dogwater. Its based on clang 17.0.6.
I guess this was distribution clang not official clang? Since the latest clang is 21.1.8. I am not sure how cachy is sourcing it, if they are building from scratch. Also do you know how can I read from openbenchmarking the exact command used to build? I wasn't able to find it.Latest clang 21.1.6
That is surprisingly good result, I wonder if cachy is doing the sane thing and they have ditched ld underneath in favour of lld. Or maybe it's the other way around and the build defaults to system linker, which by default should be ld, so both are using the slow linker, hmm. I am too unfamiliar with Linux to be able to do more than guessLatest GCC 15.2.1
Well you can run icx telling it to compile for znver5 outright, it's llvm based after allI Know of a funny stuff you can use Intel's compiler and pass generic flag 🤣.(like -O2 -x86_64_V3) or something depending on what you passed those compiler
I just don't know Intel still does Fancy AMD bottlenecking in their Compilers this might get rid of itWell you can run icx telling it to compile for znver5 outright, it's llvm based after all[it's another thing altogether that AMD still did not manage to merge proper scheduler data into upstream llvm]. https://godbolt.org/z/Ts6TxPef4
phoronix-test-suite install pts/build-llvm to installhow can I read from openbenchmarking the exact command used to build?
Their own compiler is deprecated, I mean icc. Their new compiler (icx) is tuned llvm with extra optimization passes for Intel hardware as far as I understand. So it does not cripple AMD chips the way the old one used to do. It's just not applying extra passes, but the generic tunings apply to AMD chips too. Mystical is using icx to build Y-cruncher for Zen, or at least used to last time I checked and he found it the best available at the time for the purpose.I just don't know Intel still does Fancy AMD bottlenecking in their Compilers this might get rid of it
Ah , I guess I was not precise enough, I mean the exact cmake command used to run the build itself, but I think these can be inferred from pts sourcesphoronix-test-suite install pts/build-llvm to install
phoronix-test-suite run pts/build-llvm-1.6.0 to run
ICX is arguably the best compiler for x86_64 so I am not really surprising here but I just was not sure regarding AMD paths thanks for lmk.Their own compiler is deprecated, I mean icc. Their new compiler (icx) is tuned llvm with extra optimization passes for Intel hardware as far as I understand. So it does not cripple AMD chips the way the old one used to do. It's just not applying extra passes, but the generic tunings apply to AMD chips too. Mystical is using icx to build Y-cruncher for Zen, or at least used to last time I checked and he found it the best available at the time for the purpose.
