Hacker News new | past | comments | ask | show | jobs | submit login

My understanding is that using the XCode compiler and libraries means that your could could very much wind up using co-processors that other compilers and codebases aren't aware of and aren't able to take advantage of.



Absolutely not. The M architecture with their Firestorm and Icestorm cores are basically a big.LITTLE architecture. Some cores are made for low power, energy efficient work with a lower frequency, while others are made to run at full blast. There are no magic coprocessors to run on.

The goal of the benchmark is to run the two exact same binaries, not to make one that uses all of Apple's ARM extensions and one with AVX-512 to see who can go fastest in the best conditions.


This isn't strictly true. Apple has other co-processors and some custom instructions (eg, matrix instructions). If you use their compiler and code, they can offload some calls to these while if you used another compiler and different libraries, these co-processors will be completely unused in all cases.


Using clang won't get you any of those things. Autovectorization is mostly mythical.

Calling into a system BLAS library might, but most benchmarks wouldn't do that.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: