diff options
author | Brad Beckmann <Brad.Beckmann@amd.com> | 2010-03-21 21:22:20 -0700 |
---|---|---|
committer | Brad Beckmann <Brad.Beckmann@amd.com> | 2010-03-21 21:22:20 -0700 |
commit | 1765badda28edcf95bed8f1b3a2ca7270cb830e3 (patch) | |
tree | 95e14558515a82360fd3b79550481ac9ffc018d3 /configs/ruby/Ruby.py | |
parent | 391b4e64e682ffd0580b0388114620f9de43a231 (diff) | |
download | gem5-1765badda28edcf95bed8f1b3a2ca7270cb830e3.tar.xz |
ruby: Added a mesh network with directories at the corners
The patch creates a specific mesh network where directories are at the corners.
The patch is a good example of how to create an arbitrary network, similar to
the old file specified network, while leveraging scripts and loops when
possible.
Diffstat (limited to 'configs/ruby/Ruby.py')
-rw-r--r-- | configs/ruby/Ruby.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/configs/ruby/Ruby.py b/configs/ruby/Ruby.py index d6889ef1a..22d56f9a1 100644 --- a/configs/ruby/Ruby.py +++ b/configs/ruby/Ruby.py @@ -31,6 +31,8 @@ import m5 from m5.objects import * from m5.defines import buildEnv from m5.util import addToPath +addToPath('../ruby/networks') +from MeshDirCorners import * protocol = buildEnv['PROTOCOL'] @@ -59,6 +61,14 @@ def create_system(options, physmem, piobus = None, dma_devices = []): net_topology = makeMesh(all_cntrls, len(cpu_sequencers), options.mesh_rows) + + elif options.topology == "mesh_dir_corner": + # + # The uniform mesh topology assumes one router per cpu + # + net_topology = makeMeshDirCorners(all_cntrls, + len(cpu_sequencers), + options.mesh_rows) if options.garnet_network == "fixed": network = GarnetNetwork_d(topology = net_topology) |