Seamless and Highly-Productive Parallel Programming Environment

Supercomputers and computational simulations are now key elements of the infrastructure in science and technology. Today, the fastest supercomputer offers 1 petaflops of peak performance. Installations of 10 petaflop supercomputers are scheduled for around 2012. It is expected that an exaflop machine will be released by 2018.

In contrast to continuing advances in machine performance, the use of such machines has not yet become widespread because parallel programming skills and knowledge of computer architecture are required to use a supercomputer effectively.

The T2K Open Supercomputer Alliance has been addressing this issue since 2008. The alliance has a project working toward the development of a seamless and highly-productive parallel programming environment. The goal is to achieve a new, portable, efficient, and convenient parallel programming environment for various machines, from small- to large-scale PC clusters up to the next generation of peta-scale supercomputer. This is a four-year research and development project funded by the Ministry of Education, Culture, Sports, Science and Technology, JAPAN.

The following four work packages are under development

XcalableMP

A highly productive parallel programming language that assists application developers to describe a portable and scalable parallel program

Xcrypt

A highly productive parallel script language that enables easy description of workflow processes for a large-scale parameter sweep

Xabclib

An auto-tuning numerical library that frees application developers from tiresome machine dependent tuning

Xruntime

A portable, single-runtime environment that makes execution code portable to free users from consideration of the differences between cluster environments. It consists of two types of file staging systems, a scalable file I/O library, a file I/O tracer, and a portable MPI library adapter.

These packages are integrated into the SCore cluster system software distributed by the PC cluster consortium. At SC09, a prototype version of Xabclib and Xruntime will be distributed with SCore. Other packages will be distributed by the first quarter of 2010.