Re: charmrun vs. miprun and nature of parallelism

From: Gengbin Zheng (
Date: Fri Mar 19 2004 - 02:10:26 CST

This is a good question, and I am afraid I don't have all the answers.
There are basically two big class of versions in Charm++, one is called
net version, such as net-linux which uses sockets like UDP or TCP for the
communication between processors; the other is called mpi version, such as
mpi-linux which uses MPI (message passing interface) for communication

net versions use charmrun, charmrun uses rsh/ssh to start parallel
jobs on all processors (a nodelist file listing all compute nodes is
often needed).

For mpi versions, charm++ uses mpirun to start parallel jobs. a similar
machinefile listing all the compute nodes is needed). There are
quite a few mpi implementations out there, the most famous ones are MPICH
and LAM/MPI (I prefer MPICH). One advantage of using MPI in Charm++ is
that almost all parallel machines provide MPI (since it is a standard), so
Charm++ can be easily ported to all these machines.

As the performance goes, I don't have a website with the
comparson of performance numbers, maybe we should make one.
but generally speaking, net version is slightly faster than mpi version
since MPI pays its overhead of being a universal standard.
For a small cluster, you may want to try net versions. It may be hard to
scale beyond a few hundred processors. rsh and ssh also have their own
limitations in starting parallel jobs (limited number of ports).
MPI however is well integreted with job schduling system and should be
easier to manage a big cluster and run on very large parallel machines.
People may have his own opinions on this though.

However, you don't really have to make any decision ;-). You can
simply install both versions (since it is free :) and compare yourself on
your cluster.


On Thu, 18 Mar 2004, Stern, Julie wrote:

> Hello,
> When I started working with namd I had to decide between
> charmrun vs. mpirun. I understand that mpirun corresponds
> to the mpi version. So, what is used to create the parallelism
> in the charmrun version and where can I find out more about the
> type of parallelism and scalability and benchmarks, etc..? Also,
> from what I gathered, people have written their own mpi version
> (I was talking to people using LINUX systems, so maybe they
> were specially writing it for that system.). Does anyone have
> info on the mpi versions and where to get them? And has anyone
> done any performance evaluation between the charmrun version and
> the miprun version? I'm using a linux cluster.
> Thanks for any info or pointers to info.
> Sincerely,
> Julie Stern
> Biology Dept.
> Brookhaven

This archive was generated by hypermail 2.1.6 : Wed Feb 29 2012 - 15:37:27 CST