Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] complete newbie question regarding --enable-mpi-profile option
From: Eugene Loh (Eugene.Loh_at_[hidden])
Date: 2009-06-15 16:15:44

Leo P. wrote:
Thanks for the information.  And i had already clicked on the "Show All" button in the profiler before i send an email to the group.  But it did not work :(
Okay.  Hmm.  For me, when I try Analyzer, I don't see any of the internals of MPI.  Then, when I "Show All", all the internal OMPI layers are exposed:  PML, opal_progress, BTL, etc.
Also Eugene, can you please help me understand what does turning on -g option mean. Currently i am building the system with the following option

./configure --with-devel-headers --enable-trace --enable-mpi-profile --enable-mem-debug --enable-debug

Do i need to add something additional here ?
I don't know.  To turn on -g, I add it via environment variables.  E.g., to build OMPI with Sun Studio compilers, I use:

      setenv CC          cc
      setenv CXX         CC
      setenv F77         f77
      setenv FC          f90
      setenv CFLAGS      "-fast -xarch=native -g -m64"
      setenv CXXFLAGS    "-fast -xarch=native -g -m64"
      setenv FFLAGS      "-fast -xarch=native -g -m64"
      setenv FCFLAGS     "-fast -xarch=native -g -m64"

With GCC compilers, I use:

      setenv CFLAGS      "-O -g -m64"
      setenv CXXFLAGS    "-O -g -m64"
      setenv FFLAGS      "-O -g -m64"
      setenv FCFLAGS     "-O -g -m64"

I don't know if that's politically correct or whatever, but that's what I did.  Then:

    ./configure                         \
      --with-mpi-param_check=never      \
      --disable-mpi-cxx                 \
      --disable-mpi-cxx-seek            \
      --enable-mpirun-prefix-by-default \

  make all
  make install

That seems to work for me.  Doesn't matter if I build OMPI and my MPI code with GCC or with Sun Studio compilers.  I just use Sun Studio Performance Analyzer, turn on "Show All", and see where time is spent in the internal OMPI layers.
Also i don't understand what you mean by tool ecosystem.  [I am a complete newbie ]
That's a little unrelated.  It means the opinion that OMPI is just MPI, without a bunch of tools (debuggers, performance analysis, etc.), that go along with it.  It's not really fair since you can use TotalView debugging, VampirTrace, PERUSE, etc. with OMPI.  There's a subjective judgment about whether all those things are well integrated together or just add-ons.  E.g., with MPICH, they have MPE extensions, the Jumpshot tool, etc.  It's all understood to be one set of software.  (Yipes, I hope I don't start too controversial an e-mail storm here.  Again, it's not an entirely fair assessment of OMPI.  I guess I just mean there is no such thing as *THE* OMPI performance analysis tool.  OMPI is MPI, and you have to get a tool to work with it.)
BTW if you are sending Nik's phone number, i like to get yours also. Just in case Nik is not picking up his phone. :)
For now, you can just send Nik or me e-mail offline.  Indeed, maybe you, Nik, and I just take this offline.
Anyways if there is anything i can do to contribute please do let me know? I would love to a part of this great community.
Maybe some FAQ entries to help other users/developers benefit from your experience once you've learned something you'd like to report.