Message Queue Debugging

From Mpich
Revision as of 15:35, 20 August 2008 by Goodell (talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The capability to dump CH3 and nemesis-newtcp recv/send queues from a debugger was added in r1195. The functions used to do so are:

void MPIDI_CH3U_Dbg_print_recvq(FILE *stream)

This function dumps the state of the CH3 receive queues (both posted and unexpected) to the given stream. A common choice for the stream is stdout or stderr.

void MPID_nem_newtcp_module_vc_dbg_print_sendq(FILE *stream, MPIDI_VC_t *vc)

This function dumps the state of the nemesis-newtcp send queue for a particular VC (virtual connection).

You can call these functions from a debugger to aid in debugging various problems such as incorrect ordering of MPI_Send's and MPI_Recv's in collective algorithms or user code. These functions are not related to the proper debugger interface that allows you to examine the message queues from totalview and other debuggers.