3 Building and Running a Charisma Program

There are two steps to build a Charisma program: generating Charm++ program from orchestration code, and building the Charm++ program.

1) Charisma compiler, currently named orchc, is used to compile the orchestration code (.or file) and integrate sequential code to generate a Charm++ program. The resultant Charm++ program usually consists of the following code files: Charm++ Interface file ([modulename].ci), header file ([modulename].h) and C++ source code file ([modulename].C). The command for this step is as follows.

{foodecl}
    > orchc [modulename].or

2) Charm++ compiler, charmc, is used to parse the Charm++ Interface (.ci) file, compile C/C++ code, and link and build the executable. The typical commands are:

{foodecl}
    > charmc [modulename].ci
    > charmc [modulename].C -c
    > charmc [modulename].o -o pgm -language charm++

Running the Charisma program is the same as running a Charm++ program, using Charm++'s job launcher charmrun. (On some platforms like CSE's Turing Cluster, use the customized job launcher rjq or rj.)

{foodecl}
    > charmrun pgm +p4

Please refer to Charm++'s manual and tutorial for more details of building and running a Charm++ program.

June 29, 2008
Charisma Homepage
Charm Homepage