On 29.04.2016 10:28, Michael Haupt wrote:
All,

see http://cr.openjdk.java.net/~mhaupt/8031043/ for a snapshot of what
is currently available.

We have three patches:
* Christian's, which simply reduces the HashMap size,
* Peter's, which refactors ClassValueMap into a WeakHashMap,
* mine, which attempts to introduce the single-value storage
optimization John had suggested (I worked on performance with Aleksey -
thanks!).

All of these are collected in the patches subdirectory for convenience.
(Peter, I adapted your patch to the new Unsafe location.)

I extended Peter's benchmark (thanks!) to cover single-value storage;
the source code is in the benchmark subdirectory, together with raw
results from running the benchmark with each of the three patches
applied. A results-only overview is in benchmark-results.txt.

The three are roughly on par. I'm not sure the single-value storage
optimization improves much on footprint given the additional data that
must be kept around to make transition to map storage safe.

Opinions?

my fear is a bit that having only a single value, will not be enough if you have for example multiple dynamic languages running... let's say Nashorn, JRuby, and Groovy. Also, if I ever get there, using multiple values would become a normal case in Groovy.

So any size depending optimization looks problematic for me

bye Jochen

_______________________________________________
mlvm-dev mailing list
mlvm-dev@openjdk.java.net
http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

Reply via email to