MCPcopy Create free account
hub / github.com/AMReX-Codes/amrex / SendRecvList

Method SendRecvList

Src/Extern/ProfParser/AMReX_CommProfStats.cpp:1139–1174  ·  view source on GitHub ↗

----------------------------------------------------------------------

Source from the content-addressed store, hash-verified

1137
1138// ----------------------------------------------------------------------
1139void CommProfStats::SendRecvList(std::multimap<Real, SendRecvPairUnpaired> &srMMap)
1140{
1141 BL_PROFILE("SendRecvList");
1142
1143 for(int idb(0); idb < dataBlocks.size(); ++idb) { // ---- go through dataBlocks
1144 DataBlock &dBlock = dataBlocks[idb];
1145 int proc(dBlock.proc);
1146
1147 ReadCommStats(dBlock);
1148
1149 for(int i(0); i < dBlock.vCommStats.size(); ++i) { // ---- find sends and recvs
1150 BLProfiler::CommStats &cs = dBlock.vCommStats[i];
1151 if(IsSend(cs.cfType)) {
1152 if(cs.size != BLProfiler::AfterCall()) {
1153 if(InTimeRange(proc, cs.timeStamp)) {
1154 srMMap.insert(std::pair<Real, SendRecvPairUnpaired>(cs.timeStamp,
1155 SendRecvPairUnpaired(cs.cfType, proc, cs.commpid,
1156 cs.size, cs.tag, cs.timeStamp,
1157 -1000.0, 0.0)));
1158 }
1159 }
1160 }
1161 if(IsRecv(cs.cfType)) {
1162 if(cs.size != BLProfiler::AfterCall()) {
1163 if(InTimeRange(proc, cs.timeStamp)) {
1164 srMMap.insert(std::pair<Real, SendRecvPairUnpaired>(cs.timeStamp,
1165 SendRecvPairUnpaired(cs.cfType, cs.commpid, proc,
1166 cs.size, cs.tag, -2000.0,
1167 cs.timeStamp, 0.0)));
1168 }
1169 }
1170 }
1171 }
1172 ClearCommStats(dBlock);
1173 }
1174}
1175
1176
1177// ----------------------------------------------------------------------

Callers 1

RunSendRecvListMethod · 0.80

Calls 3

sizeMethod · 0.45
insertMethod · 0.45

Tested by

no test coverage detected