What compiler(s) and optimisations are used by the Sandra Benchmarks?
* All Sandra versions only use the Visual Studio standard compilers and the public MASM, YASM and NASM assemblers (as published online). We use blended optimisation optimised for speed (O2).
We do not test for the manufacturer when choosing code paths; we do, however, optimise based on CPU model where appropriate (e.g. threads, buffer sizes, etc.).
* In general, there is only 1 code path for each technology (e.g. SSE2, SSE3, AVX, FMA, etc.), except where other characteristics yield serious sub-optimal performance: for example the multi-core benchmark has a path for inclusive L2/L3 cache (e.g. Intel) and exclusive L2/L3 cache (e.g. AMD). Such exceptions are detailed in the Help file.
* Sandra is not open-source, however we do provide the source code under mutual NDA to all major manufacturers working with us (AMD/ATI, Intel, nVidia, etc.) and - in the spirit of full disclosure - we list the names of engineers who have worked on optimising the tests, press F1 for the Help file in any benchmark.
* We do NOT charge any manufacturer for working with us, nor do we receive any financial, advertising or otherwise incentive from anyone (unlike some of our competitors). Thus we have nothing to gain whoever "wins", nor do we care.
We actively try to engage with all manufacturers to find out whether our way of doing things makes sense and ask them to test in their labs to ensure the benchmarks work and make sense on all the hardware they have; naturally we cannot afford nor can we test each component on the market.
The Lite version contains ALL the benchmarks and has always been free, thus you readers do not need to pay anything to benchmark their systems.
* Except where we cannot, i.e. before a major new arch release - we buy ALL our hardware. We always ask whether the hardware should be returned and have returned at our cost such hardware. Any hardware that we keep is actively used for regression testing and returned when asked or obsoleted.