RFR 8019375: Internal symbol table size should be tunable.
Kevin Walls
kevin.walls at oracle.com
Thu Aug 29 02:52:12 PDT 2013
On 23/08/13 19:54, Coleen Phillimore wrote:
>
> Hi Kevin,
>
> I'm sorry I didn't warn you but I think there are serviceability agent
> changes with this change. For some reason, I think the SA duplicates
> code in the JVM for the symbol table.
>
> You might get away with only changing this line in
> agent/src/share/classes/sun/jvm/hotspot/memory/SymbolTable.java
>
> symbolTableSize =
> db.lookupIntConstant("SymbolTable::symbol_table_size").intValue(); to
> use SymbolTableSize.
>
> Then run the nsk.sajdi.testlist tests.
>
> Thanks,
> Coleen
>
> On 8/23/2013 5:34 AM, Kevin Walls wrote:
>> Hi,
>>
>> I'd like to get reviews on this change to make the size of the symbol
>> table tunable. This can be a performance benefit to some apps, i.e.
>> when the symbol table becomes overloaded (see
>> PrintStringTableStatistics output).
>>
>> This work here actually comes from Coleen. I'm happy to take any
>> further comments and update.
>>
>> http://cr.openjdk.java.net/~kevinw/8019375/webrev.01/
>> http://bugs.sun.com/view_bug.do?bug_id=8019375
>>
>> This uses SymbolTableSize as the tunable name. (Another suggestion
>> and possibile name, was PredictedMaxVMStrings to avoid talking
>> explicity about the internal format. Comments welcome!...)
>>
>> Thanks
>> Kevin
>
Thanks Coleen, (and thanks Keith too!)
Yes, we have a getSymbolTableSize() accessor in
agent/...../SymbolTable.java, though I don't see it ever being called,
which must be why the SA still worked. 8-)
The SA does not have a size accessor for StringTable, I am wondering if
we should remove this one too if it's never used. Will test and reply
again...
Thanks
Kevin
More information about the serviceability-dev
mailing list