Ateji PX
Ateji PX is an object-oriented programming language extension for Java. It is intended to facilliate parallel computing on multi-core processors, GPU, Grid and Cloud.
Ateji PX can be integrated with the Eclipse IDE, requires minimal learning of the additional parallel constructs and does not alter the development process.
Code examples
Hello World
Each ||
symbol introduces a parallel branch. Running this program will print either
or
depending on how the parallel branches happen to be scheduled.
Data parallelism
The quantification (int i : N)
creates one parallel branch for each value of i
. The effect of this code is to increment all elements of array
in parallel. This code is equivalent to
More complex quantifications are possible. The following example quantifies over the upper left triangle of a square matrix:
Code that performs a similar and typically small operation on a large collection of elements is called data parallel, and appears often in high-performance scientific applications. A typical representative of data-parallel languages for the C/C++ or Fortran ecosystems is OpenMP.