actually I am wondering whether my previous statement was correct. If you do not intercept the fortran MPI call, than it still goes to the C MPI call, which you can intercept. Only if you intercept the fortran MPI call we do not call the C MPI but the C PMPI call, correct? So in theory, it could still work...

Jeff Squyres wrote:
On Dec 5, 2008, at 12:22 PM, Edgar Gabriel wrote:

I hope you are aware, that *many* tools and application actually profile the fortran MPI layer by intercepting the C function calls. This allows them to not have to deal with f2c translation of MPI objects and not worry about the name mangling issue. Would there be a way to have both options e.g. as a configure flag? The current commit basically breaks all of these applications...

I was unaware of this, actually.

So it'd be pretty easy to have a configure switch for this (it would be a bunch more work for a run-time switch; I don't know if it's really worth it?). Should we default to the current behavior, and have the configure switch enable call stacks like this:

  MPI_Comm_rank_f
  PMPI_Comm_rank_f
  PMPI_Comm_rank

?


--
Edgar Gabriel
Assistant Professor
Parallel Software Technologies Lab      http://pstl.cs.uh.edu
Department of Computer Science          University of Houston
Philip G. Hoffman Hall, Room 524        Houston, TX-77204, USA
Tel: +1 (713) 743-3857                  Fax: +1 (713) 743-3335

Reply via email to