Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
codes
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
38
Issues
38
List
Boards
Labels
Milestones
Merge Requests
8
Merge Requests
8
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
codes
codes
Commits
51acfe14
Commit
51acfe14
authored
Feb 27, 2015
by
Misbah Mubarak
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Updating network trace code to use the combined workload API
parent
e2ded66e
Changes
2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
122 additions
and
121 deletions
+122
-121
src/models/mpi-trace-replay/model-net-dumpi-traces-dump.c
src/models/mpi-trace-replay/model-net-dumpi-traces-dump.c
+44
-43
src/models/mpi-trace-replay/model-net-mpi-wrklds.c
src/models/mpi-trace-replay/model-net-mpi-wrklds.c
+78
-78
No files found.
src/models/mpi-trace-replay/model-net-dumpi-traces-dump.c
View file @
51acfe14
...
...
@@ -6,7 +6,7 @@
#include <ross.h>
#include <inttypes.h>
#include "codes/codes-
nw-
workload.h"
#include "codes/codes-workload.h"
#include "codes/codes.h"
#include "codes/configuration.h"
#include "codes/codes_mapping.h"
...
...
@@ -95,7 +95,7 @@ struct nw_state
struct
nw_message
{
int
msg_type
;
struct
mpi_event_list
op
;
struct
codes_workload_op
op
;
};
/* initialize queues, get next operation */
...
...
@@ -163,7 +163,7 @@ void nw_test_init(nw_state* s, tw_lp* lp)
//printf("\n network LP not generating events %d ", (int)s->nw_id);
return
;
}
wrkld_id
=
codes_
nw_
workload_load
(
"dumpi-trace-workload"
,
params
,
(
int
)
s
->
nw_id
);
wrkld_id
=
codes_workload_load
(
"dumpi-trace-workload"
,
params
,
(
int
)
s
->
nw_id
);
/* clock starts ticking */
s
->
elapsed_time
=
tw_now
(
lp
);
...
...
@@ -188,15 +188,15 @@ void nw_test_event_handler(nw_state* s, tw_bf * bf, nw_message * m, tw_lp * lp)
void
nw_test_event_handler_rc
(
nw_state
*
s
,
tw_bf
*
bf
,
nw_message
*
m
,
tw_lp
*
lp
)
{
codes_
nw_
workload_get_next_rc
(
wrkld_id
,
(
int
)
s
->
nw_id
,
&
m
->
op
);
if
(
m
->
op
.
op_type
==
CODES_
NW
_END
)
codes_workload_get_next_rc
(
wrkld_id
,
(
int
)
s
->
nw_id
,
&
m
->
op
);
if
(
m
->
op
.
op_type
==
CODES_
WK
_END
)
return
;
s
->
total_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
switch
(
m
->
op
.
op_type
)
{
case
CODES_
NW
_SEND
:
case
CODES_
NW
_ISEND
:
case
CODES_
WK
_SEND
:
case
CODES_
WK
_ISEND
:
{
s
->
num_sends
--
;
s
->
send_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
...
...
@@ -204,8 +204,8 @@ void nw_test_event_handler_rc(nw_state* s, tw_bf * bf, nw_message * m, tw_lp * l
};
break
;
case
CODES_
NW
_RECV
:
case
CODES_
NW
_IRECV
:
case
CODES_
WK
_RECV
:
case
CODES_
WK
_IRECV
:
{
s
->
num_recvs
--
;
s
->
recv_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
...
...
@@ -213,49 +213,49 @@ void nw_test_event_handler_rc(nw_state* s, tw_bf * bf, nw_message * m, tw_lp * l
}
break
;
case
CODES_
NW
_DELAY
:
case
CODES_
WK
_DELAY
:
{
s
->
num_delays
--
;
s
->
compute_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
}
break
;
case
CODES_
NW
_BCAST
:
case
CODES_
NW
_ALLGATHER
:
case
CODES_
NW
_ALLGATHERV
:
case
CODES_
NW
_ALLTOALL
:
case
CODES_
NW
_ALLTOALLV
:
case
CODES_
NW
_REDUCE
:
case
CODES_
NW
_ALLREDUCE
:
case
CODES_
NW
_COL
:
case
CODES_
WK
_BCAST
:
case
CODES_
WK
_ALLGATHER
:
case
CODES_
WK
_ALLGATHERV
:
case
CODES_
WK
_ALLTOALL
:
case
CODES_
WK
_ALLTOALLV
:
case
CODES_
WK
_REDUCE
:
case
CODES_
WK
_ALLREDUCE
:
case
CODES_
WK
_COL
:
{
s
->
num_cols
--
;
s
->
col_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
}
break
;
case
CODES_
NW
_WAIT
:
case
CODES_
WK
_WAIT
:
{
s
->
num_wait
--
;
s
->
wait_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
}
break
;
case
CODES_
NW
_WAITALL
:
case
CODES_
WK
_WAITALL
:
{
s
->
num_waitall
--
;
s
->
wait_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
}
break
;
case
CODES_
NW
_WAITSOME
:
case
CODES_
WK
_WAITSOME
:
{
s
->
num_waitsome
--
;
s
->
wait_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
}
break
;
case
CODES_
NW
_WAITANY
:
case
CODES_
WK
_WAITANY
:
{
s
->
num_waitany
--
;
s
->
wait_time
-=
(
m
->
op
.
end_time
-
m
->
op
.
start_time
);
...
...
@@ -273,12 +273,13 @@ void nw_test_event_handler_rc(nw_state* s, tw_bf * bf, nw_message * m, tw_lp * l
static
void
get_next_mpi_operation
(
nw_state
*
s
,
tw_bf
*
bf
,
nw_message
*
m
,
tw_lp
*
lp
)
{
mpi_event_list
mpi_op
;
codes_
nw_
workload_get_next
(
wrkld_id
,
(
int
)
s
->
nw_id
,
&
mpi_op
);
memcpy
(
&
m
->
op
,
&
mpi_op
,
sizeof
(
struct
mpi_event_list
));
struct
codes_workload_op
mpi_op
;
codes_workload_get_next
(
wrkld_id
,
(
int
)
s
->
nw_id
,
&
mpi_op
);
memcpy
(
&
m
->
op
,
&
mpi_op
,
sizeof
(
struct
codes_workload_op
));
if
(
mpi_op
.
op_type
==
CODES_
NW
_END
)
if
(
mpi_op
.
op_type
==
CODES_
WK
_END
)
{
//printf("\n workload ending!!! ");
return
;
}
...
...
@@ -286,8 +287,8 @@ static void get_next_mpi_operation(nw_state* s, tw_bf * bf, nw_message * m, tw_l
switch
(
mpi_op
.
op_type
)
{
case
CODES_
NW
_SEND
:
case
CODES_
NW
_ISEND
:
case
CODES_
WK
_SEND
:
case
CODES_
WK
_ISEND
:
{
s
->
num_sends
++
;
s
->
send_time
+=
(
mpi_op
.
end_time
-
mpi_op
.
start_time
);
...
...
@@ -295,8 +296,8 @@ static void get_next_mpi_operation(nw_state* s, tw_bf * bf, nw_message * m, tw_l
}
break
;
case
CODES_
NW
_RECV
:
case
CODES_
NW
_IRECV
:
case
CODES_
WK
_RECV
:
case
CODES_
WK
_IRECV
:
{
s
->
num_recvs
++
;
s
->
recv_time
+=
(
mpi_op
.
end_time
-
mpi_op
.
start_time
);
...
...
@@ -304,46 +305,46 @@ static void get_next_mpi_operation(nw_state* s, tw_bf * bf, nw_message * m, tw_l
}
break
;
case
CODES_
NW
_DELAY
:
case
CODES_
WK
_DELAY
:
{
s
->
num_delays
++
;
s
->
compute_time
+=
(
mpi_op
.
end_time
-
mpi_op
.
start_time
);
}
break
;
case
CODES_
NW
_BCAST
:
case
CODES_
NW
_ALLGATHER
:
case
CODES_
NW
_ALLGATHERV
:
case
CODES_
NW
_ALLTOALL
:
case
CODES_
NW
_ALLTOALLV
:
case
CODES_
NW
_REDUCE
:
case
CODES_
NW
_ALLREDUCE
:
case
CODES_
NW
_COL
:
case
CODES_
WK
_BCAST
:
case
CODES_
WK
_ALLGATHER
:
case
CODES_
WK
_ALLGATHERV
:
case
CODES_
WK
_ALLTOALL
:
case
CODES_
WK
_ALLTOALLV
:
case
CODES_
WK
_REDUCE
:
case
CODES_
WK
_ALLREDUCE
:
case
CODES_
WK
_COL
:
{
s
->
num_cols
++
;
s
->
col_time
+=
(
mpi_op
.
end_time
-
mpi_op
.
start_time
);
}
break
;
case
CODES_
NW
_WAIT
:
case
CODES_
WK
_WAIT
:
{
s
->
num_wait
++
;
s
->
wait_time
+=
(
mpi_op
.
end_time
-
mpi_op
.
start_time
);
}
break
;
case
CODES_
NW
_WAITALL
:
case
CODES_
WK
_WAITALL
:
{
s
->
num_waitall
++
;
s
->
wait_time
+=
(
mpi_op
.
end_time
-
mpi_op
.
start_time
);
}
break
;
case
CODES_
NW
_WAITSOME
:
case
CODES_
WK
_WAITSOME
:
{
s
->
num_waitsome
++
;
s
->
wait_time
+=
(
mpi_op
.
end_time
-
mpi_op
.
start_time
);
}
break
;
case
CODES_
NW
_WAITANY
:
case
CODES_
WK
_WAITANY
:
{
s
->
num_waitany
++
;
s
->
wait_time
+=
(
mpi_op
.
end_time
-
mpi_op
.
start_time
);
...
...
src/models/mpi-trace-replay/model-net-mpi-wrklds.c
View file @
51acfe14
This diff is collapsed.
Click to expand it.
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