Java 7 Groovy twice as fast as Java 8 and 9

Richard Kolb rjdkolb at gmail.com
Tue Feb 17 11:42:01 UTC 2015


Thanks Chris and Martijn.
Much appreciated.

Regards,
Richard.
On 17 Feb 2015 13:16, "Martijn Verburg" <martijnverburg at gmail.com> wrote:

> Hi Richard,
>
> Yes, that and other related issues.  Basically there was a lot changing in
> Hotspot at the time (G1 GC interactions as well) and it wasn't really
> deemed a stable improvement until 8
>
> Cheers,
> Martijn
>
> On 17 February 2015 at 10:59, Richard Kolb <rjdkolb at gmail.com> wrote:
>
>> Hi Chris
>>
>> Looks like you are correct.
>> If I run the beanchmarks though Java 8 :'java -XX:TieredStopAtLevel=1 -jar
>> benchmarks.jar'
>> I get significant improvement
>> (-XX:+TieredCompilation does not seem to have as much effect by itself)
>>
>> I assume it is turned off because of this
>> <http://bugs.java.com/view_bug.do?bug_id=7159766> ?
>>
>> regards,
>> Richard
>> .
>>
>> On 17 February 2015 at 11:54, Chris Newland <cnewland at chrisnewland.com>
>> wrote:
>>
>> > Hi Richard,
>> >
>> > I'll run this through JITWatch [1] later and see if there is anything
>> > obvious.
>> >
>> > Have you considered that with 8 and 9 you're probably hitting tiered
>> > compilation (disabled by default in 7) which means you're running on
>> > "quick-and-dirty" C1 optimisation for part of your benchmark.
>> >
>> > If your benchmark doesn't run for long enough for C2 to kick in then
>> that
>> > could be a simple reason.
>> >
>> > Cheers,
>> >
>> > Chris
>> >
>> > [1] https://github.com/AdoptOpenJDK/jitwatch/
>> >
>> > On Tue, February 17, 2015 06:18, Richard Kolb wrote:
>> > > Hello All,
>> > >
>> > >
>> > > I've created my own micro beanchmarks with jmh.
>> > > It's forked to here :
>> > > https://github.com/AdoptOpenJDK/vmbenchmarks
>> > >
>> > >
>> > > Most of the benchmarks clearly show how performance is increasing
>> except
>> > > for Groovy.
>> > >
>> >
>> https://github.com/AdoptOpenJDK/vmbenchmarks/blob/master/src/main/java/co
>> > > m/github/vmbenchmarks/DynamicLanguages.java
>> > >
>> > > Perhaps my benchmark is wrong, but it looks like 8 and 9 are
>> > > significantly slower than 7.
>> > >
>> > > Java 7 (build 1.7.0_60-b19):
>> > > c.g.v.DynamicLanguages.groovy 665.826 ops/s
>> > >
>> > > Java 8 (build 1.8.0_31-b13):
>> > > c.g.v.DynamicLanguages.groovy 366.274
>> > >
>> > > Java 9 (build 1.9.0-ea-b42) :
>> > > c.g.v.DynamicLanguages.groovy 375.593 ops/s
>> > >
>> > > regards, Richard.
>> > >
>> > >
>> >
>> >
>> >
>>
>
>


More information about the adoption-discuss mailing list