Diagnosing performance cliffs on JDK7.
MacGregor, Duncan (GE Energy)
duncan.macgregor at ge.com
Wed Aug 22 06:05:22 PDT 2012
On 21/08/2012 19:31, "Christian Thalinger"
<christian.thalinger at oracle.com> wrote:
>I see. Honestly I never saw this before with JSR 292 code but I have an
>idea why this is happening. It is a performance cliff but a different
>one than the one we were always talking about. This might also hit us in
>the new implementation. At least now until we revisited our inlining.
>
>Could you try to run this with the latest JDK 8 b52:
>
>http://jdk8.java.net/download.html
>
>That is the first JDK 8 build that contains our new JSR 292
>implementation.
Okay, with that I get a different set of COMPILE SKIPPED cases. The
non-retryable cases are hard to pin down to any specific benchmark or
method in our source as they are reported against
java.lang.invoke.LambdaForm$MH. Overall performance is about half the
speed, I don't see any catastrophic individual performance cliffs in that,
but haven't done a full comparison yet.
65 matches for "COMPILE SKIPPED" in buffer: jdk8-b52.log
575: [junit] 387 COMPILE SKIPPED: concurrent class loading
1667: [junit] 1412 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
2140: [junit] 1746 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
2210: [junit] 1805 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
2233: [junit] 1825 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
2311: [junit] 1878 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
2405: [junit] 1972 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
2563: [junit] 2057 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
2987: [junit] 2230 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
3095: [junit] 2320 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
3192: [junit] 2406 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
3231: [junit] 2438 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
3393: [junit] 2535 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
3701: [junit] 2707 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
3756: [junit] 2753 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
3987: [junit] 2903 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
4140: [junit] 3004 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
4190: [junit] 3012 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
4198: [junit] 3015 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
4413: [junit] 3134 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
4510: [junit] 3207 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
5592: [junit] 27 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
5638: [junit] 3944 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
5825: [junit] 29 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
5978: [junit] 30 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
6145: [junit] 31 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
6579: [junit] 34 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
6640: [junit] 4573 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
6657: [junit] 4592 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
6845: [junit] 35 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
7532: [junit] 5146 COMPILE SKIPPED: illegal oopMap register name
(retry at different tier)
7624: [junit] 5203 COMPILE SKIPPED: illegal oopMap register name
(retry at different tier)
7627: [junit] 5204 COMPILE SKIPPED: illegal oopMap register name
(retry at different tier)
7981: [junit] 42 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
8051: [junit] 5551 COMPILE SKIPPED: illegal oopMap register name
(retry at different tier)
8056: [junit] 5556 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
8057: [junit] 5553 COMPILE SKIPPED: illegal oopMap register name
(retry at different tier)
8164: [junit] 5650 COMPILE SKIPPED: unsupported calling sequence
(not retryable)
8214: [junit] 5672 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
8216: [junit] 5673 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
8217: [junit] 5675 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
8324: [junit] 5718 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
8327: [junit] 5719 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
8396: [junit] 5754 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
8552: [junit] 43 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
9290: [junit] 6281 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
9468: [junit] 6415 COMPILE SKIPPED: invalid non-klass dependency
9754: [junit] 6606 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
9774: [junit] 6618 COMPILE SKIPPED: Exception handler can be
reached by both normal and exceptional control flow (retry at different
tier)
9784: [junit] 6622 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
9791: [junit] 6624 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
9796: [junit] 6629 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
9801: [junit] 6630 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
9807: [junit] 6634 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
9811: [junit] 6631 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
10177: [junit] 6913 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
10239: [junit] 6933 COMPILE SKIPPED: Exception handler can be
reached by both normal and exceptional control flow (retry at different
tier)
10600: [junit] 7164 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
10700: [junit] 7231 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
15058: [junit] 11479 COMPILE SKIPPED: unlinked call site (FIXME
needs patching or recompile support) (retry at different tier)
15151: [junit] 11533 COMPILE SKIPPED: unsupported calling sequence
(not retryable)
15152: [junit] 11535 COMPILE SKIPPED: unsupported calling sequence
(not retryable)
15154: [junit] 11538 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
15157: [junit] 11539 COMPILE SKIPPED: unsupported incoming calling
sequence (not retryable)
15507: [junit] 11678 COMPILE SKIPPED: unsupported calling sequence
(not retryable)
More information about the mlvm-dev
mailing list