mpiSynqNetAnalyze

Declaration

MPI_DECL1 MPIResult MPIDECL2
       mpiSynqNetAnalyze(const MPISynqNetDiagnosticsInfo  * sqDiag,
                         const MPISynqnetDiagnosticsInfo  * prevSqDiag,
                         MPISynqNetAnalysisResult         * result);

 

Required Header: stdmpi.h
Change History: Added in 04.00.

Description

mpiSynqNetAnalyze analyzes  sqDiag data  and returns diagString with analysis result in the form of strings.  diagString is a pointer to character array of size 1k bytes.

prevSqDiag can be NULL or the pointer to MPISynqnetDiagnosticsInfo structure. If NULL is passed, mpiSynqNetAnalyze(…) would analyze only the sqDiag data. If valid prevSqDiag  data is passed then the difference between sqDiag and prevSqDiag is analyzed. diagString does not have the repetitive information for every call made to mpiSynqNetAnalyze(…). diagString can be used for logging or warning/error dialogs.

sqDiag A pointer to the SynqNet diagnostic data.
prevSqDiag Previous Synqnet diagnostic data.
result Analysis result generated from the current diagnostic data.

Sample Code

/* Following function demonstrates the using mpiSynqNetAnalyze(). Following logger
function reads the diagnostic data using mpiSynqNetDiagnostics(…), and  diagnostic data
is passed to mpiSynqnetAnalyze() for analysis. The analysis result is logged into the file. 
*/

int32_t logNetworkDiagnostics( MPISynqNet synqnet, FILE * logFile)
{
    MPISynqNetDiagnostics curDiag;         /* Holds the current diag data */
    Static MPISynqNetDiagnostics prevDiag; /* holds previous diag data */
    MPISynqNetAnalysisResult result;       /* holds the analysis result string */
returnValue= mpiSynqNetDiagnostics(synqnet, &curDiag);
returnValue= mpiSynqnetAnalyze(&curDiag,&prevDiag,&result);
prevDiag=curDiag; /* preserve the current Diag data */
fprintf(logfile, “%s \n”, result.diagstring); /* logs the analysis result */
return returnValue; }