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

Reply via email to