Motohiko Matsuda

TRC Massively Parallel Performance Laboratory

IWPC++ (International Workshop on Parallel C++) was held at Japan Advanced Institute of Science and Technology (JAIST) in Kanazawa on March 11 to 12. The workshop was organized by RWCP in cooperation with Japan Society for Software Science and Technology. This workshop followed the "Mini-Workshop on Advanced Computing in C++" held on September 26-27, 1995 and attracted many researchers from overseas.

Although I had been told that Kanazawa in early March was still cold and maybe snowing, it turned out to be warm and we had only a little snowfall. Despite the concern of meeting in such a heavy-snowfall area, it was quite comfortable participating in this workshop.

Because this week (8-15) of JAIST featured "object orientation," there were meetings on object orientation such as ISOTAS (International Symposium on Object Technologies for Advanced Software), IWPC++, WOOC (Workshop on Object-Oriented Computing), and WINGS (Workshop on Design and Integration of New Generation Software Systems).

The parallelization of the C++ language is anticipated, like that of FORTRAN in scientific computations and is now being considered, taking advantage of its object-oriented functions and flexibility.

The main themes of IPC++ in regard to parallel C++ include: - Parallel language extension - Compiler/run-time technology - Class and template library - Parallel application - Parallel programming environment

Presentation at IWPC++

There were 17 presentations from America, Europe, and Japan and 1 panel discussion in this IWPC++.

The presentations covered applications, parallel computing libraries, parallel C++ languages and performance evaluations with celebrities in parallel C++ gathering in one place.

Languages

Many presentations were made on languages such as Charm++, EC++, Compositional C++, Illinois Concert C++, MPC++, and OpenC++.

The presentation on Charm++ revealed their experiences gained in changing specifications over the past few years. EC++ is a framework to standardize the parallel C++ environment. The presentation on EC++ showed its outline. The presentation on Compositional C++ introduced the programming style and discussed its run-time system. The presentation on Illinois Concert C++ reported on system performance evaluation.

The presentation on MPC++, which enables users to introduce a new syntax and code generation method into the language, discussed the implementation of parallel syntax such as global pointers and parallel data objects. Other presentations dealt with an optimizing compiler to reorganize and convert parallel syntax and the pros and cons of implementing threads and synchronization models.

Panel discussion(chair:Dr. Ishikawa of RWCP,at the center)

Libraries

There are presentations on libraries including LPARK/KeLP, A++/P++, and ABC++.

LPARK/KeLP library is for representing data arrangements in an abstract way for problems such as molecular dynamics. A++/P++ is an array class library for representing loop structures and indices concisely.

ABC++ library provides multiple paradigms, and an overview of these was presented. There was also a report on the recent progress in parallelization of the Standard Template Library (STL).

Applications

Concerning applications, experiences in plasma particle simulations in C++ were reported.

The necessity of studies on the merits of parallel object orientation for modeling physical objects was mentioned.

Panel Discussion

A panel discussion was held under the title "Is Parallel STL A Golden Road to O-O Parallel Programming?". Panelists discussed whether STL, a standard for sequential libraries, would also be useful in parallel computation.

It was useful for researchers on applications, languages, and libraries to gather in one place. Since I was new to the parallel C++ language, it was most stimulating for me to participate in these workshops.