Aonix intros Java Multiprocessor Virtual Machine

author-image
CIOL Bureau
Updated On
New Update

SAN DIEGO, USA: Aonix, the provider of the PERC product line for embedded and real-time Java developers, announced the beginning of implementation efforts to add symmetric multiprocessing (SMP) capability to its flagship product PERC Ultra.

Advertisment

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.

Advertisment

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.

Advertisment

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.”

tech-news