JDK-8148604 : JEP 280, Switch to more optimal concatenation strategy
  • Type: Sub-task
  • Component: core-libs
  • Sub-Component: java.lang
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2016-01-29
  • Updated: 2016-06-23
  • Resolved: 2016-05-19
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9 b120Fixed
Related Reports
Blocks :  
Blocks :  
Blocks :  
Blocks :  
Blocks :  
Blocks :  
Blocks :  
Blocks :  
Relates :  
Description
We are now flying with a default concat strategy that dubs javac's StringBuilder::append chains without any hints. We need to consider switching to another scheme by default.
Comments
MH_INLINE_SIZED_EXACT wins on all tests: http://cr.openjdk.java.net/~shade/8148604/perf/ Results are in ns/op, and encoded as: (m|s) - multi/single thread, (c1|c2) -- C1 or C2 compiled, (inline|indyWithConstants) -- indy bytecode flavor. See e.g. C1 and C2 performance with different strategies and single-threaded workload: http://cr.openjdk.java.net/~shade/8148604/perf/s-c1-indyWithConstants.log http://cr.openjdk.java.net/~shade/8148604/perf/s-c2-indyWithConstants.log
18-05-2016

JDK-8146801 is known to improve both BC_SB_SIZED_EXACT and MH_INLINE_SIZED_EXACT strategies a lot. Need that patch in mainline before re-doing performance work.
28-02-2016