From 0df1f8b77feadf04f5e30aeeccdd16806353f330 Mon Sep 17 00:00:00 2001 From: Christian Heinrich Date: Fri, 13 Apr 2018 10:13:46 +0200 Subject: [PATCH] [SMPI] Replay: Move WaitAllAction to the RequestStore --- src/smpi/internals/smpi_replay.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/smpi/internals/smpi_replay.cpp b/src/smpi/internals/smpi_replay.cpp index 69082b3c11..4aa0d5c530 100644 --- a/src/smpi/internals/smpi_replay.cpp +++ b/src/smpi/internals/smpi_replay.cpp @@ -719,18 +719,20 @@ public: WaitAllAction(RequestStorage& storage) : ReplayAction("waitAll", storage) {} void kernel(simgrid::xbt::ReplayAction& action) override { - const unsigned int count_requests = get_reqq_self()->size(); + const unsigned int count_requests = req_storage->size(); if (count_requests > 0) { TRACE_smpi_comm_in(my_proc_id, __func__, new simgrid::instr::Pt2PtTIData("waitAll", -1, count_requests, "")); std::vector> sender_receiver; - for (const auto& req : (*get_reqq_self())) { + std::vector reqs; + req_storage->get_requests(reqs); + for (const auto& req : reqs) { if (req && (req->flags() & RECV)) { sender_receiver.push_back({req->src(), req->dst()}); } } MPI_Status status[count_requests]; - Request::waitall(count_requests, &(*get_reqq_self())[0], status); + Request::waitall(count_requests, &(reqs.data())[0], status); for (auto& pair : sender_receiver) { TRACE_smpi_recv(pair.first, pair.second, 0); -- 2.20.1