Jump to content
Excelsior Forums


  • Content count

  • Joined

  • Last visited


Community Reputation

0 Neutral

About path

  • Rank
  • Birthday 01/01/1
  1. Hi, Yes, I am interested in the secret inline specification. It's interesting to see if the performance can be improved in this way.
  2. Hi, I have evaluated the excelsior JET compiler. I think it's a very good product. I compared it with the IBM 1.3.1. JDK. The testcase is deserializing messages. A message contains about 20 properties and is 200 bytes long. In the testcase the messages were read from a byte array. results for 1,000,000 iterations: JET 18.937 microsecond/message IBM 1.3.1 11.031 microsecond/message JET compiler settings were optimized inclusing -perfect+ The final code generated by the IBM jdk seems to be significantly faster. I estimated that IBM JIT needs about 483 milliseconds for compilation. Based on this I computed the number of messages in which the performance would be equal: 61,000. JET and IBM jdk both need about 1.094 seconds. What is causing the difference in speed of the code generated ? I noticed that increasing the amount of inling in JET decreases the performance. Maybe the IBM JIT has better overview what to inline. A possibility would for the JET compiler to only inline when code size does not increase. The programmer can specify a list of methods, which should be inlined more heavily. This is similar to C++ where inlined methods have to be placed in header files. Or are there other reasons for the performance difference ? JET settings: -checkindex- -checknull- -checkarrstore- -gcdefragment- -genasserts- -gendll- -genstackalloc+ -gui- -ignoreclassduplication- -ignorememberabsence- -inline+ -perfect+ -cpu=pentium -classabsence=ERR -compilerheap=0 -heaplimit=134301610 -inlinelimit=100 -inlinetolimit=500