On 17/03/2015 5:16 AM, John Rose wrote:
On Mar 16, 2015, at 2:29 AM, Andrew Haley <a...@redhat.com> wrote:

On 16/03/15 00:40, David Holmes wrote:
Experimental options are supposed to be opt-in only via
UnlockExperimentalVMOptions. You presently have the experimental
UseUnalignedAccesses being turned on unconditionally on those
architectures that support it.

Well, it works.  I guess this could be changed to be a product option,
but it's only really needed for testing.  And aren't product options
supposed to be properly documented for all users?

In other words: please don't say "don't do that."  Please tell me what
I should do instead.  All suggestions are welcome, really because I'm
rather stuck.

David has a point about experimental options; they have an opt-in sense to them.

Actually John it has been pointed out to me that my interpretation of experimental options is not correct. It seems we already have a number of "experimental" options that are on by default and the "experimental" aspect is the turning of them off.

Since the option provides control for product behavior, without an explicit 
opt-in, it should either be a product flag or a diagnostic flag.

I suggest keeping the more direct name (Use* not Disable*) and making it a 
diagnostic flag.

As a diagnostic flag it does not require a CCC request, since it is not for JVM 
customers to use.  Its purpose is testing and field diagnosis by implementation 
engineers.  Similar flags are ScavengeRootsInCode, LogEventsBufferEntries, and 
ParGCCardsPerStrideChunk.

I think diagnostic works better here too.

Thanks,
David

Typical uses:  On platforms which support unaligned accesses, do differential 
performance testing to verify that the switch is correctly set for the 
platform.  On platforms which do not, if hardware or JIT upgrades supply a 
faster unaligned access, do differential regression testing with the new 
feature in play.

— John

Reply via email to