IPerfMonSvc Node1 IPerfMonSvc - m_monState + ~IPerfMonSvc() + monState() + monStateName() + components() + components() + io_components() + component() + component() + io_component() + domain() and 14 more... + interfaceID() # setMonState() Node3 PerfMonSvc - m_pySvc - m_chrono - m_deltaVMemAlert - m_profiledAlgNames - m_ioContainerNames - m_outFileName - m_enableDblCountingCorrection - m_monLvl - m_shelveFileName - m_semiDetMonLvl and 19 more... + PerfMonSvc() + ~PerfMonSvc() + initialize() + finalize() + queryInterface() + io_reinit() + io_finalize() + components() + io_components() + component() and 17 more... + interfaceID() - PerfMonSvc() - setupProfiledAlgList() - setupIoContainerList() - poll() - comp_startAud() - comp_stopAud() - do_io_mon() - postFinalize() Node1->Node3 Node2 IMonitorSvc Node2->Node1