Re: [9] RFR (XS): 8059455: LambdaForm.prepare() does unnecessary work for cached LambdaForms

2015-04-24 Thread Vladimir Ivanov
Thanks, Paul. Best regards, Vladimir Ivanov On 4/23/15 6:30 PM, Paul Sandoz wrote: On Apr 23, 2015, at 5:12 PM, Vladimir Ivanov wrote: https://bugs.openjdk.java.net/browse/JDK-8059455 http://cr.openjdk.java.net/~vlivanov/8059455/webrev.00/ LambdaForm.compileToBytecode() does unnecessary w

ClassValue perf?

2015-04-24 Thread Charles Oliver Nutter
Hey folks! I'm wondering how the performance of ClassValue looks on recent OpenJDK 7 and 8 builds. JRuby 9000 will be Java 7+ only, so this is one place I'd like to simplify our code a bit. I could measure myself, but I'm guessing some of you have already done a lot of exploration or have benchma

ClassLoader leak in MethodHandle.asType()

2015-04-24 Thread Peter Levart
Hi, I think there is a Class(Loader) leak in MethodHandle.asType() implementation. If for example some MH (say mhX) is long lived (because it is a system cached MH) and a client "generates" variants from it by invoking mhX.asType(newType) and the newType contains a type (either return type or

Re: ClassLoader leak in MethodHandle.asType()

2015-04-24 Thread John Rose
Good point. Are you seeing a leak in practice? The cache is important, especially to inexact MH.invoke. — John On Apr 24, 2015, at 9:14 AM, Peter Levart wrote: > > I think there is a Class(Loader) leak in MethodHandle.asType() > implementation. If for example some MH (say mhX) is long lived (b

Re: ClassValue perf?

2015-04-24 Thread John Rose
On Apr 24, 2015, at 5:38 AM, Charles Oliver Nutter wrote: > > Hey folks! > > I'm wondering how the performance of ClassValue looks on recent > OpenJDK 7 and 8 builds. JRuby 9000 will be Java 7+ only, so this is > one place I'd like to simplify our code a bit. > > I could measure myself, but I'm

Re: ClassLoader leak in MethodHandle.asType()

2015-04-24 Thread Vladimir Ivanov
Thanks for the report, Peter. Filed JDK-8078641 [1] to track the problem. The fix you propose looks reasonable. Best regards, Vladimir Ivanov [1] https://bugs.openjdk.java.net/browse/JDK-8078641 On 4/24/15 7:14 PM, Peter Levart wrote: Hi, I think there is a Class(Loader) leak in MethodHandl

Re: ClassLoader leak in MethodHandle.asType()

2015-04-24 Thread Peter Levart
On 04/24/2015 11:06 PM, John Rose wrote: Good point. Are you seeing a leak in practice? The cache is important, especially to inexact MH.invoke. — John Well, yes. I am (re)implementing annotations (proxies) using Remi's Proxy2 and made it all the way except for the following failing jtreg te

Re: ClassLoader leak in MethodHandle.asType()

2015-04-24 Thread John Rose
On Apr 24, 2015, at 3:24 PM, Peter Levart wrote: > > Anyway. The inexact invoke() always transforms a specific MH to a generic one > (Object, Object, ...)Object, right? Yes. > So using inexact invoke() on any MH can't trigger the leak. It's just that if > someone attempts to transform a gener