Commit 47bbd8b0 authored by Misbah Mubarak's avatar Misbah Mubarak

Adding AMG 1728 config file, minor updates to dragonfly model

parent 171ca1a0
......@@ -148,6 +148,7 @@ src_libcodes_a_SOURCES = \
src/network-workloads/model-net-mpi-wrklds.c \
src/network-workloads/model-net-mpi-replay.c \
src/network-workloads/model-net-synthetic.c \
src/network-workloads/read-dumpi-traces.c \
src/network-workloads/model-net-dumpi-traces-dump.c
......@@ -169,6 +170,7 @@ bin_PROGRAMS += src/network-workloads/model-net-mpi-replay
bin_PROGRAMS += src/network-workloads/model-net-mpi-wrklds
bin_PROGRAMS += src/network-workloads/model-net-dumpi-traces-dump
bin_PROGRAMS += src/network-workloads/model-net-synthetic
bin_PROGRAMS += src/network-workloads/read-dumpi-traces
src_workload_codes_workload_dump_SOURCES = \
......@@ -179,6 +181,7 @@ src_network_workloads_model_net_mpi_replay_SOURCES = src/network-workloads/model
src_network_workloads_model_net_mpi_wrklds_SOURCES = src/network-workloads/model-net-mpi-wrklds.c
src_network_workloads_model_net_synthetic_SOURCES = src/network-workloads/model-net-synthetic.c
src_network_workloads_model_net_dumpi_traces_dump_SOURCES = src/network-workloads/model-net-dumpi-traces-dump.c
src_network_workloads_read_dumpi_traces_SOURCES = src/network-workloads/read-dumpi-traces.c
#bin_PROGRAMS += src/network-workload/codes-nw-test
......
LPGROUPS
{
MODELNET_GRP
{
repetitions="510";
nw-lp="5";
modelnet_dragonfly="5";
modelnet_dragonfly_router="1";
}
}
PARAMS
{
packet_size="512";
modelnet_order=( "dragonfly", "dragonfly_router");
# scheduler options
modelnet_scheduler="fcfs";
chunk_size="256";
# modelnet_scheduler="round-robin";
num_routers="10";
local_vc_size="16384";
global_vc_size="32768";
cn_vc_size="16384";
local_bandwidth="5.25";
global_bandwidth="4.7";
cn_bandwidth="5.25";
message_size="560";
routing="minimal";
}
......@@ -1446,7 +1446,7 @@ int main( int argc, char** argv )
model_net_register();
net_ids = model_net_configure(&num_nets);
assert(num_nets == 1);
// assert(num_nets == 1);
net_id = *net_ids;
free(net_ids);
......
......@@ -365,14 +365,14 @@ static int dragonfly_rank_hash_compare(
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);
/*uint64_t key = (~tmp->message_id) + (tmp->message_id << 18);
//uint32_t pc = 0, pb = 0;
//bj_hashlittle2(tmp, sizeof(*tmp), &pc, &pb);
uint64_t key = (~tmp->message_id) + (tmp->message_id << 18);
key = key * 21;
key = ~key ^ (tmp->sender_id >> 4);
key = key * tmp->sender_id;
return (int)(key & (table_size - 1));*/
return (int)(pc % (table_size - 1));
return (int)(key & (table_size - 1));
//return (int)(pc % (table_size - 1));
}
/* convert GiB/s and bytes to ns */
......@@ -1366,7 +1366,7 @@ void packet_arrive_rc(terminal_state * s, tw_bf * bf, terminal_message * msg, tw
if(bf->c7)
{
assert(!hash_link);
//assert(!hash_link);
N_finished_msgs--;
s->finished_msgs--;
total_msg_sz -= msg->total_size;
......@@ -1386,14 +1386,14 @@ void packet_arrive_rc(terminal_state * s, tw_bf * bf, terminal_message * msg, tw
assert(tmp);
tmp->num_chunks--;
if(bf->c5)
/*if(bf->c5)
{
assert(hash_link);
qhash_del(hash_link);
free(tmp->remote_event_data);
free(tmp);
s->rank_tbl_pop--;
}
}*/
return;
}
void send_remote_event(terminal_state * s, terminal_message * msg, tw_lp * lp, tw_bf * bf, char * event_data, int remote_event_size)
......@@ -1450,15 +1450,15 @@ void packet_arrive(terminal_state * s, tw_bf * bf, terminal_message * msg,
if(!total_chunks)
total_chunks = 1;
if(tmp)
/*if(tmp)
{
if(tmp->num_chunks >= total_chunks || tmp->num_chunks == 0)
if(tmp->num_chunks >= total_chunks || tmp->num_chunks < 0)
{
tw_output(lp, "\n invalid number of chunks %d for LP %ld ", tmp->num_chunks, lp->gid);
//tw_output(lp, "\n invalid number of chunks %d for LP %ld ", tmp->num_chunks, lp->gid);
tw_lp_suspend(lp, 0, 0);
return;
}
}
}*/
assert(lp->gid == msg->dest_terminal_id);
if(msg->packet_ID == LLU(TRACK_PKT))
......@@ -1571,7 +1571,6 @@ void packet_arrive(terminal_state * s, tw_bf * bf, terminal_message * msg,
assert(tmp);
tmp->num_chunks++;
/* if its the last chunk of the packet then handle the remote event data */
if(msg->chunk_id == num_chunks - 1)
{
bf->c1 = 1;
......@@ -1581,6 +1580,7 @@ void packet_arrive(terminal_state * s, tw_bf * bf, terminal_message * msg,
N_finished_packets++;
s->finished_packets++;
}
/* if its the last chunk of the packet then handle the remote event data */
if(msg->remote_event_size_bytes > 0 && !tmp->remote_event_data)
{
/* Retreive the remote event entry */
......
......@@ -14,7 +14,7 @@ PARAMS
modelnet_order=( "dragonfly","dragonfly_router" );
# scheduler options
modelnet_scheduler="fcfs";
chunk_size="32";
chunk_size="256";
# modelnet_scheduler="round-robin";
num_routers="4";
local_vc_size="2048";
......
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