Webrev of Oracle ARM & AARCH64 Sources
david.holmes at oracle.com
Fri Sep 30 11:23:30 UTC 2016
On 30/09/2016 8:32 PM, Edward Nevill wrote:
> Hi Bob,
> On Wed, 2016-09-28 at 10:07 -0400, Bob Vandette wrote:
>> I’m am please to announce that I have completed our internal reviews and can now
>> open up the sources to our ARM 32 & 64 bit implementations of JDK9.
> Great news.
>> Here is a webrev that includes a patch that can be applied on top of the
>> (http://hg.openjdk.java.net/aarch32-port/jdk9-arm3264/ ) forest.
>> http://cr.openjdk.java.net/~bobv/arm3264/webrev <http://cr.openjdk.java.net/~bobv/arm3264/webrev>
> I have built this natively on armv7 and aarch64 without problems. In both cases I built the minimal,client,server combination.
> I have also tested the server build with JTreg hotspot & langtools.
> On aarch64 I got the following results:-
> hotspot: Test results: passed: 1,280; failed: 8; error: 43
> langtools: Test results: passed: 3,700; failed: 1; error: 29
> This is fairly typical, for example, using the Linaro 1609 build I get
> hotspot: Test results: passed: 1,271; failed: 17; error: 43
> langtools: Test results: passed: 3,715; failed: 3; error: 12
So most of the "errors" are probably tests that are ignored.
> On armv7 I first of all had to pin the jvm.cfg to use -server as it kept on using the client as I was not running on a 'server class machine' (since my armv7 device is a Samsung Chromebook this is fair enough).
> However, I then had problems with the test harness crashing with the error
> # Internal Error (synchronizer.cpp:1576), pid=6533, tid=6542
> # guarantee(mid->header()->is_neutral()) failed: invariant
> (hs_err here http://cr.openjdk.java.net/~enevill/aarch32/hs_err_pid6533.log)
Strange - that looks like our closed bug:
which should be fixed. It was a missing memory barrier issue.
Aside: we're going to have to figure out how to deal with currently
closed bug reports.
> On a subsequent run the test harness locked up after 85 tests.
> It looks like there might be a problem with locks breaking with G1GC. I will keep investigating.
> I ran it again using the template interpreter for the test harness and the server for the jdk under test and it ran successfully.
> On armv7 I got
> hotspot: Test results: passed: 1,202; failed: 11; error: 36
> langtools: Test results: passed: 3,718; failed: 5; error: 8
> I also did some limited benchmarking which I am not going to share on a public forum. Lets just say the performance of the server JIT on armv7 was pleasing.
> Thanks for all your work getting to this stage. It looks good to push and you should shortly have committeer rights, if you don't get them within a few days ping me and I will give ops a nudge.
> All the best,
More information about the aarch32-port-dev