RFR [8051382] Optimize java.lang.reflect.Modifier.toString()
Ivan Gerasimov
ivan.gerasimov at oracle.com
Mon Aug 4 11:27:31 UTC 2014
Hi Martin!
Sorry for the pause, I had to take a break.
Thank you for your StringJoiner rework!
I created a bug to track it:
https://bugs.openjdk.java.net/browse/JDK-8054221
With your implementation of StringJoiner, the first version of
Modifier.toString() [1] became (almost) as fast as original, and a bit
clearer.
[1] http://cr.openjdk.java.net/~igerasim/8051382/0/webrev/
Will you approve the change to Modifier.toString?
Sincerely your,
Ivan
On 19.07.2014 19:58, Martin Buchholz wrote:
> StringJoiner seems written in a style suitable for an application, not
> in a low-level performance-oriented style suitable for a JDK core
> library. But we can fix that.
>
> http://cr.openjdk.java.net/~martin/webrevs/openjdk9/StringJoiner-optimization/
> <http://cr.openjdk.java.net/%7Emartin/webrevs/openjdk9/StringJoiner-optimization/>
>
>
> On Fri, Jul 18, 2014 at 6:18 PM, Ivan Gerasimov
> <ivan.gerasimov at oracle.com <mailto:ivan.gerasimov at oracle.com>> wrote:
>
>
> On 19.07.2014 3:07, Martin Buchholz wrote:
>
>
> I took a quick look at StringJoiner. It looks to me like this
> won't be an optimization, because StringJoiner uses
> StringBuilder internally, and will actually perform more total
> operations.
>
>
> Unfortunately this is true.
> Microbenchmarking shows that StringJoiner makes the things 30%
> slower, which is sad.
>
> Then I propose another simple patch giving +15% to the speed:
>
> http://cr.openjdk.java.net/~igerasim/8051382/1/webrev/
> <http://cr.openjdk.java.net/%7Eigerasim/8051382/1/webrev/>
>
> Sincerely yours,
> Inan
>
>
More information about the core-libs-dev
mailing list