LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: John Wohlbier (jdmux_at_[hidden])
Date: 2004-08-05 12:08:25


Hi,

I am trying to develop an MPI application with a GUI
using wxWidgets (http://wxWidgets.org). The approach
that I guessed would work was to have the master process
handle the GUI, and menu events would broadcast to
to the slave processes.

The attached code (main.cpp) is what I came up with for starters.
What I intend the code to do is to initialize the MPI
environment, and then exit each process, where
the MPI::Finalize() for the master process is handled
in the File->Exit function of the GUI window (see frame.cpp).
What actually happens is that the window is opened and
none of the other processes DO ANYTHING until the window
is closed, i.e., MPI::Finalize() is executed for the master
process. After MPI::Finalize() is called from the master,
all of the slaves exit as expected. If I include the
MPI::Finalize() outside of the window (i.e., uncomment the
call that is commented out in main.cpp),
all of the processes run. However, this isn't an acceptable
solution because eventually the window's menu events need
to be sent to the slave processes.

Does anyone have a general recommendation for what I am
doing wrong, or what I should be doing?

Thanks!
jgw

p.s. I am actually using MPICH, but I couldn't find an
MPICH mailing list! I hope this is OK since the question
seems to be a general MPI question, and not implementation
dependent.