From 3467f1c6cf1bb4c0627e242fe89f83bfdc3f850a Mon Sep 17 00:00:00 2001 From: John Jenkins Date: Mon, 10 Aug 2015 08:26:40 -0500 Subject: [PATCH] propagate modelnet source lp through loggp --- codes/model-net-method.h | 1 + src/models/networks/model-net/loggp.c | 3 +++ src/models/networks/model-net/model-net-sched-impl.c | 8 +++++--- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/codes/model-net-method.h b/codes/model-net-method.h index e265eef..cae8ad6 100644 --- a/codes/model-net-method.h +++ b/codes/model-net-method.h @@ -51,6 +51,7 @@ struct model_net_method tw_stime (*model_net_method_recv_msg_event)( const char * category, tw_lpid final_dest_lp, + tw_lpid src_mn_lp, // the modelnet LP this message came from uint64_t msg_size, int is_pull, uint64_t pull_size, diff --git a/src/models/networks/model-net/loggp.c b/src/models/networks/model-net/loggp.c index 2e09066..5a387d9 100644 --- a/src/models/networks/model-net/loggp.c +++ b/src/models/networks/model-net/loggp.c @@ -130,6 +130,7 @@ static void loggp_packet_event_rc(tw_lp *sender); tw_stime loggp_recv_msg_event( const char * category, tw_lpid final_dest_lp, + tw_lpid src_mn_lp, uint64_t msg_size, int is_pull, uint64_t pull_size, @@ -675,6 +676,7 @@ static tw_stime loggp_packet_event( tw_stime loggp_recv_msg_event( const char * category, tw_lpid final_dest_lp, + tw_lpid src_mn_lp, uint64_t msg_size, int is_pull, uint64_t pull_size, @@ -695,6 +697,7 @@ tw_stime loggp_recv_msg_event( m->magic = loggp_magic; m->event_type = LG_MSG_READY; m->src_gid = src_lp; + m->src_mn_lp = src_mn_lp; m->final_dest_gid = final_dest_lp; m->net_msg_size_bytes = msg_size; m->event_size_bytes = remote_event_size; diff --git a/src/models/networks/model-net/model-net-sched-impl.c b/src/models/networks/model-net/model-net-sched-impl.c index dcca1b2..0939759 100644 --- a/src/models/networks/model-net/model-net-sched-impl.c +++ b/src/models/networks/model-net/model-net-sched-impl.c @@ -253,10 +253,12 @@ int fcfs_next( "from %lu to %lu at %1.5e (last:%d)\n", lp->gid, psize, q->rem, q->req.src_lp, q->req.final_dest_lp, tw_now(lp), is_last_packet); + // note: we overloaded on the dest_mn_lp field - it's the dest of the + // soruce in the case of a pull *poffset = s->method->model_net_method_recv_msg_event(q->req.category, - q->req.final_dest_lp, psize, q->req.is_pull, q->req.msg_size, - 0.0, q->req.remote_event_size, q->remote_event, q->req.src_lp, - lp); + q->req.final_dest_lp, q->req.dest_mn_lp, psize, + q->req.is_pull, q->req.msg_size, 0.0, q->req.remote_event_size, + q->remote_event, q->req.src_lp, lp); } else{ dprintf("%lu (mn): issuing packet of size %lu (of %lu) " -- 2.26.2