Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Elsa Gonsiorowski
codes
Commits
119d41d4
Commit
119d41d4
authored
Apr 23, 2014
by
Jonathan Jenkins
Browse files
process > INT_MAX messages in modelnet
parent
959d6b26
Changes
10
Hide whitespace changes
Inline
Side-by-side
codes/dragonfly.h
View file @
119d41d4
...
...
@@ -65,7 +65,7 @@ static tw_lpid dragonfly_find_local_device(tw_lp *sender);
/* dragonfly packet event method called by modelnet, this method triggers the packet
* generate event of dragonfly and attached remote and local events to the last packet
* of the message */
static
tw_stime
dragonfly_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
int
self_event_size
,
const
void
*
self_event
,
tw_lp
*
sender
,
int
is_last_pckt
);
static
tw_stime
dragonfly_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
int
self_event_size
,
const
void
*
self_event
,
tw_lp
*
sender
,
int
is_last_pckt
);
/* returns dragonfly message size */
static
int
dragonfly_get_msg_sz
(
void
);
...
...
@@ -193,7 +193,7 @@ struct terminal_message
int
intm_group_id
;
short
chunk_id
;
int
packet_size
;
u
int
64_t
packet_size
;
int
remote_event_size_bytes
;
int
local_event_size_bytes
;
};
...
...
@@ -216,7 +216,7 @@ int minimal_count, nonmin_count;
int
adaptive_threshold
;
int
head_delay
;
int
num_packets
;
int
num_chunks
;
u
int
64_t
num_chunks
;
static
tw_stime
dragonfly_total_time
=
0
;
static
tw_stime
dragonfly_max_latency
=
0
;
...
...
codes/model-net-method.h
View file @
119d41d4
...
...
@@ -12,12 +12,12 @@
struct
model_net_method
{
char
*
method_name
;
/* example: "dragonfly" */
int
packet_size
;
/* packet size */
u
int
64_t
packet_size
;
/* packet size */
void
(
*
mn_setup
)(
const
void
*
net_params
);
/* For initializing the network */
tw_stime
(
*
model_net_method_packet_event
)(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
/* 0 means don't deliver remote event */
const
void
*
remote_event
,
...
...
codes/model-net.h
View file @
119d41d4
...
...
@@ -11,6 +11,7 @@
#include "codes/lp-type-lookup.h"
#include "codes/configuration.h"
#include "codes/lp-io.h"
#include <stdint.h>
#define MAX_NAME_LENGTH 256
#define CATEGORY_NAME_MAX 16
...
...
@@ -119,7 +120,7 @@ struct torus_param
int
model_net_set_params
();
// setup the modelnet parameters
int
model_net_setup
(
char
*
net_name
,
int
packet_size
,
const
void
*
net_params
);
int
model_net_setup
(
char
*
net_name
,
u
int
64_t
packet_size
,
const
void
*
net_params
);
/* allocate and transmit a new event that will pass through model_net to
* arrive at its destination:
*
...
...
@@ -152,7 +153,7 @@ void model_net_event(
int
net_id
,
char
*
category
,
tw_lpid
final_dest_lp
,
int
message_size
,
u
int
64_t
message_size
,
int
remote_event_size
,
const
void
*
remote_event
,
int
self_event_size
,
...
...
@@ -178,12 +179,12 @@ tw_lpid model_net_find_local_device(int net_id, tw_lp *sender);
void
model_net_event_rc
(
int
net_id
,
tw_lp
*
sender
,
int
message_size
);
u
int
64_t
message_size
);
/* returns pointer to LP information for simplenet module */
const
tw_lptype
*
model_net_get_lp_type
(
int
net_id
);
int
model_net_get_packet_size
(
int
net_id
);
u
int
64_t
model_net_get_packet_size
(
int
net_id
);
void
model_net_add_lp_type
(
int
net_id
);
...
...
codes/torus.h
View file @
119d41d4
...
...
@@ -62,7 +62,7 @@ typedef struct nodes_message nodes_message;
static
tw_stime
torus_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
...
...
@@ -166,7 +166,7 @@ struct nodes_message
/* next torus hop that the packet will traverse */
int
next_stop
;
/* size of the torus packet */
int
packet_size
;
u
int
64_t
packet_size
;
/* chunk id of the flit (distinguishes flits) */
short
chunk_id
;
...
...
@@ -190,7 +190,7 @@ static long long N_finished_packets = 0;
static
long
long
total_hops
=
0
;
/* number of chunks/flits in each torus packet, calculated through the size of each flit (32 bytes by default) */
int
num_chunks
;
u
int
64_t
num_chunks
;
#endif
...
...
src/models/networks/model-net/dragonfly.c
View file @
119d41d4
...
...
@@ -56,7 +56,7 @@ static void dragonfly_report_stats()
return
;
}
/* dragonfly packet event , generates a dragonfly packet on the compute node */
static
tw_stime
dragonfly_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
int
self_event_size
,
const
void
*
self_event
,
tw_lp
*
sender
,
int
is_last_pckt
)
static
tw_stime
dragonfly_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
int
self_event_size
,
const
void
*
self_event
,
tw_lp
*
sender
,
int
is_last_pckt
)
{
tw_event
*
e_new
;
tw_stime
xfer_to_nic_time
;
...
...
src/models/networks/model-net/loggp.c
View file @
119d41d4
...
...
@@ -44,7 +44,7 @@ struct loggp_message
enum
loggp_event_type
event_type
;
tw_lpid
src_gid
;
/* who transmitted this msg? */
tw_lpid
final_dest_gid
;
/* who is eventually targetted with this msg? */
int
net_msg_size_bytes
;
/* size of modeled network message */
u
int
64_t
net_msg_size_bytes
;
/* size of modeled network message */
int
event_size_bytes
;
/* size of simulator event message that will be tunnelled to destination */
int
local_event_size_bytes
;
/* size of simulator event message that delivered locally upon local completion */
char
category
[
CATEGORY_NAME_MAX
];
/* category for communication */
...
...
@@ -59,7 +59,7 @@ struct loggp_message
/* loggp parameters for a given msg size, as reported by netgauge */
struct
param_table_entry
{
int
size
;
u
int
64_t
size
;
int
n
;
double
PRTT_10s
;
double
PRTT_n0s
;
...
...
@@ -108,7 +108,7 @@ static void loggp_setup(const void* net_params);
static
tw_stime
loggp_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
...
...
@@ -124,7 +124,7 @@ static void loggp_report_stats();
static
tw_lpid
loggp_find_local_device
(
tw_lp
*
sender
);
static
struct
param_table_entry
*
find_params
(
int
msg_size
);
static
struct
param_table_entry
*
find_params
(
u
int
64_t
msg_size
);
/* data structure for model-net statistics */
struct
model_net_method
loggp_method
=
...
...
@@ -484,7 +484,7 @@ static void handle_msg_start_event(
static
tw_stime
loggp_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
...
...
@@ -565,7 +565,7 @@ static void loggp_setup(const void* net_params)
line_nr
++
;
if
(
buffer
[
0
]
==
'#'
)
continue
;
ret
=
sscanf
(
buffer
,
"%
d
%d %lf %lf %lf %lf %lf %lf %lf %lf %lf"
,
ret
=
sscanf
(
buffer
,
"%
llu
%d %lf %lf %lf %lf %lf %lf %lf %lf %lf"
,
&
param_table
[
param_table_size
].
size
,
&
param_table
[
param_table_size
].
n
,
&
param_table
[
param_table_size
].
PRTT_10s
,
...
...
@@ -601,7 +601,7 @@ static void loggp_packet_event_rc(tw_lp *sender)
/* find the parameters corresponding to the message size we are transmitting
*/
static
struct
param_table_entry
*
find_params
(
int
msg_size
)
static
struct
param_table_entry
*
find_params
(
u
int
64_t
msg_size
)
{
int
i
;
...
...
src/models/networks/model-net/model-net.c
View file @
119d41d4
...
...
@@ -29,7 +29,7 @@ tw_stime mn_msg_offset = 0.0;
static
int
model_net_get_msg_sz
(
int
net_id
);
int
model_net_setup
(
char
*
name
,
int
packet_size
,
u
int
64_t
packet_size
,
const
void
*
net_params
)
{
int
i
;
...
...
@@ -134,7 +134,7 @@ void model_net_event(
int
net_id
,
char
*
category
,
tw_lpid
final_dest_lp
,
int
message_size
,
u
int
64_t
message_size
,
int
remote_event_size
,
const
void
*
remote_event
,
int
self_event_size
,
...
...
@@ -142,9 +142,9 @@ void model_net_event(
tw_lp
*
sender
)
{
/* determine packet size for underlying method */
int
packet_size
=
model_net_get_packet_size
(
net_id
);
int
num_packets
=
message_size
/
packet_size
;
/* Number of packets to be issued by the API */
int
i
;
u
int
64_t
packet_size
=
model_net_get_packet_size
(
net_id
);
u
int
64_t
num_packets
=
message_size
/
packet_size
;
/* Number of packets to be issued by the API */
u
int
64_t
i
;
int
last
=
0
;
//printf("\n number of packets %d message size %d ", num_packets, message_size);
...
...
@@ -200,18 +200,20 @@ void model_net_event(
int
model_net_set_params
()
{
char
mn_name
[
MAX_NAME_LENGTH
];
int
packet_size
=
0
;
long
int
packet_size_l
=
0
;
uint64_t
packet_size
;
int
net_id
=-
1
;
config_lpgroups_t
paramconf
;
configuration_get_lpgroups
(
&
config
,
"PARAMS"
,
&
paramconf
);
configuration_get_value
(
&
config
,
"PARAMS"
,
"modelnet"
,
mn_name
,
MAX_NAME_LENGTH
);
configuration_get_value_int
(
&
config
,
"PARAMS"
,
"packet_size"
,
&
packet_size
);
configuration_get_value_longint
(
&
config
,
"PARAMS"
,
"packet_size"
,
&
packet_size_l
);
packet_size
=
packet_size_l
;
if
(
!
packet_size
)
{
packet_size
=
512
;
printf
(
"
\n
Warning, no packet size specified, setting packet size to %
d
"
,
packet_size
);
printf
(
"
\n
Warning, no packet size specified, setting packet size to %
llu
"
,
packet_size
);
}
if
(
strcmp
(
"simplenet"
,
mn_name
)
==
0
)
{
...
...
@@ -394,14 +396,14 @@ int model_net_set_params()
void
model_net_event_rc
(
int
net_id
,
tw_lp
*
sender
,
int
message_size
)
u
int
64_t
message_size
)
{
/* this will be used for reverse computation of anything calculated
* within th model_net_event() function call itself (not reverse
* handling for the underlying methods, which will have their own events
* and reverse handlers
*/
int
packet_size
=
model_net_get_packet_size
(
net_id
);
u
int
64_t
packet_size
=
model_net_get_packet_size
(
net_id
);
int
num_packets
=
message_size
/
packet_size
;
/* For rolling back */
int
i
;
...
...
@@ -431,7 +433,7 @@ static int model_net_get_msg_sz(int net_id)
}
/* returns the packet size in the modelnet struct */
int
model_net_get_packet_size
(
int
net_id
)
u
int
64_t
model_net_get_packet_size
(
int
net_id
)
{
if
(
net_id
<
0
||
net_id
>=
MAX_NETS
)
{
...
...
src/models/networks/model-net/simplenet-upd.c
View file @
119d41d4
...
...
@@ -44,7 +44,7 @@ struct sn_message
enum
sn_event_type
event_type
;
tw_lpid
src_gid
;
/* who transmitted this msg? */
tw_lpid
final_dest_gid
;
/* who is eventually targetted with this msg? */
int
net_msg_size_bytes
;
/* size of modeled network message */
u
int
64_t
net_msg_size_bytes
;
/* size of modeled network message */
int
event_size_bytes
;
/* size of simulator event message that will be tunnelled to destination */
int
local_event_size_bytes
;
/* size of simulator event message that delivered locally upon local completion */
char
category
[
CATEGORY_NAME_MAX
];
/* category for communication */
...
...
@@ -101,7 +101,7 @@ static void sn_setup(const void* net_params);
static
tw_stime
simplenet_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
...
...
@@ -156,7 +156,7 @@ tw_lptype sn_lp = {
sizeof
(
sn_state
),
};
static
tw_stime
rate_to_ns
(
u
nsigned
in
t
bytes
,
double
MB_p_s
);
static
tw_stime
rate_to_ns
(
u
int64_
t
bytes
,
double
MB_p_s
);
static
void
handle_msg_ready_rev_event
(
sn_state
*
ns
,
tw_bf
*
b
,
...
...
@@ -287,7 +287,7 @@ int sn_get_magic()
}
/* convert MiB/s and bytes to ns */
static
tw_stime
rate_to_ns
(
u
nsigned
in
t
bytes
,
double
MB_p_s
)
static
tw_stime
rate_to_ns
(
u
int64_
t
bytes
,
double
MB_p_s
)
{
tw_stime
time
;
...
...
@@ -480,7 +480,7 @@ static void handle_msg_start_event(
static
tw_stime
simplenet_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
...
...
src/models/networks/model-net/simplewan.c
View file @
119d41d4
...
...
@@ -69,7 +69,7 @@ struct sw_message
/* relative ID of the sending simplewan message (for latency/bandwidth lookup) */
int
src_mn_rel_id
;
int
dest_mn_rel_id
;
/* included to make rc easier */
int
net_msg_size_bytes
;
/* size of modeled network message */
u
int
64_t
net_msg_size_bytes
;
/* size of modeled network message */
int
event_size_bytes
;
/* size of simulator event message that will be tunnelled to destination */
int
local_event_size_bytes
;
/* size of simulator event message that delivered locally upon local completion */
char
category
[
CATEGORY_NAME_MAX
];
/* category for communication */
...
...
@@ -142,7 +142,7 @@ static void sw_setup(const void* net_params);
static
tw_stime
simplewan_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
...
...
@@ -197,7 +197,7 @@ tw_lptype sw_lp = {
sizeof
(
sw_state
),
};
static
tw_stime
rate_to_ns
(
u
nsigned
in
t
bytes
,
double
MB_p_s
);
static
tw_stime
rate_to_ns
(
u
int64_
t
bytes
,
double
MB_p_s
);
static
void
handle_msg_ready_rev_event
(
sw_state
*
ns
,
tw_bf
*
b
,
...
...
@@ -451,7 +451,7 @@ int sw_get_magic()
}
/* convert MiB/s and bytes to ns */
static
tw_stime
rate_to_ns
(
u
nsigned
in
t
bytes
,
double
MB_p_s
)
static
tw_stime
rate_to_ns
(
u
int64_
t
bytes
,
double
MB_p_s
)
{
tw_stime
time
;
...
...
@@ -742,7 +742,7 @@ static void handle_msg_start_event(
static
tw_stime
simplewan_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
...
...
src/models/networks/model-net/torus.c
View file @
119d41d4
...
...
@@ -38,7 +38,7 @@ static void torus_packet_event_rc(tw_lp *sender)
}
/* torus packet event , generates a torus packet on the compute node */
static
tw_stime
torus_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
int
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
int
self_event_size
,
const
void
*
self_event
,
tw_lp
*
sender
,
int
is_last_pckt
)
static
tw_stime
torus_packet_event
(
char
*
category
,
tw_lpid
final_dest_lp
,
u
int
64_t
packet_size
,
tw_stime
offset
,
int
remote_event_size
,
const
void
*
remote_event
,
int
self_event_size
,
const
void
*
self_event
,
tw_lp
*
sender
,
int
is_last_pckt
)
{
tw_event
*
e_new
;
tw_stime
xfer_to_nic_time
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment