[Japanese] [Home] [Manual] [Link]

What's XcalableMP

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 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 Performance Fortran).
  • 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 memory architecture.
  • 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)
XcalableMP is being designed based on the experiences of HPF, Fujitsu XPF (VPP Fortran) and OpenMPD.

What's new

  • 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)
  • [Read More]
  • 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!
  • [Hide]

    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"

    Members

    • 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 (Hitachi)

    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.