RFR (XS): Enable UseCountedLoopSafepoints with Shenandoah

Simone Bordet simone.bordet at gmail.com
Tue Dec 20 15:27:32 UTC 2016


Hi,

On Tue, Dec 20, 2016 at 4:18 PM, Lennart Börjeson
<lennart.borjeson at cinnober.com> wrote:
> I feel I must chip in here…
>
> (I’m continuously testing Shenandoah, as well as other JVM variants, with our products, as part of my work.)
>
> We have recently encountered an issue with a commercial JVM which had elected to skip safepoint checks for all counted loops. This broke our product, since we have a crucial spin wait in a long-indexed loop.

Wow. Can you detail how your product makes use of the fact that the
JVM is polling (or not) for a safepoint ?
I'm guessing you are doing this from native code ? Custom JVM modifications ?

> (As you know, the JVM normally inserts safepoint checks in long-indexed, but not in int-indexed, counted loops.)
>
> Such a change in behaviour is extremely hard to track down, and I regard it as a significant functional change.

Would not be the opposite, i.e. your product relying on very specific
implementation detail of how the JVM works ?

Thanks !

-- 
Simone Bordet
http://bordet.blogspot.com
---
Finally, no matter how good the architecture and design are,
to deliver bug-free software with optimal performance and reliability,
the implementation technique must be flawless.   Victoria Livschitz


More information about the shenandoah-dev mailing list