Compiling code in GCC
Another persistent request from our readers has been the addition of some sort of code-compiling benchmark. With the help of our resident developer, Bruno Ferreira, we've finally put together just such a test. Qtbench tests the time required to compile the QT SDK using the GCC compiler. Here is Bruno's note about how he put it together:
QT SDK 2010.05 - Windows, compiled via the included MinGW port of GCC 4.4.0.
Even though apparently at the time the Linux version had properly working and supported multithreaded compilation, the Windows version had to be somewhat hacked to achieve the same functionality, due to some batch file snafus.
After a working multithreaded compile was obtained (with the number of simultaneous jobs configurable), it was time to get the compile time down from 45m+ to a manageable level. This required severe hacking of the makefiles in order to strip the build down to a more streamlined version that preferably would still compile before hell froze over.
Then some more fiddling was required in order for the test to be flexible about the paths where it was located. Which led to yet more Makefile mangling (the poor thing).
The number of jobs dispatched by the Qtbench script is configurable, and the compiler does some multithreading of its own, so we did some calibration testing to determine the optimal number of jobs for each CPU.
TrueCrypt disk encryption
TrueCrypt supports acceleration via Intel's AES-NI instructions, so the encoding of the AES algorithm, in particular, should be very fast on the CPUs that support those instructions. We've also included results for another algorithm, Twofish, that isn't accelerated via dedicated instructions.
7-Zip file compression and decompression
Ah. Now that we've moved past the gaming tests, we're on friendlier ground for the FX-8350. Those eight integer cores can all contribute heavily in most of the tests above, and as a result, the FX-8350 doesn't just match the Core i5-3570K—it rivals the much pricier Core i7-3770K. SunSpider is the lone exception to that trend, likely because not all elements of it are widely multithreaded.