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