Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion doc/codes-vis-readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ on the ROSS webpage.

There are currently 4 types of instrumentation: GVT-based, real time sampling, virtual time sampling, and event tracing.
See the ROSS documentation for more info on the specific options or use `--help` with your model.
The binary layout of the model-stats output files (and a reference Python parser) is documented in
[model-stats-binary-format.md](model-stats-binary-format.md).
To collect data about the simulation engine, no changes are needed to model code for any of the instrumentation modes.
Some additions to the model code is needed in order to turn on any model-level data collection.
See the "Model-level data sampling" section on [ROSS Instrumentation blog post](http://ross-org.github.io/instrumentation/instrumentation.html).
Expand Down Expand Up @@ -109,7 +111,7 @@ st_model_types svr_model_types[] = {

static void svr_register_model_types()
{
st_model_type_register("ns-lp", &svr_model_types[0]);
st_model_type_register("nw-lp", &svr_model_types[0]);
}

int main(int argc, char **argv)
Expand All @@ -135,12 +137,18 @@ modes are collecting model-level data as well.
### CODES LPs that currently have event type collection implemented:
If you're using any of the following CODES models, you don't have to add anything, unless you want to change the data that's being collected.
- nw-lp (model-net-mpi-replay.c)
- ping pong tutorial server LP (doc/example/tutorial-synthetic-ping-pong.c) — also collects
model-level stats in all sampling modes; a good minimal example to copy from
- dfly server LP (model-net-synthetic.c)
- custom dfly server LP (model-net-synthetic-custom-dfly.c)
- fat tree server LP (model-net-synthetic-fattree.c)
- slimfly server LP (model-net-synthetic-slimfly.c)
- original dragonfly router and terminal LPs (dragonfly.c)
- dragonfly custom router and terminal LPs (dragonfly-custom.cxx)
- dragonfly dally router and terminal LPs (dragonfly-dally.cxx) — richest model-stats
payload (packet rates, routing-path mix, stalls, occupancy snapshots); layout in
[model-stats-binary-format.md](model-stats-binary-format.md)
- dragonfly plus router and terminal LPs (dragonfly-plus.cxx)
- slimfly router and terminal LPs (slimfly.c)
- fat tree switch and terminal LPs (fat-tree.c)
- model-net-base-lp (model-net-lp.c)
2 changes: 1 addition & 1 deletion doc/example/tutorial-ping-pong-surrogate.conf.in
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ PARAMS
# bandwidth in GiB/s for compute node-router channels
cn_bandwidth="2.0";
# ROSS message size
message_size="440";
message_size="456";
# number of compute nodes connected to router, dictated by dragonfly config
# file
num_cns_per_router="2";
Expand Down
2 changes: 1 addition & 1 deletion doc/example/tutorial-ping-pong-surrogate.yaml.in
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ topology:
# scheduler options (alternative: round-robin)
modelnet_scheduler: fcfs
# ROSS message size
message_size: 440
message_size: 456
# folder path to store packet latency from terminal to terminal, if no value is given it won't save anything
save_packet_latency_path: "${PACKET_LATENCY_TRACE_PATH}"
# folder path to store router-local timing rows for router queueing-delay training
Expand Down
6 changes: 5 additions & 1 deletion doc/example/tutorial-ping-pong.conf.in
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# To also collect model-level stats through the ROSS instrumentation layer, add e.g.
# --model-stats=1 --num-gvt=8 --stats-path=model-stats-out
# to the run command (see doc/model-stats-binary-format.md for all modes and the
# output format; scripts/parse-ross-model-stats.py parses the result).
LPGROUPS
{
MODELNET_GRP
Expand Down Expand Up @@ -38,7 +42,7 @@ PARAMS
# bandwidth in GiB/s for compute node-router channels
cn_bandwidth="2.0";
# ROSS message size
message_size="440";
message_size="456";
# number of compute nodes connected to router, dictated by dragonfly config
# file
num_cns_per_router="2";
Expand Down
7 changes: 6 additions & 1 deletion doc/example/tutorial-ping-pong.yaml.in
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@ schema_version: 1
# as in the .conf. The compiler derives repetitions = num_groups * num_routers and
# lays out the [workload, terminal, router] LPs, so nw-lp / modelnet_dragonfly_dally*
# are emitted for you.
#
# To also collect model-level stats through the ROSS instrumentation layer, add e.g.
# --model-stats=1 --num-gvt=8 --stats-path=model-stats-out
# to the run command (see doc/model-stats-binary-format.md for all modes and the
# output format; scripts/parse-ross-model-stats.py parses the result).

components:
compute_host:
Expand Down Expand Up @@ -49,7 +54,7 @@ topology:
# scheduler options (alternative: round-robin)
modelnet_scheduler: fcfs
# ROSS message size
message_size: 440
message_size: 456
# router buffer occupancy snapshots
router_buffer_snapshots: [ ${BUFFER_SNAPSHOTS} ]
# folder path to store packet latency from terminal to terminal, if no value is given it won't save anything
Expand Down
Loading
Loading