RFR(S): 8061436: Processing of options related to segmented code cache could be enhanced
vladimir.kozlov at oracle.com
Wed Nov 11 02:03:10 UTC 2015
In arguments.cpp we printed all sizes when sum was not equal to ReservedCodeCacheSize. Can you do the same? Currently
you print only total size.
I don't see where you do *5 scaling of default values as we did in arguments.cpp
On 11/10/15 4:33 AM, Tobias Hartmann wrote:
> please review the following patch:
> I enhanced processing of code cache related size flags to allow the user to specify the size of an arbitrary code heap while the sizes of the other heaps are adjusted according to the ReservedCodeCacheSize. Before, either none or all flags had to be set. I removed the fragile code from arguments.cpp and implemented all the functionality in CodeCache::initialize_heaps().
> The implementation works by checking which code heap sizes were explicitly set by the user and first verifies that their total size does not exceed the ReservedCodeCacheSize (with all other heaps set to the minimal size). If this is guaranteed, the sizes of the other heaps are adapted (increased or decreased) to make full use of the available ReservedCodeCacheSize. Hereby, we only change the size of the non-nmethod code heap if absolutely necessary. An assert verifies that the resulting code heap sizes correctly add up and all space is used.
> Tested with RBT (hotspot_all and jdk_jfr). Additionally, I used a script to test many different size combinations and manually checked the (error) output.
More information about the hotspot-compiler-dev