Shark invokevirtual optimization

Gary Benson gbenson at redhat.com
Tue Feb 24 07:02:17 PST 2009


Hi all,

The Shark commit I just pushed to icedtea6 optimizes invokevirtual
for non-final invocations.  Quick and dirty SPECjvm98 numbers (not
produced in compliance with the SPECjvm98 run rules and so not
comparable with SPECjvm98 metrics) look like this:

                   Zero  Old Shark  New Shark    Speedup
  compress      230.228     11.717     11.713       0.0%
  jess           64.259      8.697      8.475       2.6%
  db            115.229     16.902     16.350       3.3%
  javac          67.757     14.875     13.704       7.9%
  mpegaudio     227.917      8.335      8.109       2.7%
  mtrt           57.192     10.817      7.785      28.0%
  jack           45.374     10.686      9.980       6.6%

Apparently mtrt does a lot of virtual calls :)

Next stop... direct calls (invokestatic, invokespecial, and
final invokevirtual).

Happy Pancake Day!
Gary

-- 
http://gbenson.net/



More information about the distro-pkg-dev mailing list