Commit a349938c authored by Misbah Mubarak's avatar Misbah Mubarak

Adding congestion control in dragonfly (mostly comes from uiuc_tracer)

parent a78fee52
......@@ -40,6 +40,9 @@ struct terminal_message
/* number of hops traversed by the packet */
short my_N_hop;
short my_l_hop, my_g_hop;
short saved_channel;
/* Intermediate LP ID from which this message is coming */
unsigned int intm_lp_id;
short new_vc;
......@@ -77,6 +80,7 @@ struct terminal_message
/* LP ID of the sending node, has to be a network node in the dragonfly */
tw_lpid sender_node;
tw_lpid next_stop;
/* for reverse computation */
struct pending_router_msgs * saved_elem;
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -915,7 +915,7 @@ static void packet_generate( nodes_state * s,
m_gen_data_src = (char*)m_gen_data_src + msg->remote_event_size_bytes;
}
if (msg->local_event_size_bytes)
memcpy(m_gen_data, m_gen_data_src, msg->local_event_size_bytes);
memcpy(m_gen_data, m_gen_data_src, msg->local_event_size_bytes);
tw_event_send(e_gen);
}
......
......@@ -16,14 +16,13 @@ PARAMS
modelnet_scheduler="fcfs";
chunk_size="32";
# modelnet_scheduler="round-robin";
num_vcs="1";
num_routers="4";
local_vc_size="2048";
global_vc_size="8192";
cn_vc_size="512";
cn_vc_size="1024";
local_bandwidth="5.25";
global_bandwidth="4.7";
cn_bandwidth="5.25";
message_size="312";
message_size="320";
routing="minimal";
}
......@@ -24,8 +24,8 @@
#include "codes/configuration.h"
#include "codes/lp-type-lookup.h"
#define NUM_REQS 1 /* number of requests sent by each server */
#define PAYLOAD_SZ 2048 /* size of simulated data payload, bytes */
#define NUM_REQS 5 /* number of requests sent by each server */
#define PAYLOAD_SZ 4096 /* size of simulated data payload, bytes */
static int net_id = 0;
static int num_routers = 0;
......@@ -455,7 +455,7 @@ static void handle_ack_event(
memcpy(m_remote, m_local, sizeof(svr_msg));
m_remote->svr_event_type = (do_pull) ? ACK : REQ;
// printf("handle_ack_event(), lp %llu.\n", (unsigned long long)lp->gid);
printf("handle_ack_event(), lp %llu.\n", (unsigned long long)lp->gid);
/* safety check that this request got to the right server */
// printf("\n m->src %d lp->gid %d ", m->src, lp->gid);
......@@ -514,7 +514,7 @@ static void handle_req_event(
memcpy(m_remote, m_local, sizeof(svr_msg));
m_remote->svr_event_type = ACK;
//printf("handle_req_event(), lp %llu src %llu .\n", (unsigned long long)lp->gid, (unsigned long long) m->src);
printf("handle_req_event(), lp %llu src %llu .\n", (unsigned long long)lp->gid, (unsigned long long) m->src);
/* safety check that this request got to the right server */
// printf("\n m->src %d lp->gid %d ", m->src, lp->gid);
......
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