#include "private.h"
#include "xbt/virtu.h"
#include "mc/mc.h"
+#include "mc/mc_replay.h"
#include "xbt/replay.h"
#include <errno.h>
#include "simix/smx_private.h"
else
request->refcount = 0;
request->op = MPI_REPLACE;
-#ifdef HAVE_TRACING
request->send = 0;
request->recv = 0;
-#endif
if (flags & SEND) smpi_datatype_unuse(datatype);
return request;
int receiver = request->dst;
- #ifdef HAVE_TRACING
- int rank = request->src;
- if (TRACE_smpi_view_internals()) {
- TRACE_smpi_send(rank, rank, receiver,request->size);
- }
- #endif
+ int rank = request->src;
+ if (TRACE_smpi_view_internals()) {
+ TRACE_smpi_send(rank, rank, receiver,request->size);
+ }
print_request("New send", request);
//if we are giving back the control to the user without waiting for completion, we have to inject timings
oldbuf = request->buf;
if (!smpi_process_get_replaying() && oldbuf && request->size!=0){
if((smpi_privatize_global_variables)
- && ((char*)request->buf >= start_data_exe)
- && ((char*)request->buf < start_data_exe + size_data_exe )){
+ && ((char*) request->buf >= smpi_start_data_exe)
+ && ((char*)request->buf < smpi_start_data_exe + smpi_size_data_exe )){
XBT_DEBUG("Privatization : We are sending from a zone inside global memory. Switch data segment ");
- smpi_switch_data_segment(request->src);
- }
+ smpi_switch_data_segment(request->src);
+ }
buf = xbt_malloc(request->size);
memcpy(buf,oldbuf,request->size);
XBT_DEBUG("buf %p copied into %p",oldbuf,buf);
-#ifdef HAVE_TRACING
/* FIXME: detached sends are not traceable (request->action == NULL) */
if (request->action)
- simcall_set_category(request->action, TRACE_internal_smpi_get_category());
+ simcall_set_category(request->action, TRACE_internal_smpi_get_category());
-#endif
xbt_mutex_release(mut);
}
if((req->flags & ACCUMULATE) || (datatype->has_subtype == 1)){
if (!smpi_process_get_replaying()){
if( smpi_privatize_global_variables
- && ((char*)req->old_buf >= start_data_exe)
- && ((char*)req->old_buf < start_data_exe + size_data_exe )
+ && ((char*)req->old_buf >= smpi_start_data_exe)
+ && ((char*)req->old_buf < smpi_start_data_exe + smpi_size_data_exe )
){
XBT_VERB("Privatization : We are unserializing to a zone in global memory - Switch data segment ");
smpi_switch_data_segment(smpi_process_index());
}
-#ifdef HAVE_TRACING
if (TRACE_smpi_view_internals()) {
if(req->flags & RECV){
int rank = smpi_process_index();
TRACE_smpi_recv(rank, src_traced, rank);
}
}
-#endif
if(req->detached_sender!=NULL){
smpi_mpi_request_free(&(req->detached_sender));