RFR: 8319429: Resetting MXCSR flags degrades ecore [v2]
Jatin Bhateja
jbhateja at openjdk.org
Tue Nov 7 03:40:33 UTC 2023
On Tue, 7 Nov 2023 03:05:48 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:
>> src/hotspot/cpu/x86/vm_version_x86.cpp line 862:
>>
>>> 860: // Check if processor has Intel Ecore
>>> 861: if (FLAG_IS_DEFAULT(DoEcoreOpt) && is_intel() && cpu_family() == 6 &&
>>> 862: (_model == 0x97 || _model == 0xAC || _model == 0xAF)) {
>>
>> On hybrid platforms, it will be enabled on both Pcore and Ecore. Performance is essentially unchanged on Pcore
>
> Correct, CPUID is CPU specific not core specific, so settings should apply to both.
As per JVM specification section 2.8 "The floating-point instructions of the Java Virtual Machine do not throw
exceptions, trap, or otherwise signal the IEEE 754 exceptional conditions of
invalid operation, division by zero, overflow, underflow, or inexact.", thus JVM does not check these exceptions.
Your patch is always setting lower 6 bits of MXCSR on hybrid CPUs which has both E and P core, do you see any concerns if these bits are default ON for other server targets.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/16504#discussion_r1384333465
More information about the hotspot-compiler-dev
mailing list