Once again and probably for the last time, I’ve updated my .NET Struct Performance article with results for the latest batch of compilers and runtimes. Microsoft’s and Mono’s current CLRs are unchanged as expected, and so is the excellent MinGW gcc. Visual C++ 2013 gave a nasty shock with massive optimizer failures for user-defined types in both 32- and 64-bit mode. Oracle’s JDK 7u51 produced a smaller unpleasant surprise with an optimizer regression for primitive values that must have happened at some point after 7u13. Sadly, thus are the dangers of sensitive microbenchmarks. These unpredictable changes are one reason why I think it’s time to put my little test to bed. The other is my plan to finally upgrade the computer I had been testing on, so results would no longer be comparable anyway.
Firefox 27 delivered an especially remarkable result for “naked”
2 thoughts on “Struct Performance 2014”
FYI, I tried the benchmarks using the VS14 preview. The C++ compiler seems to be ok now — 32 bit gives slightly slower results than GCC, and 64 bit gives exactly the same results as GCC. The C# numbers are the same.
Excellent, thanks for testing! I’ll add a note to the main article.