| ||
Charisma++ is a prototype language for describing global view of control in a parallel program. It is designed to solve the problem of obscured control flow in the object-based model with Charm++. Charisma++ employs a macro dataflow approach for productive parallel programming. The programmer write a script-like orchestration program containing statements producing and consuming values, from which the control flows will be organized, and messages and method invocations will be generated. This idea is similar to the hybrid dataflow architecture model. Our object-level macro dataflow mechanism takes advantage of Charm++'s message-driven execution model and enables dynamic resource management such as automatic load balancing. A Charisma++ program consists of two parts: the orchestration code (in .or file) that describes the global view of control, and the sequential code (in .h and .C files) that specifies the local behavior of individual objects. By separating parallel code from sequential code, the programmer can focus better on the local actions on the objects, such as physics computation. Active research is being done on the research of clear and efficient expression of global control and the Charisma++ language support. Please refer to our 2004 paper and presentation on Charisma++ for detailed description. | ||
| Software | ||
| Charisma++ is currently under development and will be available for download as part of the Charm++ distribution package. | ||
| People | ||
| Papers | ||
| ||
|