Re: RFR: 8171373: Reduce copying during initialization of ModuleHashes
+1 Mandy > On Dec 16, 2016, at 4:45 PM, Claes Redestadwrote: > > Chris, Mandy, > > thanks for reviewing! > > I've made nameToHash final and added a comment, updated in place. > > I'll push this tomorrow unless I hear any objections. > > /Claes > > On 2016-12-16 18:52, Mandy Chung wrote: >> >>> On Dec 16, 2016, at 8:00 AM, Claes Redestad >>> wrote: >>> >>> Hi, >>> >>> recent changes to split out ModuleHashes from ModuleDescriptor caused a >>> small/tiny increase in HashMap creation, resize and copying: >>> >>> Webrev: http://cr.openjdk.java.net/~redestad/8171373/webrev.01/ >>> Bug: https://bugs.openjdk.java.net/browse/JDK-8171373 >> >> I like the optimization for one single module (i.e. java.base) containing >> the module hashes which is the common case. >> >> Can you add a comment in SystemModuleFinder about the common case and avoid >> creating a new HashMap unless there is more than one module containing >> ModuleHashes. >> >> Builder::nameToHash can now be final. >> >> Mandy >>
Re: RFR: 8171373: Reduce copying during initialization of ModuleHashes
Chris, Mandy, thanks for reviewing! I've made nameToHash final and added a comment, updated in place. I'll push this tomorrow unless I hear any objections. /Claes On 2016-12-16 18:52, Mandy Chung wrote: On Dec 16, 2016, at 8:00 AM, Claes Redestadwrote: Hi, recent changes to split out ModuleHashes from ModuleDescriptor caused a small/tiny increase in HashMap creation, resize and copying: Webrev: http://cr.openjdk.java.net/~redestad/8171373/webrev.01/ Bug: https://bugs.openjdk.java.net/browse/JDK-8171373 I like the optimization for one single module (i.e. java.base) containing the module hashes which is the common case. Can you add a comment in SystemModuleFinder about the common case and avoid creating a new HashMap unless there is more than one module containing ModuleHashes. Builder::nameToHash can now be final. Mandy
Re: RFR: 8171373: Reduce copying during initialization of ModuleHashes
> On Dec 16, 2016, at 8:00 AM, Claes Redestadwrote: > > Hi, > > recent changes to split out ModuleHashes from ModuleDescriptor caused a > small/tiny increase in HashMap creation, resize and copying: > > Webrev: http://cr.openjdk.java.net/~redestad/8171373/webrev.01/ > Bug: https://bugs.openjdk.java.net/browse/JDK-8171373 I like the optimization for one single module (i.e. java.base) containing the module hashes which is the common case. Can you add a comment in SystemModuleFinder about the common case and avoid creating a new HashMap unless there is more than one module containing ModuleHashes. Builder::nameToHash can now be final. Mandy
Re: RFR: 8171373: Reduce copying during initialization of ModuleHashes
> On 16 Dec 2016, at 16:00, Claes Redestadwrote: > > Hi, > > recent changes to split out ModuleHashes from ModuleDescriptor caused a > small/tiny increase in HashMap creation, resize and copying: > > Webrev: http://cr.openjdk.java.net/~redestad/8171373/webrev.01/ > Bug: https://bugs.openjdk.java.net/browse/JDK-8171373 > > This decreases #bytecode executed during startup by ~20K (around 1.5% of > total). Nicely done Claes. Looks good to me. Builder.nameToHash can be final, no? -Chris.
RFR: 8171373: Reduce copying during initialization of ModuleHashes
Hi, recent changes to split out ModuleHashes from ModuleDescriptor caused a small/tiny increase in HashMap creation, resize and copying: Webrev: http://cr.openjdk.java.net/~redestad/8171373/webrev.01/ Bug: https://bugs.openjdk.java.net/browse/JDK-8171373 This decreases #bytecode executed during startup by ~20K (around 1.5% of total). Thanks! /Claes