http://repo.m5sim.org/wiki/index.php?title=Garnet_Synthetic_Traffic&feed=atom&action=history
Garnet Synthetic Traffic - Revision history
2024-03-28T20:57:45Z
Revision history for this page on the wiki
MediaWiki 1.29.2
http://repo.m5sim.org/wiki/index.php?title=Garnet_Synthetic_Traffic&diff=8098&oldid=prev
Tushar at 03:45, 19 October 2016
2016-10-19T03:45:27Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 03:45, 19 October 2016</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l17" >Line 17:</td>
<td colspan="2" class="diff-lineno">Line 17:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>The Garnet_standalone protocol is ISA-agnostic, and hence we build it with the NULL ISA.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>The Garnet_standalone protocol is ISA-agnostic, and hence we build it with the NULL ISA.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><pre>scons build/NULL/gem5.debug PROTOCOL=<del class="diffchange diffchange-inline">gem5.debug</del></pre></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><pre>scons build/NULL/gem5.debug PROTOCOL=<ins class="diffchange diffchange-inline">Garnet_standalone</ins></pre></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Example command:</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Example command:</div></td></tr>
</table>
Tushar
http://repo.m5sim.org/wiki/index.php?title=Garnet_Synthetic_Traffic&diff=8097&oldid=prev
Tushar: /* How to run */
2016-10-19T03:43:58Z
<p><span dir="auto"><span class="autocomment">How to run</span></span></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 03:43, 19 October 2016</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l14" >Line 14:</td>
<td colspan="2" class="diff-lineno">Line 14:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>=== How to run ===</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>=== How to run ===</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>First build gem5 with the [[Garnet_standalone]] coherence protocol<del class="diffchange diffchange-inline">:</del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>First build gem5 with the [[Garnet_standalone]] coherence protocol<ins class="diffchange diffchange-inline">.</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">The Garnet_standalone protocol is ISA-agnostic, and hence we build it with the NULL ISA.</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><pre>scons build/<del class="diffchange diffchange-inline">Garnet_standalone</del>/gem5.debug</pre></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><pre>scons build/<ins class="diffchange diffchange-inline">NULL</ins>/<ins class="diffchange diffchange-inline">gem5.debug PROTOCOL=</ins>gem5.debug</pre></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Example command:</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Example command:</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><pre>./build/<del class="diffchange diffchange-inline">Garnet_standalone</del>/gem5.debug configs/example/garnet_synth_traffic.py  \</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><pre>./build/<ins class="diffchange diffchange-inline">NULL</ins>/gem5.debug configs/example/garnet_synth_traffic.py  \</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>--num-cpus=16 \</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>--num-cpus=16 \</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>--num-dirs=16 \</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>--num-dirs=16 \</div></td></tr>
</table>
Tushar
http://repo.m5sim.org/wiki/index.php?title=Garnet_Synthetic_Traffic&diff=8094&oldid=prev
Tushar at 17:06, 10 October 2016
2016-10-10T17:06:53Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 17:06, 10 October 2016</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1" >Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>The Garnet Synthetic Traffic provides a framework for simulating the [[Garnet2.0|Garnet]] network with controlled inputs.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>The Garnet Synthetic Traffic provides a framework for simulating the [[Garnet2.0|Garnet]] network with controlled inputs.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>This is useful for network testing/debugging, or for network-only simulations with synthetic traffic.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>This is useful for network testing/debugging, or for network-only simulations with synthetic traffic.</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The injector only works with the [[Garnet_standalone]] coherence protocol.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">'''Note: </ins>The <ins class="diffchange diffchange-inline">garnet synthetic traffic </ins>injector only works with the [[Garnet_standalone]] coherence protocol.<ins class="diffchange diffchange-inline">'''</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>=== Related Files ===</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>=== Related Files ===</div></td></tr>
</table>
Tushar
http://repo.m5sim.org/wiki/index.php?title=Garnet_Synthetic_Traffic&diff=8093&oldid=prev
Tushar at 02:22, 8 October 2016
2016-10-08T02:22:45Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 02:22, 8 October 2016</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1" >Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The Garnet Synthetic Traffic provides a framework for simulating the <del class="diffchange diffchange-inline">garnet </del>network with controlled inputs.</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The Garnet Synthetic Traffic provides a framework for simulating the <ins class="diffchange diffchange-inline">[[Garnet2.0|Garnet]] </ins>network with controlled inputs.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>This is useful for network testing/debugging, or for network-only simulations with synthetic traffic.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>This is useful for network testing/debugging, or for network-only simulations with synthetic traffic.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>The injector only works with the [[Garnet_standalone]] coherence protocol.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>The injector only works with the [[Garnet_standalone]] coherence protocol.</div></td></tr>
</table>
Tushar
http://repo.m5sim.org/wiki/index.php?title=Garnet_Synthetic_Traffic&diff=8049&oldid=prev
Tushar: Tushar moved page Garnet synthetic traffic to Garnet Synthetic Traffic
2016-09-14T16:05:35Z
<p>Tushar moved page <a href="/Garnet_synthetic_traffic" class="mw-redirect" title="Garnet synthetic traffic">Garnet synthetic traffic</a> to <a href="/Garnet_Synthetic_Traffic" title="Garnet Synthetic Traffic">Garnet Synthetic Traffic</a></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<tr style='vertical-align: top;' lang='en'>
<td colspan='1' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='1' style="background-color: white; color:black; text-align: center;">Revision as of 16:05, 14 September 2016</td>
</tr><tr><td colspan='2' style='text-align: center;' lang='en'><div class="mw-diff-empty">(No difference)</div>
</td></tr></table>
Tushar
http://repo.m5sim.org/wiki/index.php?title=Garnet_Synthetic_Traffic&diff=8042&oldid=prev
Tushar at 02:55, 12 September 2016
2016-09-12T02:55:40Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 02:55, 12 September 2016</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l41" >Line 41:</td>
<td colspan="2" class="diff-lineno">Line 41:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>  | '''--network''' || Network model: simple or garnet2.0. Use garnet2.0 for running synthetic traffic.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>  | '''--network''' || Network model: simple or garnet2.0. Use garnet2.0 for running synthetic traffic.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>  |-</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>  |-</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>  | '''--topology''' || Topology for connecting the cpus and dirs to the network routers/switches<del class="diffchange diffchange-inline">. The ''Mesh_XY'' topology creates a network with ''--num-cpus'' number of routers/switches. It requires equal number of cpus and dirs, and connects one cpu, and one dir each to one network router. It weighs the links for XY routing</del>. More detail about different topologies can be found [[Interconnection_Network#Topology|here]].</div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>  | '''--topology''' || Topology for connecting the cpus and dirs to the network routers/switches. More detail about different topologies can be found [[Interconnection_Network#Topology|here]].</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>  |-</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>  |-</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>  | '''--mesh-rows''' || The number of rows in the mesh. Only valid when ''--topology'' is ''Mesh_*'' or ''MeshDirCorners_*''.</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>  | '''--mesh-rows''' || The number of rows in the mesh. Only valid when ''--topology'' is ''Mesh_*'' or ''MeshDirCorners_*''.</div></td></tr>
</table>
Tushar
http://repo.m5sim.org/wiki/index.php?title=Garnet_Synthetic_Traffic&diff=8041&oldid=prev
Tushar: Created page with "The Garnet Synthetic Traffic provides a framework for simulating the garnet network with controlled inputs. This is useful for network testing/debugging, or for network-only s..."
2016-09-12T02:53:06Z
<p>Created page with "The Garnet Synthetic Traffic provides a framework for simulating the garnet network with controlled inputs. This is useful for network testing/debugging, or for network-only s..."</p>
<p><b>New page</b></p><div>The Garnet Synthetic Traffic provides a framework for simulating the garnet network with controlled inputs.<br />
This is useful for network testing/debugging, or for network-only simulations with synthetic traffic.<br />
The injector only works with the [[Garnet_standalone]] coherence protocol.<br />
<br />
=== Related Files ===<br />
* '''configs/example/garnet_synth_traffic.py''': file to invoke the network tester<br />
* '''src/cpu/testers/garnet_synthetic_traffic''': files implementing the tester.<br />
** '''GarnetSyntheticTraffic.py'''<br />
** '''GarnetSyntheticTraffic.hh'''<br />
** '''GarnetSyntheticTraffic.cc'''<br />
<br />
<br />
=== How to run ===<br />
<br />
First build gem5 with the [[Garnet_standalone]] coherence protocol:<br />
<br />
<pre>scons build/Garnet_standalone/gem5.debug</pre><br />
<br />
Example command:<br />
<br />
<pre>./build/Garnet_standalone/gem5.debug configs/example/garnet_synth_traffic.py \<br />
--num-cpus=16 \<br />
--num-dirs=16 \<br />
--network=garnet2.0 \<br />
--topology=Mesh_XY \<br />
--mesh-rows=4 \<br />
--sim-cycles=1000 \<br />
--synthetic=uniform_random \<br />
--injectionrate=0.01<br />
</pre><br />
<br />
=== Parameterized Options ===<br />
<br />
{| border="1" cellpadding="10" class="wikitable"<br />
! System Configuration !! Description<br />
|-<br />
| '''--num-cpus''' || Number of cpus. This is the number of source (injection) nodes in the network.<br />
|-<br />
| '''--num-dirs''' || Number of directories. This is the number of destination (ejection) nodes in the network.<br />
|-<br />
| '''--network''' || Network model: simple or garnet2.0. Use garnet2.0 for running synthetic traffic.<br />
|-<br />
| '''--topology''' || Topology for connecting the cpus and dirs to the network routers/switches. The ''Mesh_XY'' topology creates a network with ''--num-cpus'' number of routers/switches. It requires equal number of cpus and dirs, and connects one cpu, and one dir each to one network router. It weighs the links for XY routing. More detail about different topologies can be found [[Interconnection_Network#Topology|here]].<br />
|-<br />
| '''--mesh-rows''' || The number of rows in the mesh. Only valid when ''--topology'' is ''Mesh_*'' or ''MeshDirCorners_*''.<br />
|-<br />
|}<br />
<br />
{| border="1" cellpadding="10" class="wikitable"<br />
! Network Configuration !! Description<br />
|-<br />
| '''--router-latency''' || Default number of pipeline stages in the garnet router. Has to be >= 1. Can be over-ridden on a per router basis in the topology file.<br />
|-<br />
| '''--link-latency''' || Default latency of each link in the network. Has to be >= 1. Can be over-ridden on a per link basis in the topology file.<br />
|-<br />
| '''--vcs-per-vnet''' || Number of VCs per Virtual Network.<br />
|-<br />
| '''--link-width-bits''' || Width in bits for all links inside the garnet network. Default = 128.<br />
|-<br />
|}<br />
<br />
{| border="1" cellpadding="10" class="wikitable"<br />
! Traffic Injection !! Description<br />
|-<br />
| '''--sim-cycles''' || Total number of cycles for which the simulation should run.<br />
|-<br />
| '''--synthetic''' || The type of synthetic traffic to be injected. The following synthetic traffic patterns are currently supported: 'uniform_random', 'tornado', 'bit_complement', 'bit_reverse', 'bit_rotation', 'neighbor', 'shuffle', and 'transpose'.<br />
|-<br />
| '''--injectionrate''' || Traffic Injection Rate in packets/node/cycle. It can take any decimal value between 0 and 1. The number of digits of precision after the decimal point can be controlled by ''--precision'' which is set to 3 as default in ''garnet_synth_traffic.py''.<br />
|-<br />
| '''--single-sender-id''' || Only inject from this sender. To send from all nodes, set to -1.<br />
|-<br />
| '''--single-dest-id''' || Only send to this destination. To send to all destinations as specified by the synthetic traffic pattern, set to -1.<br />
|-<br />
| '''--num-packets-max''' || Maximum number of packets to be injected by each cpu node. Default value is -1 (keep injecting till sim-cycles).<br />
|-<br />
| '''--inj-vnet''' || Only inject in this vnet (0, 1 or 2). 0 and 1 are 1-flit, 2 is 5-flit. Set to -1 to inject randomly in all vnets.<br />
|-<br />
|}<br />
<br />
=== Implementation of Garnet synthetic traffic ===<br />
<br />
The synthetic traffic injector is implemented in GarnetSyntheticTraffic.cc. The sequence of steps involved in generating and sending a packet are as follows.<br />
* Every cycle, each cpu performs a bernouli trial with probability equal to ''--injectionrate'' to determine whether to generate a packet or not. <br />
* If ''--num-packets-max'' is non negative, each cpu stops generating new packets after generating ''--num-packets-max'' number of packets. The injector terminates after ''--sim-cycles''.<br />
* If the cpu has to generate a new packet, it computes the destination for the new packet based on the synthetic traffic type (''--synthetic'').<br />
* This destination is embedded into the bits after block offset in the packet address.<br />
* The generated packet is randomly tagged as a ReadReq, or an INST_FETCH, or a WriteReq, and sent to the Ruby Port (src/mem/ruby/system/RubyPort.hh/cc).<br />
* The Ruby Port converts the packet into a RubyRequestType:LD, RubyRequestType:IFETCH, and RubyRequestType:ST, respectively, and sends it to the Sequencer, which in turn sends it to the [[Garnet_standalone]] cache controller.<br />
* The cache controller extracts the destination directory from the packet address.<br />
* The cache controller injects the LD, IFETCH and ST into virtual networks 0, 1 and 2 respectively.<br />
** LD and IFETCH are injected as control packets (8 bytes), while ST is injected as a data packet (72 bytes).<br />
* The packet traverses the network and reaches the directory.<br />
* The directory controller simply drops it.</div>
Tushar