Ateji PX for Java - Benefits

Development Time

Using library-based techniques, parallel programs are hard to develop and maintain, and almost impossible to test and debug. With more than a handful of threads, you'll soon find yourself spending months debugging an application. Multi-threaded applications require a thorough manual inspection of the whole application code in order to guarantee the correct behaviour of programs.

By offering parallelism at the language  level, Ateji® PX makes parallel programming simple and intuitive. The parallelism model is compositional, meaning that testing and debugging can be done incrementally.

Adoption Time

Because parallelism at the language level is simple and intuitive, it can be mastered in less than a day. Ateji PX is compatible with your favorite programming language, IDE and development tools. It requires no change in the development process, and developers do not need to go back to school.

Parallelizing legacy code

Using Ateji PX, legacy code does not need to be rewritten, translated or instrumented. Parallelizing legacy code usually amounts to adding a few || and checking compiler messages.

Code quality

There is no point writing a parallel program for performance, if the program crashes or starts to behave in an unintended way. Unfortunately this is what happens most of the time.

Ateji PX is designed upon a sound theoretical model, and the compiler helps making sure that parallelism does not introduce additional bugs.

Code Performance

Ateji PX makes the best use of available hardware, independently of the number of cores, and adds little or no overhead compared to current library approach.

Because parallel programs are considerably faster to write and easier to understand, developers can concentrate their time and talent on algorithm design and fine performance tuning. This is why given a fixed development time, programs developed with Ateji PX tend to be more performant at run time.

With Ateji PX, parallelizing an application can be as simple as inserting a || operator in the source code. The whitepaper Matrix Multiplication with Ateji PX illustrates this process on a standard example, achieving a 12.5x speedup on a 16-core server:

 

Parallel Matrix Multiplication

 

SEO by AceSEF

Customer Quotes

 

We just completed an evaluation of Ateji's product, and it does everything it promises… this is a very smart idea

Martin Curley,
European Research Director,
Intel

 

Ateji PX allows quicker and easier Java parallel programming without several of the pain-points of multithreading coming in the way

Dr. Gourab Nath,
Sr. Research Scientist,

Amadeus

 

Ateji PX is a dream for Java™ developers, enabling all kinds of applications to take better advantage of NVIDIA’s multicore processors.

Stephen Jones,
Product Line Manager,
Developer Tools NVIDIA
NVIDIA

 

Thank you for this brilliant piece of engineering

Ala Shiban,
Haifa University,
Cancer Research Group
Haifa