Login

Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.

ARM Community: Oracle's Java SE server compiler now on ARM - ARM Community

Jump to content

Oracle's Java SE server compiler now on ARM

Last month Oracle shipped 2 sets of Java SE for Embedded releases for ARM: 7 Update 2 and 6 Update 30. Java SE for Embedded 7u2 is a key release for the ARM Community as it includes the first offering of Oracle's server JIT (Just-In-Time) bytecode compiler for ARM. The server compiler, a highly optimizing JIT compiler used to produce Oracle's record-setting Java SE benchmarks, is now available on ARMv7.

Some quick background on Oracle's JIT compilers - there are 2 compilers for Java SE: client and server. The client compiler is a fast start-up, lightly optimizing compiler. It's better suited for smaller footprint systems and those running applications that require fast start-up such as GUI apps. The server compiler is targeted for long-running applications where throughput is most important. It produces highly-optimized code but incurs a start-up cost in achieving that. At JavaOne 2011 in San Francisco, we shared information on the client and server compilers in a joint ARM-Oracle technical session. As mentioned in that session, initial server compiler testing on ARMv7 using common benchmarks showed improvements of up to ~40% compared with the client compiler.

Of course, performance results are always highly dependent on the application and system but given the server compiler's performance characteristics, it should be a good fit for many ARM-based systems. This includes not only systems with long-running 'server-like' apps found in traditional embedded markets such as datacomm and industrial automation but also those systems expected to emerge from a number of companies including HP and Calxeda that are targeting enterprise apps and markets. As Ian Ferguson highlighted in his initial server blog last year, a significant number of those enterprise applications, including Hadoop, are written in Java.

In addition to supporting the server compiler, 7u2 also contains serviceability enhancements, performance improvements and bug fixes. Also released was Java SE for Embedded 6u30 which includes performance improvements and bug fixes. The 2 sets of 7u2 and 6u30 releases for Java SE for Embedded for ARM comprise a total of 7 binaries and support the following:
  • latest features and fixes of standard SE
  • headless support for ARMv5 soft-float and ARMv6/v7 hard-float
  • headful support for ARMv7
  • multi-core support for ARMv7
  • server JIT compiler support for ARMv7 (7u2 only)

For more info, please see:

Downloads: Both Java SE Embedded 7u2 and 6u30

Release Notes: Java SE Embedded 7u2 Java SE Embedded 6u30

Finally, for an interesting Java SE Embedded 7u2 on ARM demo - check out Jim Connors' 'Off-The-(Home-Depot)-Shelf Tomcat Micro-Cluster' which runs Tomcat Web Server clustered over 5 ARM-based Plug computers.

Guest Partner Blogger:

Attached Image
David Therkelsen, Senior Engineering Manager - Java Platform Group, Oracle.
Dave has been involved in a number of Java technologies at Sun/Oracle including the HotSpot VM and Java Web Start. He currently leads Java Embedded VM engineering. His prior experience includes working on OS emulation at Phoenix Technologies and developing real-time embedded energy management systems.

ARM welcomes its wealth of Partners in the ARM Connected Community (CC) to submit guest blogs to be published on our multiple community blogs. If interested in participating please submit email inquiries to Tell.Us@arm.com.

The ARM Connected Community (CC) is an extensive ecosystem covering all aspects of ARM processor-based design, from chip implementation through to system and device design. The CC provides a platform for collaborative innovation, with multiple types of forums for members to work with one another, and with customers, to solve industry challenges, all with the purpose of enabling designers to focus on differentiating features and an accelerated time-to-market for ARM powered solutions.
All company and product names appearing in the ARM Blogs are trademarks and/or registered trademarks of ARM Limited per ARM’s official trademark list. All other product or service names mentioned herein are the trademarks of their respective owners.

0 Comments On This Entry

Please log in above to add a comment or register for an account