Commit 6cbfff60 authored by Misbah Mubarak's avatar Misbah Mubarak

Updates to torus network model (a) adding bubble flow control (b) credit based flow control updated

parent b1f0e3cc
......@@ -33,7 +33,11 @@ struct nodes_message
/* message saved collective time */
tw_stime saved_collective_init_time;
/* for saving recv and total times*/
tw_stime saved_recv_time;
tw_stime saved_total_time;
/* packet ID */
unsigned long long packet_ID;
/* event type of the message */
......
......@@ -25,5 +25,5 @@ PARAMS
global_bandwidth="4.7";
cn_bandwidth="5.25";
message_size="552";
routing="minimal";
routing="adaptive";
}
......@@ -10,7 +10,7 @@ LPGROUPS
PARAMS
{
packet_size="512";
message_size="488";
message_size="552";
modelnet_order=( "torus" );
# scheduler options
modelnet_scheduler="fcfs";
......
......@@ -25,5 +25,5 @@ PARAMS
global_bandwidth="4.7";
cn_bandwidth="5.25";
message_size="512";
routing="minimal";
routing="nonminimal";
}
......@@ -163,8 +163,8 @@ static void handle_kickoff_rev_event(
if(m->incremented_flag)
return;
ns->msg_sent_count--;
model_net_event_rc(net_id, lp, PAYLOAD_SZ);
ns->msg_sent_count--;
tw_rand_reverse_unif(lp->rng);
}
static void handle_kickoff_event(
......@@ -222,8 +222,6 @@ static void handle_kickoff_event(
ns->msg_sent_count++;
model_net_event(net_id, "test", global_dest, PAYLOAD_SZ, 0.0, sizeof(svr_msg), (const void*)m_remote, sizeof(svr_msg), (const void*)m_local, lp);
ns->msg_sent_count++;
issue_event(ns, lp);
return;
}
......
......@@ -316,7 +316,7 @@ static int dragonfly_hash_func(void *k, int table_size)
struct dfly_hash_key *tmp = (struct dfly_hash_key *)k;
uint32_t pc = 0, pb = 0;
bj_hashlittle2(tmp, sizeof(*tmp), &pc, &pb);
return (int)(pc % (table_size - 1));
return (int)(pc % (uint32_t)(table_size - 1));
}
/* convert GiB/s and bytes to ns */
......@@ -1316,7 +1316,9 @@ void packet_arrive_rc(terminal_state * s, tw_bf * bf, terminal_message * msg, tw
if(bf->c7)
{
assert(!hash_link);
if(hash_link)
printf("\n Num chunks %d ", tmp->num_chunks);
//assert(!hash_link);
s->finished_msgs--;
total_msg_sz -= msg->total_size;
N_finished_msgs--;
......@@ -1405,12 +1407,6 @@ void packet_arrive(terminal_state * s, tw_bf * bf, terminal_message * msg,
int num_chunks = msg->packet_size / s->params->chunk_size;
int total_chunks = msg->total_size / s->params->chunk_size;
if(msg->chunk_id == num_chunks - 1)
{
bf->c31 = 1;
s->packet_fin++;
packet_fin++;
}
if(msg->total_size % s->params->chunk_size)
total_chunks++;
......@@ -1429,6 +1425,12 @@ void packet_arrive(terminal_state * s, tw_bf * bf, terminal_message * msg,
if(msg->path_type == NON_MINIMAL)
nonmin_count++;
if(msg->chunk_id == num_chunks - 1)
{
bf->c31 = 1;
s->packet_fin++;
packet_fin++;
}
if(msg->path_type != MINIMAL && msg->path_type != NON_MINIMAL)
printf("\n Wrong message path type %d ", msg->path_type);
......
This diff is collapsed.
......@@ -18,7 +18,7 @@ PARAMS
n_dims="4";
dim_length="4,2,2,2";
link_bandwidth="2.0";
buffer_size="16384";
buffer_size="4096";
num_vc="1";
chunk_size="32";
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment