RFR: 8242959: Optimize ZipFile.getEntry by folding lookups for name and name+'/'

Lance Andersen lance.andersen at oracle.com
Fri Apr 17 15:23:43 UTC 2020


HI Claes,

I think this looks good.

Best
Lance

> On Apr 17, 2020, at 7:33 AM, Claes Redestad <claes.redestad at oracle.com> wrote:
> 
> Hi,
> 
> please review this patch to get rid of the back-to-back lookup of name
> and name+'/' in ZipFile.getEntry. This is done by first adjusting the
> hash function so that a trailing slash is not included in an entry's
> hash code, and adjusting appropriately when matching the arrays.
> 
> This means we do fewer table lookups, less arithmetic and potentially
> less allocation on lookup misses.
> 
> Patch contributed by Eirik Bjørsnøs.
> 
> Webrev: http://cr.openjdk.java.net/~redestad/8242959/open.00/
> Bug:    https://bugs.openjdk.java.net/browse/JDK-8242959
> 
> Testing: tier1+2, verified neutral performance for hits and a
> significant reduction in cost of misses (~30-50ms improvement on
> Spring PetClinic startup).
> 
> Thanks!
> 
> /Claes

 <http://oracle.com/us/design/oracle-email-sig-198324.gif>
 <http://oracle.com/us/design/oracle-email-sig-198324.gif> <http://oracle.com/us/design/oracle-email-sig-198324.gif>
 <http://oracle.com/us/design/oracle-email-sig-198324.gif>Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037
Oracle Java Engineering 
1 Network Drive 
Burlington, MA 01803
Lance.Andersen at oracle.com <mailto:Lance.Andersen at oracle.com>





More information about the core-libs-dev mailing list