Good micro-benchmarks are useful for isolating particular issues and providing a means for comparing that features on different platforms. They rarely serve as a good predictor of how applications using the feature will perform, as the complexity of code dynamics in general drives the performance. This is also the case in high-performance computing, even though the low-level benchmarks tell something about integer arithmetic or the standard Math library, it does not predict what happens when all of these are put together.
In our benchmark we have a collection of about 15 application 'kernels' that make up the most common HPC application strategies. We have converted these to C# from other languages and are currently validating the correctness. The first converted benchmark suite that has passed the validation is SciMark, which consists of five kernels:
SciMark has become interesting over the years because it also generates a single number from these five kernels which can be used as an HPC performance predictor for a particular platform. It is run with two different memory models (small and large.)
The graphs below are self-explanatory and answer one of our research questions: the commercial CLI implementation, the Microsoft .NET CLR 1.1, is competitive with the best JVMs when executing complex HPC benchmarks.
The other parts in this series of postings handle basic arithmetic & JIT code generation, loop overhead and exception handling, and the performance of the standard Math library.
Posted by Werner Vogels at May 9, 2003 10:34 AM
Hello there,
The results of tests you provide are very doubtful, in my opinion, concerning sscli. I do not believe that there is fundamental difference in commercial .net runtime and sscli. Probably you ran tests on checked or fastchecked, but not release, build.
P.S. It would be much more convenient if you would published you pages on standard http ports. It is not always possible to access port 9000 (e.g. this port is closed on my job place).
Posted by: Vladimir Nesterovsky on May 13, 2003 12:49 AMI've been running the SciMark tests on JVMs. The recently introduced JDK 1.4.2 beta trumps even IBM's JDK 1.3 by over 28%.
http://www.freeroller.net/page/ceperez/20030521#jdk_1_4_2_beta
Posted by: Carlos E. Perez on May 30, 2003 12:12 PM