> Well, Benoit's results match yours, although it looks as if his machine > configuration is nearly identical to yours (same CPU, same VM, etc). > > If this true, the 1.4 VM is literally an order of magnitude faster than the > 1.3 VM, or else the Windows VM is a better implementation than the Linux > VM. I find this last option a bit odd, because IBM's 1.3 VM for Linux was > supposed to be the fastest for non-GUI apps, although I last checked this > several months ago. > Frankly I wouldn't be surprised, your results indicated that the IBM 1.3 VM was slightly slower than sun's while my experience on a different type of non gui program (it was a code generator) indicated that the IBM VM was about 3 times faster than sun's (and slightly slower than IBM 1.1.8 VM maybe 5%) on that particular test I was very disapointed by HotSpot results. > How does the 1.4 VM perform memory-wise? The 1.3 VM is a memory hog under > Linux. > didn't check but it probably is a memory hog. This has been a big problem with java and it leads to big startup times, for short programs which don't do much this is always penalizing: using the 1.4 VM a simle Hello world program feels sticky (I'd say .5s from calling till the string hits the console even when calling the program several times, didn't time it) while ruby is instantaneous (at least the second time it is called) > Yeah, but we aren't. We're talking about a single, tight loop on static > stringes. Although, Benoit's results on a larger itteration, which narrows > the gap between Java 1.4 and Ruby runtimes, illustrate the garbage collection > point. At 10,000 itterations, the Java code probably wasn't getting a chance > to invoke GC. On the other hand, Ruby uses GC as well... is Ruby's GC > mechanism more efficient than Java's? > Can you explain this bit, it seems to me that the gap was slightly widening and probably due to java's startup time not being as significative, I'll recall my numbers 10000 ruby utime=3.665, stime=0.02, cutime=0.0, cstime=0.0 java 1703 ms, Also I redid the same tests but with 100000 iteration instead of 10000 and got some coherent results: ruby utime=36.662, stime=0.05, cutime=0.0, cstime=0.0 java 15072 ruby scaled by a factor of 10, not java, like I said this is probably due to the high startup cost of the VM Benoit