RFR: JDK-8202384: Introduce altserver jvm variant with

Erik Joelsson erik.joelsson at oracle.com
Tue Jun 5 16:48:23 UTC 2018


Hello again,

Looks like Jesper updated the bug description with more info.

/Erik


On 2018-06-05 08:50, Erik Joelsson wrote:
> Hello Matthias,
>
> For GCC, you need 7.3.0 or later. For Microsoft you need VS2017 and I 
> think some minimal update version (the option is called -Qspectre), we 
> use 15.5.5.
>
> I was not involved in the benchmarking so I don't know any details 
> there, only the conclusion.
>
> /Erik
>
>
> On 2018-06-05 01:30, Baesken, Matthias wrote:
>>
>> Hi Erik , is there  some info available about  the performance impact 
>> when  disabling  disabling speculative execution  ?
>>
>> And which compiler versions are needed for this ?
>>
>> Best regards, Matthias
>>
>> >We need to add compilation flags for disabling speculative execution to
>>
>> >our native libraries and executables. In order to allow for users not
>>
>> >affected by problems with speculative execution to run a JVM at full
>>
>> >speed, we need to be able to ship two JVM libraries - one that is
>>
>> >compiled with speculative execution enabled, and one that is compiled
>>
>> >without. Note that this applies to the build time C++ flags, not the
>>
>> >compiler in the JVM itself. Luckily adding these flags to the rest of
>>
>> >the native libraries did not have a significant performance impact so
>>
>> >there is no need for making it optional there.
>>
>> >
>>
>> >This patch defines flags for disabling speculative execution for GCC 
>> and
>>
>> >Visual Studio and applies them to all binaries except libjvm when
>>
>> >available in the compiler. It defines a new jvm feature
>>
>> >no-speculative-cti, which is used to control whether to use the flags
>>
>> >for libjvm. It also defines a new jvm variant "altserver" which is the
>>
>> >same as server, but with this new feature added.
>>
>> >
>>
>> >For Oracle builds, we are changing the default for linux-x64 and
>>
>> >windows-x64 to build both server and altserver, giving the choice to 
>> the
>>
>> >user which JVM they want to use. If others would prefer this 
>> default, we
>>
>> >could make it default in configure as well.
>>
>> >
>>
>> >The change in GensrcJFR.gmk fixes a newly introduced race that appears
>>
>> >when building multiple jvm variants.
>>
>> >
>>
>> >Bug: https://bugs.openjdk.java.net/browse/JDK-8202384
>>
>> >
>>
>> >Webrev: http://cr.openjdk.java.net/~erikj/8202384/webrev.01 
>> <http://cr.openjdk.java.net/%7Eerikj/8202384/webrev.01>
>>
>




More information about the build-dev mailing list