The profiling wrapper generator (wrappergen) has been designed to complement the MPI profiling interface. It allows the user to write any number of `meta' wrappers which can be applied to any number of MPI functions. Wrappers can be in separate files, and can nest properly, so that more than one layer of profiling may exist on indiividual functions.
Wrappergen needs three sources of input:
If no function declarations are provided, the ones in mpi_proto are used (this is set with the PROTO_FILE definition in the Makefile).
The options to wrappergen are:
cd mpe/profiling/lib ../wrappergen/wrappergen -p ../wrappergen/mpiio_proto \ -w time_wrappers.w > time_io.cThe resulting code need only a version of MPI_Finalize to output the time values. That can be written either by adding MPI_Finalize and MPI_Init to mpiio_proto or through a fairly simple edit of the version produced when using mpi_proto instead of mpiio_proto.