I have tried the IKVM tool with the Java library weka.jar; I have generated
the corresponding weka.dll and I have tried out some algorithms under .NET
framework (C#, Visual Studio 2005) with really surprising results: it works
better (it builds models faster and with less-consuming memory) than under
Java (Eclipse framework and directly under command prompt, with the jdk-jre
I wonder if this is normal or I am doing something wrong...
Thanks in advance.
Sounds good to me!
For Saxon I generally reckon the .NET code is slower than the native Java
equivalent by a factor of 1.2 to 1.5 - but that's on a fairly limited
sample. The .NET code has much faster warm-up time, so it's faster overall
for small jobs.
Interesting, though not really all that surprising. Given the fact that:
- Java is now open source
- The IKVM.NET library is built on top of that source
- The Java libraries are compiled to CIL just like any other .NET library
- You've got a world class developer in Jeroen Frijters finding every possible way to tweak as much performance into the IKVM.NET VM and compiler
- The .NET platform performs better under various circumstances and scenarios
... why wouldn't Java code run faster on the .NET platform, at least under these same circumstances and scenarios?
Oh, and BTW: Interested in running your Java code on Windows Azure? That's now possible too. :-)