RFR (S) 8227123: Assertion failure when setting SymbolTableSize larger than 2^17 (131,072)
coleen.phillimore at oracle.com
coleen.phillimore at oracle.com
Tue Jul 23 15:36:34 UTC 2019
On 7/23/19 11:25 AM, Jiangli Zhou wrote:
> Hi Coleen,
>
> On Mon, Jul 22, 2019 at 12:51 PM <coleen.phillimore at oracle.com> wrote:
>>
>> Thanks Jiangli, and for the suggestion to increase the max size. I was
>> waffling about removing the experimental option completely.
> Would it be worth considering making SymbolTableSize a product flag?
> There was a noticeable performance issue for a large application with
> older JDK versions. It was found to be related to slow
> SymbolTable::lookup due to too many collisions. Setting a large
> initial symbol table size worked around the performance issue and the
> improvement was significant. With newer JDK (> 12), user may still
> prefer setting a large initial size to avoid any potential overhead
> (avoid resizing) for large applications.
I think the cost of resizing is low enough that it's not worth making it
a product flag. I know it doesn't match StringTableSize in this way.
Ideally, customers should not have knowledge that these things are
hashtables and should not have controls for internal implementation
decisions.
With resizing, both of these tables should perform acceptably out of the
box. Do we have any recent cases of customers needing to set this
value to a large size, that may have prompted your bug report?
Coleen
>
> Best regards,
> Jiangli
>
>> Coleen
>>
>> On 7/22/19 3:40 PM, Jiangli Zhou wrote:
>>> Looks good.
>>>
>>> Best regards,
>>> Jiangli
>>>
>>> On Mon, Jul 22, 2019 at 11:46 AM <coleen.phillimore at oracle.com> wrote:
>>>> Summary: Increase max size for SymbolTable and fix experimental option
>>>> range. Make experimental options trueInDebug so they're tested by the
>>>> command line option testing
>>>>
>>>> open webrev at http://cr.openjdk.java.net/~coleenp/2019/8227123.01/webrev
>>>> bug link https://bugs.openjdk.java.net/browse/JDK-8227123
>>>>
>>>> Tested locally with default and -XX:+UseZGC since ZGC has a lot of
>>>> experimental options. I didn't test with shenanodoah.
>>>>
>>>> I will test with hs-tier1-3 before checking in.
>>>>
>>>> Thanks,
>>>> Coleen
More information about the hotspot-dev
mailing list