Hello. > > > Here are some (approximate) numbers (time in minutes) to give an idea > > of the problem: > > > > QL | QH > > --------+------- > > 1.6 -Xint 60 | 120 > > 1.6 JIT 15 | 10 <---- Something wrong here, I think. > > 1.5 JIT 6 | 12 > > Okay, this seems to be a performance regression in the 1.6 JVM > (arguably a bug). Are the GC settings the same?
I don't set any particular settings, so they should the same, unless 1.5 and 1.6 do not use the same defaults. > Is your application > allocation-intense? > No; most objects are allocated once and modified afterwards. Also there are not so many objects (about 61000, a third of which are small objects like 3D vectors). > >> It's somewhat expected that relative performance changes. > > > > How could that be expected??? > > Few improvements to the JIT compiler benefit all programs across the > board. A particular optimization might kick in in QL, but not in QH, > or vice versa. I can understand that; but in this particular case, the code for just the "QL" algorithm is about 30 times faster than the code for the "QH" algorithm. ["QL" and "QH" are only a small part of the overall program, which translates to only a factor of 2 for the overall relative performance gain.] Since there is a factor of about 10 between "-Xint" and JIT-enabled execution, it is hard to understand how using "QH" could be any faster than using "QL", whatever added JIT-benefit "QH" wins over "QL": "QL" should be at least about 3 times faster than "QH", implying that the overall program cannot be slower if the only change is "QL" vs "QH". Best, Gilles -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

