RFR (S) CR 7177472: JSR292: MethodType interning penalizes scalability

Christian Thalinger christian.thalinger at oracle.com
Tue Jun 11 16:06:13 UTC 2013


On Jun 11, 2013, at 9:03 AM, Aleksey Shipilev <aleksey.shipilev at oracle.com> wrote:

> On 06/11/2013 07:43 PM, Christian Thalinger wrote:
>> Thanks for this but I was thinking running it with -Xprof to see
>> whether some of the table methods show up on the profile.
> 
> I put little trust into this kind of profiling, but here's the sample
> output from JMH -prof stack, while running with 4 threads:
> 
> Before:
>> Iteration   5 (20s in 4 threads): 380.982 msec/op
>>       Stack |  24.8%   RUNNABLE jdk.nashorn.internal.runtime.regexp.joni.ByteCodeMachine.matchAt
>>             |   6.5%   RUNNABLE jdk.nashorn.internal.runtime.regexp.joni.SearchAlgorithm$3.search
>>             |   5.2%   RUNNABLE java.lang.Class.getClassLoader0
>>             |   3.3%   RUNNABLE java.lang.ThreadLocal.get
>>             |   3.0%   RUNNABLE jdk.nashorn.internal.runtime.regexp.JoniRegExp$JoniMatcher.<init>
>>             |   2.9%   RUNNABLE jdk.nashorn.internal.objects.NativeRegExp.replace
>>             |   2.4%   RUNNABLE jdk.nashorn.internal.runtime.regexp.joni.Matcher.forwardSearchRange
>>             |   2.3%   RUNNABLE jdk.nashorn.internal.objects.NativeRegExp.exec
>>             |   2.1%   RUNNABLE jdk.nashorn.internal.objects.NativeRegExp.groups
>>             |   1.9%   RUNNABLE jdk.nashorn.internal.objects.NativeString.replace
>>             |  45.6%            (other)
>>             |
> 
> 
> After:
>> Iteration   5 (20s in 4 threads): 358.121 msec/op
>>       Stack |  24.7%   RUNNABLE jdk.nashorn.internal.runtime.regexp.joni.ByteCodeMachine.matchAt
>>             |   5.7%   RUNNABLE java.lang.Class.getClassLoader0
>>             |   5.3%   RUNNABLE jdk.nashorn.internal.runtime.regexp.joni.SearchAlgorithm$3.search
>>             |   3.5%   RUNNABLE java.lang.ThreadLocal.get
>>             |   3.4%   RUNNABLE jdk.nashorn.internal.runtime.regexp.JoniRegExp$JoniMatcher.<init>
>>             |   2.7%   RUNNABLE jdk.nashorn.internal.objects.NativeRegExp.replace
>>             |   2.3%   RUNNABLE jdk.nashorn.internal.runtime.regexp.joni.Matcher.forwardSearchRange
>>             |   1.8%   RUNNABLE jdk.nashorn.internal.objects.NativeRegExp.exec
>>             |   1.7%   RUNNABLE jdk.nashorn.internal.objects.NativeString.replace
>>             |   1.5%   RUNNABLE jdk.nashorn.internal.runtime.regexp.joni.StackMachine.pop
>>             |  47.3%            (other)
>>             |
> 
> -Xprof shows the similar data.

Odd.  It showed up for me last time.  Maybe it's related to using Joni now.

Anyway, let's push this.

-- Chris

> 
> -Aleksey.




More information about the core-libs-dev mailing list