This data is really old. As of 2010 it appears that Java performance has improved greatly and that Jcon now outperforms Icon v9.5.0 in many cases, perhaps most.
Programs built by Jcon typically run somewhat slower than when built and run by Version 9 of Icon. We use the ratio of execution times as our basic benchmark measurement. The result depends on many things, but a factor of two or three is typical with a good Java system.
We have measured execution times for the standard Icon benchmarks and for three long-running additional applications. The standard benchmark programs were taken from Icon v9.3.1 and run unmodified, but some data files and command options were changed to make them run longer. The benchmark programs are as follows:
concord produces a text concordance (word index) deal deals bridge hands ipxref cross-references Icon programs queens places non-attacking queens on chessboard rsg generates random sentences tgrlink optimizes vectors for drawing street maps geddump dumps a genealogical data base jtran translates Icon into Java class files
We did most of our performance tuning on a Silicon Graphics Indigo2 running SGI Java 3.1 (JDK 1.1.5). This is a good Java implementation running on a fast machine. It uses just-in-time (JIT) compilation to convert JVM code to machine code as needed. There is a minimum one-second startup cost for every execution, which we attribute to initialization and JIT compilation; this cost is included in the measurements below but is not the dominating factor.
Here are execution time ratios measured on several platforms:
platform | concord | deal | ipxref | queens | rsg | tgrlink | geddump | jtran | |
---|---|---|---|---|---|---|---|---|---|
SGI Irix 6.2 | JDK 1.1.6 | 3.6 | 9.2 | 2.7 | 1.5 | 3.2 | 3.2 | 2.2 | 3.4 |
Sun Solaris 2.6 | JDK 1.1.6 | 5.2 | 6.1 | 4.3 | 3.4 | 5.1 | 4.1 | 3.5 | 4.6 |
Sun Solaris 2.6 | JDK 1.2beta4 | 2.7 | 3.7 | 1.9 | 1.5 | 3.0 | 1.8 | 1.9 | 2.6 |
IBM AIX 4.1.5 | JDK 1.1.4 | 6.6 | 10.0 | 4.4 | 2.2 | 6.2 | 3.5 | 3.6 | N/A |
Digital Unix 4.0B | Fast JVM b1 | 6.3 | 10.1 | 8.7 | 3.4 | 6.6 | 3.6 | 6.7 | 5.4 |