Opened 9 years ago

Closed 5 years ago

#673 closed feature (wontfix)

MSMPI code merge - trace macros

Reported by: jayesh Owned by: jayesh
Priority: major Milestone: future
Component: mpich Keywords:

Description (last modified by balaji)

To track integration of trace macros from the MSMPI code base,

# We can ignore the MS trace macro header files (*.tmh) for now. (A modification of windows configure script can add these trace macro header files)

# Expand the existing *FUNC_ENTER()/*FUNC_EXIT() macros to include tracing (The tracing would include funcname, value of input args to func, value of output args/intersting args),

#if defined(USE_MACROS_VA_ARGS)
        #define *FUNC_ENTER     /* func_using_va_args(char *funcname, ...){... MPIU_DBG_MSG() ...} */
        #define *FUNC_EXIT      /* func_using_va_args(char *funcname, ...){... MPIU_DBG_MSG() ...} */
        #define *FUNC_ENTER(FUNCNAME, ...) /* MPIU_DBG_MSG() */
        #define *FUNC_EXIT(FUNCNAME, ...) /* MPIU_DBG_MSG() */

# Introduce a new label for successful exit from a function, fn_success. This will help in adding trace macros for successful func exits.

        /* success */
        /* Add modified FUNC_EXIT macro with trace for success */
        goto fn_exit;
        /* common code for failure & success */
        /* error */
        /* Add modified FUNC_EXIT macro with trace for failure */
        goto fn_exit;

We need to continue discussion on whether we need to support compilers that don't support varargs.


Change History (7)

comment:1 Changed 9 years ago by goodell

It might be a good idea to collect knowledge of various compiler shortcomings somewhere. I've started a wiki page for this purpose and seeded it with a couple of random tidbits that I could think of off the top of my head. Any time that anyone runs across compiler deficiencies, please document them there (with version info) if you can remember to.

I'd really like to know which (if any) compilers that we care about still don't support varargs macros or don't support them correctly.


comment:2 Changed 9 years ago by balaji

  • Description modified (diff)

Can't we provide additional tracing information for compilers which provide VA_ARGS and basic tracing (like we currently do) for other compilers by ignoring the remaining arguments?

comment:3 Changed 9 years ago by jayesh

  • Milestone changed from mpich2-1.1.1 to mpich2-1.1.2

Yeah... I think we will take that approach for now (it doesn't hurt adding basic tracing for compilers that don't support VA_ARGS)

Moving this ticket to 1.1.2 - I am not sure whether I will be able to get to this ticket by 1.1.1 release.


comment:4 Changed 9 years ago by balaji

  • Milestone changed from mpich2-1.1.2 to mpich2-1.2

Milestone mpich2-1.1.2 deleted

comment:5 Changed 9 years ago by jayesh

  • Milestone changed from mpich2-1.2.1 to mpich2-1.3

comment:6 Changed 8 years ago by jayesh

  • Milestone changed from mpich2-1.3 to future

comment:7 Changed 5 years ago by balaji

  • Description modified (diff)
  • Resolution set to wontfix
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.