News Archive (1999-2012) | 2013-current at LinuxGizmos | Current Tech News Portal |    About   

Real-time JVM takes on multi-core

Oct 30, 2008 — by Eric Brown — from the LinuxDevices Archive — 29 views

Aonix is shipping a symmetric multi-processing (SMP) version of its Linux-compatible real-time Java virtual machine (JVM), targeting multi-core processors running Linux. Offering initial support for Concurrent's RedHawk real-time Linux, “PERC Ultra SMP” optimizes PERC's garbage collection techniques for complex SMP environments, says Aonix.

Aonix announced the SMP version of its Java 5 compliant PERC Ultra in June. Designed as a toolset for creating embedded and real-time systems requiring J2SE (Java Standard Edition) support, PERC Ultra is claimed by Aonix to be the most widely used real-time virtual machine in the industry. It is typically used in aerospace, defense, telecommunications, industrial automation, and robotics applications.

PERC Ultra SMP scheduling over multiple cores
(Click to enlarge)

The SMP version aims to increase efficiency and to reduce interference with application threads when PERC Ultra is deployed on multi-core systems. Because Java provides foundational support for multithreaded programming, Java code does not need to be rewritten to exploit SMP's improved performance, says Aonix. However, the company says it has modified PERC Ultra's “patented, deterministic garbage collection technology” to optimize SMP environments. Acting as a parallel process, the garbage collector leverages the power of idle processors that are made to work in tandem, with one processing scanning stack memory in search of pointers to live objects, while the other simultaneously relocates previously identified live objects (see diagram above).

Aonix has developed a Java Mandelbrot benchmark to demonstrate PERC Ultra SMP's parallel execution capability. Running eight parallel threads on a dual quad-core Xeon-based Linux real-time system, execution speed improved by a factor of eight compared to the same benchmark using a single thread, claims the company.

PERC Ultra SMP thread analysis
using Concurrent NightTrace

(Click to enlarge)

PERC Ultra SMP has initially been ported to Concurrent's RedHawk real-time Linux implementation targeting multi-core x86 architectures, and it also supports Concurrent's NightStar Linux debugging and analysis tools (pictured at right), says Aonix. In fact, the SMP version was jointly developed by the two companies, says Concurrent, in response to requirements of a military contractor. The contractor is said to be developing components of a mission planning and weapon systems to be used aboard U.S. Navy warships.

Stated Dan Mondor, president and CEO of Concurrent, “PERC Ultra has successfully addressed the Java requirements of our most important customers. We look forward to working with Aonix to extend this capability to our customers realizing the performance benefits of multi-core systems.”


PERC Ultra SMP is available now for early adopter delivery, says Aonix. General availability is expected in December. PERC Ultra SMP is initially available only for commercial Linux real-time operating systems (RTOSes), such as Concurrent's RedHawk, but support for other RTOSes is planned, says the company. PERC development tools are available free with a maintenance contract, which starts at $25,000, based on projected volume.

This article was originally published on and has been donated to the open source community by QuinStreet Inc. Please visit for up-to-date news and articles about Linux and open source.

Comments are closed.