Parallel Computing in JAVA

a new tool for computing and data analytics

PCJ is Java library for parallel computing in Java. It is based on the PGAS (Partitioned Global Address Space) paradigm. It allows for easy implementation in Java of any parallel algorithm. PCJ application can be run on laptop, workstation, cluster and HPC system including large supercomputers. It has been demonstrated that PCJ applications scale up to 200 000 cores.
Recently we have run PCJ application on the coud (AWS EC2) using both x86 and arm processors. Therefore you can run PCJ on most popular architectures indluding Intel KNL, Power, ARM and of course x86.
Current version of the librarry is 5.3.0. Compare to 5.2 and 5.1 it has improved performance due to use of shifted tree communication. New methos has been added: PCJ.scatter(), PCJ.splitGroup(). New collective communication methods are avaliable: PCJ.collect(), PCJ.asyncCollect(),

Examples