Ruby.py (7917:d9afb18a5008) Ruby.py (8257:7226aebb77b4)
1# Copyright (c) 2006-2007 The Regents of The University of Michigan
2# Copyright (c) 2009 Advanced Micro Devices, Inc.
3# All rights reserved.
4#
5# Redistribution and use in source and binary forms, with or without
6# modification, are permitted provided that the following conditions are
7# met: redistributions of source code must retain the above copyright
8# notice, this list of conditions and the following disclaimer;

--- 57 unchanged lines hidden (view full) ---

66 exec "import %s" % protocol
67 try:
68 (cpu_sequencers, dir_cntrls, all_cntrls) = \
69 eval("%s.create_system(options, system, piobus, dma_devices)" \
70 % protocol)
71 except:
72 print "Error: could not create sytem for ruby protocol %s" % protocol
73 raise
1# Copyright (c) 2006-2007 The Regents of The University of Michigan
2# Copyright (c) 2009 Advanced Micro Devices, Inc.
3# All rights reserved.
4#
5# Redistribution and use in source and binary forms, with or without
6# modification, are permitted provided that the following conditions are
7# met: redistributions of source code must retain the above copyright
8# notice, this list of conditions and the following disclaimer;

--- 57 unchanged lines hidden (view full) ---

66 exec "import %s" % protocol
67 try:
68 (cpu_sequencers, dir_cntrls, all_cntrls) = \
69 eval("%s.create_system(options, system, piobus, dma_devices)" \
70 % protocol)
71 except:
72 print "Error: could not create sytem for ruby protocol %s" % protocol
73 raise
74
74
75 #
75 #
76 # Set the network classes based on the command line options
77 #
78 if options.garnet_network == "fixed":
79 class NetworkClass(GarnetNetwork_d): pass
80 class IntLinkClass(GarnetIntLink_d): pass
81 class ExtLinkClass(GarnetExtLink_d): pass
82 class RouterClass(GarnetRouter_d): pass
83 elif options.garnet_network == "flexible":
84 class NetworkClass(GarnetNetwork): pass
85 class IntLinkClass(GarnetIntLink): pass
86 class ExtLinkClass(GarnetExtLink): pass
87 class RouterClass(GarnetRouter): pass
88 else:
89 class NetworkClass(SimpleNetwork): pass
90 class IntLinkClass(BasicIntLink): pass
91 class ExtLinkClass(BasicExtLink): pass
92 class RouterClass(BasicRouter): pass
93
94 #
76 # Important: the topology must be created before the network and after the
77 # controllers.
78 #
79 exec "import %s" % options.topology
80 try:
95 # Important: the topology must be created before the network and after the
96 # controllers.
97 #
98 exec "import %s" % options.topology
99 try:
81 net_topology = eval("%s.makeTopology(all_cntrls, options)" \
100 net_topology = eval("%s.makeTopology(all_cntrls, options, \
101 IntLinkClass, ExtLinkClass, \
102 RouterClass)" \
82 % options.topology)
83 except:
84 print "Error: could not create topology %s" % options.topology
85 raise
103 % options.topology)
104 except:
105 print "Error: could not create topology %s" % options.topology
106 raise
86
87 if options.garnet_network == "fixed":
88 network = GarnetNetwork_d(topology = net_topology)
89 elif options.garnet_network == "flexible":
90 network = GarnetNetwork(topology = net_topology)
91 else:
92 network = SimpleNetwork(topology = net_topology)
93
107
108 network = NetworkClass(topology = net_topology)
109
94 #
95 # Loop through the directory controlers.
96 # Determine the total memory size of the ruby system and verify it is equal
97 # to physmem. However, if Ruby memory is using sparse memory in SE
98 # mode, then the system should not back-up the memory state with
99 # the Memory Vector and thus the memory size bytes should stay at 0.
100 # Also set the numa bits to the appropriate values.
101 #

--- 34 unchanged lines hidden ---
110 #
111 # Loop through the directory controlers.
112 # Determine the total memory size of the ruby system and verify it is equal
113 # to physmem. However, if Ruby memory is using sparse memory in SE
114 # mode, then the system should not back-up the memory state with
115 # the Memory Vector and thus the memory size bytes should stay at 0.
116 # Also set the numa bits to the appropriate values.
117 #

--- 34 unchanged lines hidden ---