RFR [8051382] Optimize java.lang.reflect.Modifier.toString()

Martin Buchholz martinrb at google.com
Tue Aug 5 06:03:47 UTC 2014


Looks good!


On Mon, Aug 4, 2014 at 4:27 AM, Ivan Gerasimov <ivan.gerasimov at oracle.com>
wrote:

>  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/
>
>
> On Fri, Jul 18, 2014 at 6:18 PM, Ivan Gerasimov <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/
>>
>> Sincerely yours,
>> Inan
>>
>>
>
>



More information about the core-libs-dev mailing list