United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: 7114376 Make system dictionary hashtable bucket array size configurable
7114376 : Make system dictionary hashtable bucket array size configurable

Details
Type:
Enhancement
Submit Date:
2011-11-21
Status:
Closed
Updated Date:
2012-03-22
Project Name:
JDK
Resolved Date:
2012-02-21
Component:
hotspot
OS:
generic
Sub-Component:
runtime
CPU:
generic
Priority:
P2
Resolution:
Fixed
Affected Versions:
hs23,7
Fixed Versions:
hs23

Related Reports
Backport:
Backport:
Relates:

Sub Tasks

Description
The System Dictionary hashtable bucket array size is fixed at 1009.  See
the definition of SystemDictionary::_nof_of_buckets in
src/share/vm/classfile/systemDictionary.hpp.

This value is too small for large programs with many names, too large for
small programs and just about right for medium sized ones.  The default should
remain at 1009, but it should be possible to override it on the command line.
The switch could be defined as -XX:SystemDictionarySize=<n>.
There has been a request to dynamically resize the SystemDictionary so that most customers do not have to add a command-line flag. This would be in addition to a command-line flag that would allow explicitly setting a starting size for the SystemDictionary.

                                    

Comments
EVALUATION

http://hg.openjdk.java.net/lambda/lambda/hotspot/rev/b2cd0ee8f778
                                     
2012-03-22
SUGGESTED FIX

Added new flag: -XX:+UnlockExperimentalVMOptions -XX:PredictedClassLoadCount=# to allow the customer to inform the system of expected number of loaded classes. This can be used today to tune the initial size of the internal system dictionary hashtable bucket array, and in future could be used to tune a different internal data structure.
                                     
2012-02-03
EVALUATION

http://hg.openjdk.java.net/hsx/hotspot-main/hotspot/rev/b2cd0ee8f778
                                     
2012-02-03
EVALUATION

http://hg.openjdk.java.net/hsx/hotspot-rt/hotspot/rev/b2cd0ee8f778
                                     
2012-01-31
EVALUATION

Implement as suggested in Description.
                                     
2011-11-21



Hardware and Software, Engineered to Work Together