Design

Aonix Begins Implementation of Java Multiprocessor Virtual Machine

9th June 2008
ES Admin
0
Responding to market demand in defense and telecommunications sectors, Aonix has launched into the development of PERC Ultra SMP, a symmetric multiprocessing Java virtual machine. Boasting the strengths of Java-scalability, portability and easy maintainability-PERC Ultra SMP will include unique garbage collection capabilities to ensure that it can meet the demands of multiprocessor real-time applications. 
Aonix has announced the beginning of implementation efforts to add symmetric multiprocessing (SMP) capability to its flagship product PERC Ultra. Dubbed PERC Ultra SMP, the product will address the added complexities inherent in design, development, and deployment of SMP-targeted applications where the benefits of scalability, portability, and maintainability of Java applications can be fully realized.
Driven by the pressure to deliver system upgrades with higher throughput and functionality, developers in military and telecommunications sectors—where PERC Ultra SMP will see early adoption—expect multiprocessors to provide a solution. Notably, since the Java language was initially designed for a multithreaded programming environment, Java code does not have to be rewritten to take advantage of SMP benefits.

However, to fully exploit the predictable capabilities of PERC Ultra’s patented garbage collection, changes are being made to enable it to efficiently run on multiple processors concurrently. As with PERC Ultra, PERC Ultra SMP garbage collection will be:

• preemptible by higher priority threads
• incremental so that when garbage collection is preempted and resumed, it will resume with the next increment of work rather than restarting itself
• accurate, meaning it guarantees to reclaim all dead memory
• defragmenting through relocation of live objects in order to coalesce discontiguous free segments
• paced so that the memory pool is replenished at a pace consistent with the application’s appetite for new memory allocation

PERC Ultra SMP will fully exploit the capacity of multiple processors to reduce the interference of garbage collection on application threads. As a highly parallel process, the garbage collector will use idle processors to carry out the garbage collection, working in tandem so that one processor can scan stack memory in search of pointers to live objects while another processor relocates previously identified live objects.

With PERC Ultra SMP, all Java threads access the same shared objects. Because of this, objects are free to relocate themselves within memory and threads are able to migrate between processors. To handle this generality, Aonix has developed a special patent-pending synchronization technique that ensures that an application thread on one processor does not attempt to access an object while another process is relocating the desired object as part of the garbage collection process. This performance-optimized solution hinges on the generation of specialized code sequences by the PERC Ultra SMP JIT compiler and on an enhanced real-time garbage collection algorithm.
“We’ve been carefully watching for an escalation of demand for SMP in deeply embedded systems,” noted Gary Cato, Aonix director of marketing. “Customer demand has expedited Aonix’s SMP development plans. With increased market adoption, we are taking our plans to develop SMP functionality in PERC off the drawing board to meet an earlier-than-expected update requirement. The embedded real-time industry is beginning to exploit the performance benefits offered by SMP architectures, and we look forward to meeting that need.”
About the PERC Family
PERC Ultra is a virtual machine and toolset expressly created for demanding embedded and real-time systems requiring J2SE™ support. PERC Ultra delivers the ease and efficiency of Java™ Standard Edition support without sacrificing integrity, performance, or real-time behavior. The currently available version, PERC Ultra 5.1 offers Ahead-of-Time (AOT) and Just-in-Time (JIT) compilation, remote debug support, deterministic garbage collection, standard graphics and extended commercial RTOS support.
PERC Pico, the first development environment geared toward the creation of resource constrained and deeply embedded hard real-time applications and components, is based on the emerging Java Specification Request (JSR-302) for development of hard real-time safety-critical code. PERC Pico allows Java developers to write low-level Java code such as device drivers and interrupt handlers, telecommunications control plane, and signal processing for multimedia. It offers a memory footprint measured in hundreds of kilobytes in comparison to the tens of megabytes required for other Java solutions as well as boasting performance, latency, and determinism comparable to C.
Shipping and Availability
PERC Ultra SMP is scheduled for early adopter delivery in Q3 2008 with general product release expected in Q4 2008. PERC Ultra SMP will initially be available for commercial Linux RTOSs and subsequently released for traditional proprietary RTOSs. PERC development tools are available at no charge in combination with a maintenance contract. Target execution and deployment license pricing starts at $25K based on projected volume. PERC Ultra is also available with special bundling discounts when licensed together with PERC Pico.

Featured products

Product Spotlight

Upcoming Events

View all events
Newsletter
Latest global electronics news
© Copyright 2024 Electronic Specifier