XcalableMP is a directive-based language extension which allows users to
develop parallel programs for distributed memory systems easily and to tune the performance by having minimal and simple notations.
The specification is being designed by XcalableMP Specification
Working Group which consists of members from academia and research
labs to industries in Japan.
If you have any comments and requests, please contact to
Prof. Mitsuhisa Sato(msato at cs.tsukuba.ac.jp).
Your comments and contributions will be appreciated !!
The features of XcalableMP are summarized as follows:
XcalableMP is being designed based on the experiences of HPF,
Fujitsu XPF (VPP Fortran) and OpenMPD.
- XcalableMP supports typical parallelization based on the data
parallel paradigm and work mapping under "global view programming
model", and enables parallelizing the original sequential code using
minimal modification with simple directives, like OpenMP. Many
ideas on "global-view" programming are inherited from HPF (High
- The important design principle of XcalableMP
is "performance-awareness". All actions of communication and
synchronization are taken by directives, different from automatic
parallelizing compilers. The user should be aware of what happens by
XcalableMP directives in the execution model on the distributed
- XcalableMP also includes a CAF-like PGAS (Partitioned Global
Address Space) feature as "local-view" programming.
- Extention of existing base languages with directives is useful to reduce
rewriting and educational costs.
XcalableMP APIs are defined on C and Fortran 95 as a base language.
- For flexibility and extensibility, the execution model allows to
combine with explicit MPI coding for more complicated and tuned
parallel codes and libraries.
- For multi-core and SMP clusters, OpenMP directives can be combined
into XcalableMP for thread programming inside each node as a hybrid
programming model.(Under discussion)
2013.11.20: Specification of XcalableMP, version 1.2 is released
2013.11.01: 1st XcalableMP Workshop (in Japanese)
2013.02.15: 3rd XcalableMP Challenge (in Japanese)
2013.02.15: XcalableMP Challenge Page is open (in Japanese)
2012.11.13: Specification of XcalableMP, version 1.1 is released
Specification of XcalableMP, version 1.0
2nd XcalableMP Programming Contest (in Japanese)
XcalableMP Manual Page is OPEN! (in English)
XcalableMP Manual Page is OPEN! (in Japanese)
XcalableMP was selected as a finalist of HPCC Class2 in SC10 BOF!
XcalableMP was selected as a finalist of HPCC Class2 in SC09 BOF!
XcalableMP Specification Working Group
Objectives and Mission
- Making a draft on "petascale" parallel language for "standard" parallel programming
- To propose the draft to "world-wide" community as "standard"
- Academia: M. Sato, T. Boku (compiler and system, U. Tsukuba),
K. Nakajima (app. and programming, U. Tokyo), T. Nanri (system, Kyusyu U.), Y. Okabe (HPF, Kyoto U.)
- Research Lab.: M. Yokokawa (RIKEN), H. Sakagami (app. and HPF,
NIFS), H. Murai(HPF, AICS), Y. Matsuo (app.,JAXA), K. Uehara (app., JAMSTEC/ES)
- Industries: H. Iwashita and K. Hotta (HPF and XPFortran,
Fujitsu), S. Sakon (HPF, NEC), Anzaki and Negishi
This research is carried out as a part of "Seamless and Highly-productive Parallel Programming Environment for High-performance computing" project funded by Ministry of Education, Culture, Sports, Science and Technology, JAPAN.
Center for Computational Sciences, University of Tsukuba, are
organizing the XcalableMP project in the T2K e-science activities.