-
Bug
-
Resolution: Fixed
-
P3
-
25
-
b05
-
x86_64
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8362039 | 25.0.1 | Tobias Hartmann | P3 | Resolved | Fixed | b02 |
JDK-8361205 | 25 | Mohamed Issa | P3 | Resolved | Fixed | b30 |
https://bugs.openjdk.org/browse/JDK-8353686 intrinsifies Math.cbrt API with optimized Libm intrinsic, but causes is a regression for special double values.
With Intrinsic Disabled:-
Benchmark Mode Cnt Score Error Units
CbrtPerf.CbrtPerfSpecialValues.cbrtDouble0 thrpt 2 1343559.770 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleInf thrpt 2 881930.283 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNaN thrpt 2 973307.409 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNegative0 thrpt 2 1342454.046 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNegativeInf thrpt 2 880169.071 ops/ms
With Intrinsic Enabled:-
Benchmark Mode Cnt Score Error Units
CbrtPerf.CbrtPerfSpecialValues.cbrtDouble0 thrpt 2 293228.991 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleInf thrpt 2 329190.573 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNaN thrpt 2 334625.414 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNegative0 thrpt 2 270939.709 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNegativeInf thrpt 2 328087.618 ops/ms
Intrinsic penalizes special case performance to optimize a more generic control path while Java implimentation handles them upfront.
With Intrinsic Disabled:-
Benchmark Mode Cnt Score Error Units
CbrtPerf.CbrtPerfSpecialValues.cbrtDouble0 thrpt 2 1343559.770 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleInf thrpt 2 881930.283 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNaN thrpt 2 973307.409 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNegative0 thrpt 2 1342454.046 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNegativeInf thrpt 2 880169.071 ops/ms
With Intrinsic Enabled:-
Benchmark Mode Cnt Score Error Units
CbrtPerf.CbrtPerfSpecialValues.cbrtDouble0 thrpt 2 293228.991 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleInf thrpt 2 329190.573 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNaN thrpt 2 334625.414 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNegative0 thrpt 2 270939.709 ops/ms
CbrtPerf.CbrtPerfSpecialValues.cbrtDoubleNegativeInf thrpt 2 328087.618 ops/ms
Intrinsic penalizes special case performance to optimize a more generic control path while Java implimentation handles them upfront.
- backported by
-
JDK-8361205 Performance regression in Math.cbrt
-
- Resolved
-
-
JDK-8362039 Performance regression in Math.cbrt
-
- Resolved
-
- caused by
-
JDK-8353686 Optimize Math.cbrt for x86 64 bit platforms
-
- Resolved
-
- links to
-
Commit(jdk25) openjdk/jdk/0a151c68
-
Commit(master) openjdk/jdk/38f59f84
-
Review(jdk25) openjdk/jdk/26085
-
Review(master) openjdk/jdk/25962
(2 links to)