A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
MC: move the reversible_race logic to the Transition class
[simgrid.git]
/
src
/
mc
/
explo
/
CommunicationDeterminismChecker.cpp
diff --git
a/src/mc/explo/CommunicationDeterminismChecker.cpp
b/src/mc/explo/CommunicationDeterminismChecker.cpp
index
a340c2c
..
639b28c
100644
(file)
--- a/
src/mc/explo/CommunicationDeterminismChecker.cpp
+++ b/
src/mc/explo/CommunicationDeterminismChecker.cpp
@@
-14,6
+14,7
@@
#include "xbt/string.hpp"
#include <cstdint>
#include "xbt/string.hpp"
#include <cstdint>
+#include <inttypes.h>
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_comm_determinism, mc, "Logging specific to MC communication determinism detection");
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_comm_determinism, mc, "Logging specific to MC communication determinism detection");
@@
-100,7
+101,7
@@
public:
std::vector<unsigned> communication_indices_;
static simgrid::xbt::Extension<simgrid::mc::State, StateCommDet> EXTENSION_ID;
std::vector<unsigned> communication_indices_;
static simgrid::xbt::Extension<simgrid::mc::State, StateCommDet> EXTENSION_ID;
- explicit StateCommDet(CommDetExtension& checker, RemoteApp const& remote_app)
+ explicit StateCommDet(CommDetExtension
const
& checker, RemoteApp const& remote_app)
{
const unsigned long maxpid = remote_app.get_maxpid();
for (unsigned long i = 0; i < maxpid; i++) {
{
const unsigned long maxpid = remote_app.get_maxpid();
for (unsigned long i = 0; i < maxpid; i++) {
@@
-235,7
+236,7
@@
void CommDetExtension::get_comm_pattern(const Transition* transition)
pattern->index = initial_pattern.index_comm + incomplete_pattern.size();
if (transition->type_ == Transition::Type::COMM_ASYNC_SEND) {
pattern->index = initial_pattern.index_comm + incomplete_pattern.size();
if (transition->type_ == Transition::Type::COMM_ASYNC_SEND) {
- auto* send = static_cast<const CommSendTransition*>(transition);
+
const
auto* send = static_cast<const CommSendTransition*>(transition);
pattern->type = PatternCommunicationType::send;
pattern->comm_addr = send->get_comm();
pattern->type = PatternCommunicationType::send;
pattern->comm_addr = send->get_comm();
@@
-244,7
+245,7
@@
void CommDetExtension::get_comm_pattern(const Transition* transition)
// FIXME: Detached sends should be enforced when the receive is waited
} else if (transition->type_ == Transition::Type::COMM_ASYNC_RECV) {
// FIXME: Detached sends should be enforced when the receive is waited
} else if (transition->type_ == Transition::Type::COMM_ASYNC_RECV) {
- auto* recv = static_cast<const CommRecvTransition*>(transition);
+
const
auto* recv = static_cast<const CommRecvTransition*>(transition);
pattern->type = PatternCommunicationType::receive;
pattern->comm_addr = recv->get_comm();
pattern->type = PatternCommunicationType::receive;
pattern->comm_addr = recv->get_comm();
@@
-327,8
+328,8
@@
Exploration* create_communication_determinism_checker(const std::vector<char*>&
XBT_DEBUG("********* Start communication determinism verification *********");
XBT_DEBUG("********* Start communication determinism verification *********");
- auto
base = new DFSExplorer(args, mode, tru
e);
- auto extension = new CommDetExtension(*base);
+ auto
* base = new DFSExplorer(args, mod
e);
+ auto
*
extension = new CommDetExtension(*base);
DFSExplorer::on_exploration_start([extension](RemoteApp const&) {
XBT_INFO("Check communication determinism");
DFSExplorer::on_exploration_start([extension](RemoteApp const&) {
XBT_INFO("Check communication determinism");