Jason Lowe-Power has submitted this change. (
https://gem5-review.googlesource.com/c/public/gem5/+/29047 )
Change subject: configs: Updates for python3
......................................................................
configs: Updates for python3
Change-Id: Iab2f83716ea2cb19f06282f037314f2db843327a
Signed-off-by: Jason Lowe-Power <ja...@lowepower.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/29047
Maintainer: Bobby R. Bruce <bbr...@ucdavis.edu>
Tested-by: kokoro <noreply+kok...@google.com>
Reviewed-by: Giacomo Travaglini <giacomo.travagl...@arm.com>
---
M configs/common/FSConfig.py
M configs/common/FileSystemConfig.py
M configs/common/HMC.py
M configs/common/ObjectList.py
M configs/common/Options.py
M configs/common/Simulation.py
M configs/common/SysPaths.py
M configs/dram/lat_mem_rd.py
M configs/dram/sweep.py
M configs/example/arm/baremetal.py
M configs/example/arm/devices.py
M configs/example/arm/fs_bigLITTLE.py
M configs/example/arm/starter_fs.py
M configs/example/arm/starter_se.py
M configs/example/read_config.py
M configs/ruby/AMD_Base_Constructor.py
M configs/ruby/GPU_RfO.py
M configs/ruby/GPU_VIPER.py
M configs/ruby/GPU_VIPER_Baseline.py
M configs/ruby/GPU_VIPER_Region.py
M configs/ruby/Garnet_standalone.py
M configs/ruby/MESI_Three_Level.py
M configs/ruby/MESI_Two_Level.py
M configs/ruby/MI_example.py
M configs/ruby/MOESI_AMD_Base.py
M configs/ruby/MOESI_CMP_directory.py
M configs/ruby/MOESI_CMP_token.py
M configs/ruby/MOESI_hammer.py
M configs/topologies/MeshDirCorners_XY.py
M configs/topologies/Mesh_XY.py
30 files changed, 100 insertions(+), 66 deletions(-)
Approvals:
Giacomo Travaglini: Looks good to me, approved
Bobby R. Bruce: Looks good to me, approved
kokoro: Regressions pass
diff --git a/configs/common/FSConfig.py b/configs/common/FSConfig.py
index d49ad78..e154593 100644
--- a/configs/common/FSConfig.py
+++ b/configs/common/FSConfig.py
@@ -41,12 +41,17 @@
from __future__ import print_function
from __future__ import absolute_import
+import six
+
import m5
from m5.objects import *
from m5.util import *
from common.Benchmarks import *
from common import ObjectList
+if six.PY3:
+ long = int
+
# Populate to reflect supported os types per target ISA
os_types = { 'mips' : [ 'linux' ],
'riscv' : [ 'linux' ], # TODO that's a lie
@@ -574,7 +579,7 @@
# We assume below that there's at least 1MB of memory. We'll require 2
# just to avoid corner cases.
- phys_mem_size = sum(map(lambda r: r.size(), self.mem_ranges))
+ phys_mem_size = sum([r.size() for r in self.mem_ranges])
assert(phys_mem_size >= 0x200000)
assert(len(self.mem_ranges) <= 2)
diff --git a/configs/common/FileSystemConfig.py
b/configs/common/FileSystemConfig.py
index 97279f1..ec27656 100644
--- a/configs/common/FileSystemConfig.py
+++ b/configs/common/FileSystemConfig.py
@@ -132,7 +132,7 @@
file_append((procdir, 'cpuinfo'), one_cpu)
file_append((procdir, 'stat'), 'cpu 0 0 0 0 0 0 0\n')
- for i in xrange(len(cpus)):
+ for i in range(len(cpus)):
file_append((procdir, 'stat'), 'cpu%d 0 0 0 0 0 0 0\n' % i)
# Set up /sys
diff --git a/configs/common/HMC.py b/configs/common/HMC.py
index c65b201..c4c0acc 100644
--- a/configs/common/HMC.py
+++ b/configs/common/HMC.py
@@ -432,7 +432,7 @@
for i in range(numx*(opt.mem_chunk-1))]
# Buffer iterator
- it = iter(range(len(system.hmc_dev.buffers)))
+ it = iter(list(range(len(system.hmc_dev.buffers))))
# necesarry to add system_port to one of the xbar
system.system_port = system.hmc_dev.xbar[3].slave
@@ -443,7 +443,7 @@
# connect xbar to all other xbars except itself
if i != j:
# get the next index of buffer
- index = it.next()
+ index = next(it)
# Change the default values for ranges of bridge
system.hmc_dev.buffers[index].ranges =
system.mem_ranges[
diff --git a/configs/common/ObjectList.py b/configs/common/ObjectList.py
index 8bffa5f..c91ea0c 100644
--- a/configs/common/ObjectList.py
+++ b/configs/common/ObjectList.py
@@ -75,7 +75,7 @@
print("Available {} classes:".format(self.base_cls))
doc_wrapper = TextWrapper(initial_indent="\t\t",
subsequent_indent="\t\t")
- for name, cls in self._sub_classes.items():
+ for name, cls in list(self._sub_classes.items()):
print("\t{}".format(name))
# Try to extract the class documentation from the class help
@@ -87,7 +87,7 @@
if self._aliases:
print("\Aliases:")
- for alias, target in self._aliases.items():
+ for alias, target in list(self._aliases.items()):
print("\t{} => {}".format(alias, target))
def get_names(self):
@@ -156,7 +156,7 @@
def _add_objects(self):
""" Add all enum values to the ObjectList """
self._sub_classes = {}
- for (key, value) in self.base_cls.__members__.items():
+ for (key, value) in list(self.base_cls.__members__.items()):
# All Enums have a value Num_NAME at the end which we
# do not want to include
if not key.startswith("Num_"):
diff --git a/configs/common/Options.py b/configs/common/Options.py
index 6d0c6c2..3eff04b 100644
--- a/configs/common/Options.py
+++ b/configs/common/Options.py
@@ -110,7 +110,7 @@
help="Specify the physical memory size (single
memory)")
parser.add_option("--enable-dram-powerdown", action="store_true",
help="Enable low-power states in DRAMCtrl")
- parser.add_option("--mem-channels-intlv", type="int",
+ parser.add_option("--mem-channels-intlv", type="int", default=0,
help="Memory channels interleave")
diff --git a/configs/common/Simulation.py b/configs/common/Simulation.py
index 73a0ff5..e53c755 100644
--- a/configs/common/Simulation.py
+++ b/configs/common/Simulation.py
@@ -40,6 +40,7 @@
from __future__ import print_function
from __future__ import absolute_import
+import six
import sys
from os import getcwd
from os.path import join as joinpath
@@ -52,6 +53,9 @@
from m5.objects import *
from m5.util import *
+if six.PY3:
+ long = int
+
addToPath('../common')
def getCPUClass(cpu_type):
diff --git a/configs/common/SysPaths.py b/configs/common/SysPaths.py
index f37039e..440b0cf 100644
--- a/configs/common/SysPaths.py
+++ b/configs/common/SysPaths.py
@@ -55,10 +55,10 @@
paths =
[ '/dist/m5/system', '/n/poolfs/z/dist/m5/system' ]
# expand '~' and '~user' in paths
- paths = map(os.path.expanduser, paths)
+ paths = list(map(os.path.expanduser, paths))
# filter out non-existent directories
- paths = filter(os.path.isdir, paths)
+ paths = list(filter(os.path.isdir, paths))
if not paths:
raise IOError(
diff --git a/configs/dram/lat_mem_rd.py b/configs/dram/lat_mem_rd.py
index 07f9afc..9b04e4b 100644
--- a/configs/dram/lat_mem_rd.py
+++ b/configs/dram/lat_mem_rd.py
@@ -37,6 +37,7 @@
from __future__ import absolute_import
import gzip
+import six
import optparse
import os
@@ -52,6 +53,9 @@
addToPath('../../util')
import protolib
+if six.PY3:
+ long = int
+
# this script is helpful to observe the memory latency for various
# levels in a cache hierarchy, and various cache and memory
# configurations, in essence replicating the lmbench lat_mem_rd thrash
diff --git a/configs/dram/sweep.py b/configs/dram/sweep.py
index d3c86c3..a340b46 100644
--- a/configs/dram/sweep.py
+++ b/configs/dram/sweep.py
@@ -73,7 +73,7 @@
help = "Percentage of read commands")
parser.add_option("--mode", type="choice", default="DRAM",
- choices=dram_generators.keys(),
+ choices=list(dram_generators.keys()),
help = "DRAM: Random traffic; \
DRAM_ROTATE: Traffic rotating across banks and
ranks")
diff --git a/configs/example/arm/baremetal.py
b/configs/example/arm/baremetal.py
index 412625d..04f60a1 100644
--- a/configs/example/arm/baremetal.py
+++ b/configs/example/arm/baremetal.py
@@ -203,7 +203,7 @@
help="Disk to instantiate")
parser.add_argument("--readfile", type=str, default="",
help = "File to return with the m5 readfile
command")
- parser.add_argument("--cpu", type=str, choices=cpu_types.keys(),
+ parser.add_argument("--cpu", type=str, choices=list(cpu_types.keys()),
default="atomic",
help="CPU model to use")
parser.add_argument("--cpu-freq", type=str, default="4GHz")
diff --git a/configs/example/arm/devices.py b/configs/example/arm/devices.py
index a45188b..cc8ac5e 100644
--- a/configs/example/arm/devices.py
+++ b/configs/example/arm/devices.py
@@ -38,12 +38,17 @@
from __future__ import print_function
from __future__ import absolute_import
+import six
+
import m5
from m5.objects import *
m5.util.addToPath('../../')
from common.Caches import *
from common import ObjectList
+if six.PY3:
+ long = int
+
have_kvm = "ArmV8KvmCPU" in ObjectList.cpu_list.get_names()
have_fastmodel = "FastModelCortexA76" in ObjectList.cpu_list.get_names()
diff --git a/configs/example/arm/fs_bigLITTLE.py
b/configs/example/arm/fs_bigLITTLE.py
index b7e794d..228d11c 100644
--- a/configs/example/arm/fs_bigLITTLE.py
+++ b/configs/example/arm/fs_bigLITTLE.py
@@ -177,7 +177,7 @@
help="Disks to instantiate")
parser.add_argument("--bootscript", type=str, default=default_rcs,
help="Linux bootscript")
- parser.add_argument("--cpu-type", type=str, choices=cpu_types.keys(),
+ parser.add_argument("--cpu-type", type=str,
choices=list(cpu_types.keys()),
default="timing",
help="CPU simulation mode. Default: %(default)s")
parser.add_argument("--kernel-init", type=str, default="/sbin/init",
diff --git a/configs/example/arm/starter_fs.py
b/configs/example/arm/starter_fs.py
index 7a20280..3033890 100644
--- a/configs/example/arm/starter_fs.py
+++ b/configs/example/arm/starter_fs.py
@@ -208,7 +208,7 @@
help="Disk to instantiate")
parser.add_argument("--script", type=str, default="",
help = "Linux bootscript")
- parser.add_argument("--cpu", type=str, choices=cpu_types.keys(),
+ parser.add_argument("--cpu", type=str, choices=list(cpu_types.keys()),
default="atomic",
help="CPU model to use")
parser.add_argument("--cpu-freq", type=str, default="4GHz")
diff --git a/configs/example/arm/starter_se.py
b/configs/example/arm/starter_se.py
index 0f20ecc..0003ce9 100644
--- a/configs/example/arm/starter_se.py
+++ b/configs/example/arm/starter_se.py
@@ -183,7 +183,7 @@
parser.add_argument("commands_to_run", metavar="command(s)", nargs='*',
help="Command(s) to run")
- parser.add_argument("--cpu", type=str, choices=cpu_types.keys(),
+ parser.add_argument("--cpu", type=str, choices=list(cpu_types.keys()),
default="atomic",
help="CPU model to use")
parser.add_argument("--cpu-freq", type=str, default="4GHz")
diff --git a/configs/example/read_config.py b/configs/example/read_config.py
index 167815c..52a53ba 100644
--- a/configs/example/read_config.py
+++ b/configs/example/read_config.py
@@ -49,7 +49,7 @@
from __future__ import absolute_import
import argparse
-import ConfigParser
+from six.moves import configparser
import inspect
import json
import re
@@ -63,7 +63,7 @@
long = int
sim_object_classes_by_name = {
- cls.__name__: cls for cls in m5.objects.__dict__.values()
+ cls.__name__: cls for cls in list(m5.objects.__dict__.values())
if inspect.isclass(cls) and issubclass(cls, m5.objects.SimObject) }
# Add some parsing functions to Param classes to handle reading in .ini
@@ -129,7 +129,7 @@
'EthernetAddr': simple_parser()
}
-for name, parser in param_parsers.items():
+for name, parser in list(param_parsers.items()):
setattr(m5.params.__dict__[name], 'parse_ini', classmethod(parser))
class PortConnection(object):
@@ -193,7 +193,7 @@
parsed_params = {}
- for param_name, param in object_class._params.items():
+ for param_name, param in list(object_class._params.items()):
if issubclass(param.ptype, m5.params.ParamValue):
if isinstance(param, m5.params.VectorParamDesc):
param_values =
self.config.get_param_vector(object_name,
@@ -221,7 +221,7 @@
if object_name == 'Null':
return NULL
- for param_name, param in obj.__class__._params.items():
+ for param_name, param in list(obj.__class__._params.items()):
if issubclass(param.ptype, m5.objects.SimObject):
if isinstance(param, m5.params.VectorParamDesc):
param_values =
self.config.get_param_vector(object_name,
@@ -286,11 +286,11 @@
return NULL
parsed_ports = []
- for port_name, port in obj.__class__._ports.items():
+ for port_name, port in list(obj.__class__._ports.items()):
# Assume that unnamed ports are unconnected
peers = self.config.get_port_peers(object_name, port_name)
- for index, peer in zip(range(0, len(peers)), peers):
+ for index, peer in zip(list(range(0, len(peers))), peers):
parsed_ports.append((
PortConnection(object_name, port.name, index),
PortConnection.from_string(peer)))
@@ -368,12 +368,12 @@
# Now fill in SimObject-valued parameters in the knowledge that
# this won't be interpreted as becoming the parent of objects
# which are already in the root hierarchy
- for name, obj in self.objects_by_name.items():
+ for name, obj in list(self.objects_by_name.items()):
self.fill_in_simobj_parameters(name, obj)
# Gather a list of all port-to-port connections
connections = []
- for name, obj in self.objects_by_name.items():
+ for name, obj in list(self.objects_by_name.items()):
connections += self.gather_port_connections(name, obj)
# Find an acceptable order to bind those port connections and
@@ -415,7 +415,7 @@
class ConfigIniFile(ConfigFile):
def __init__(self):
- self.parser = ConfigParser.ConfigParser()
+ self.parser = configparser.ConfigParser()
def load(self, config_file):
self.parser.read(config_file)
@@ -466,7 +466,7 @@
for elem in node:
self.find_all_objects(elem)
elif isinstance(node, dict):
- for elem in node.values():
+ for elem in list(node.values()):
self.find_all_objects(elem)
def load(self, config_file):
@@ -505,7 +505,7 @@
obj = self.object_dicts[object_name]
children = []
- for name, node in obj.items():
+ for name, node in list(obj.items()):
if self.is_sim_object(node):
children.append((name, node['path']))
elif isinstance(node, list) and node != [] and all([
diff --git a/configs/ruby/AMD_Base_Constructor.py
b/configs/ruby/AMD_Base_Constructor.py
index cd51bca..a347f43 100644
--- a/configs/ruby/AMD_Base_Constructor.py
+++ b/configs/ruby/AMD_Base_Constructor.py
@@ -34,7 +34,7 @@
from m5.objects import *
from m5.defines import buildEnv
from m5.util import addToPath, convert
-from CntrlBase import *
+from .CntrlBase import *
addToPath('../')
diff --git a/configs/ruby/GPU_RfO.py b/configs/ruby/GPU_RfO.py
index 26bea0c..58711ea 100644
--- a/configs/ruby/GPU_RfO.py
+++ b/configs/ruby/GPU_RfO.py
@@ -29,19 +29,23 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE
# POSSIBILITY OF SUCH DAMAGE.
+import six
import math
import m5
from m5.objects import *
from m5.defines import buildEnv
from m5.util import addToPath
-from Ruby import create_topology
-from Ruby import send_evicts
+from .Ruby import create_topology
+from .Ruby import send_evicts
addToPath('../')
from topologies.Cluster import Cluster
from topologies.Crossbar import Crossbar
+if six.PY3:
+ long = int
+
class CntrlBase:
_seqs = 0
@classmethod
diff --git a/configs/ruby/GPU_VIPER.py b/configs/ruby/GPU_VIPER.py
index f4ecc41..58572ae 100644
--- a/configs/ruby/GPU_VIPER.py
+++ b/configs/ruby/GPU_VIPER.py
@@ -29,19 +29,23 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE
# POSSIBILITY OF SUCH DAMAGE.
+import six
import math
import m5
from m5.objects import *
from m5.defines import buildEnv
from m5.util import addToPath
-from Ruby import create_topology
-from Ruby import send_evicts
+from .Ruby import create_topology
+from .Ruby import send_evicts
addToPath('../')
from topologies.Cluster import Cluster
from topologies.Crossbar import Crossbar
+if six.PY3:
+ long = int
+
class CntrlBase:
_seqs = 0
@classmethod
@@ -516,16 +520,16 @@
# Register CPUs and caches for each CorePair and directory (SE mode
only)
if not full_system:
- for i in xrange((options.num_cpus + 1) // 2):
+ for i in range((options.num_cpus + 1) // 2):
FileSystemConfig.register_cpu(physical_package_id = 0,
core_siblings = \
- xrange(options.num_cpus),
+ range(options.num_cpus),
core_id = i*2,
thread_siblings = [])
FileSystemConfig.register_cpu(physical_package_id = 0,
core_siblings = \
- xrange(options.num_cpus),
+ range(options.num_cpus),
core_id = i*2+1,
thread_siblings = [])
@@ -564,7 +568,7 @@
line_size =
options.cacheline_size,
assoc = options.l3_assoc,
cpus = [n for n in
- xrange(options.num_cpus)])
+ range(options.num_cpus)])
gpuCluster = None
if hasattr(options, 'bw_scalor') and options.bw_scalor > 0:
diff --git a/configs/ruby/GPU_VIPER_Baseline.py
b/configs/ruby/GPU_VIPER_Baseline.py
index 46fdec9..5388a4e 100644
--- a/configs/ruby/GPU_VIPER_Baseline.py
+++ b/configs/ruby/GPU_VIPER_Baseline.py
@@ -29,19 +29,23 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE
# POSSIBILITY OF SUCH DAMAGE.
+import six
import math
import m5
from m5.objects import *
from m5.defines import buildEnv
from m5.util import addToPath
-from Ruby import create_topology
-from Ruby import send_evicts
+from .Ruby import create_topology
+from .Ruby import send_evicts
addToPath('../')
from topologies.Cluster import Cluster
from topologies.Crossbar import Crossbar
+if six.PY3:
+ long = int
+
class CntrlBase:
_seqs = 0
@classmethod
diff --git a/configs/ruby/GPU_VIPER_Region.py
b/configs/ruby/GPU_VIPER_Region.py
index 7b15403..a8b39ae 100644
--- a/configs/ruby/GPU_VIPER_Region.py
+++ b/configs/ruby/GPU_VIPER_Region.py
@@ -29,17 +29,21 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE
# POSSIBILITY OF SUCH DAMAGE.
+import six
import math
import m5
from m5.objects import *
from m5.defines import buildEnv
from m5.util import addToPath
-from Ruby import send_evicts
+from .Ruby import send_evicts
addToPath('../')
from topologies.Cluster import Cluster
+if six.PY3:
+ long = int
+
class CntrlBase:
_seqs = 0
@classmethod
diff --git a/configs/ruby/Garnet_standalone.py
b/configs/ruby/Garnet_standalone.py
index 4aee7a4..4b7ca8d 100644
--- a/configs/ruby/Garnet_standalone.py
+++ b/configs/ruby/Garnet_standalone.py
@@ -29,7 +29,7 @@
from m5.objects import *
from m5.defines import buildEnv
from m5.util import addToPath
-from Ruby import create_topology, create_directories
+from .Ruby import create_topology, create_directories
#
# Declare caches used by the protocol
diff --git a/configs/ruby/MESI_Three_Level.py
b/configs/ruby/MESI_Three_Level.py
index 0bd893e..7cfb832 100644
--- a/configs/ruby/MESI_Three_Level.py
+++ b/configs/ruby/MESI_Three_Level.py
@@ -31,8 +31,8 @@
import m5
from m5.objects import *
from m5.defines import buildEnv
-from Ruby import create_topology, create_directories
-from Ruby import send_evicts
+from .Ruby import create_topology, create_directories
+from .Ruby import send_evicts
from common import FileSystemConfig
#
@@ -294,10 +294,10 @@
all_cntrls = all_cntrls + [io_controller]
# Register configuration with filesystem
else:
- for i in xrange(options.num_clusters):
- for j in xrange(num_cpus_per_cluster):
+ for i in range(options.num_clusters):
+ for j in range(num_cpus_per_cluster):
FileSystemConfig.register_cpu(physical_package_id = 0,
- core_siblings =
xrange(options.num_cpus),
+ core_siblings =
range(options.num_cpus),
core_id =
i*num_cpus_per_cluster+j,
thread_siblings = [])
@@ -329,7 +329,7 @@
num_l2caches_per_cluster)+'B',
line_size =
options.cacheline_size,
assoc = options.l2_assoc,
- cpus = [n for n in
xrange(i*num_cpus_per_cluster, \
+ cpus = [n for n in
range(i*num_cpus_per_cluster, \
(i+1)*num_cpus_per_cluster)])
ruby_system.network.number_of_virtual_networks = 3
diff --git a/configs/ruby/MESI_Two_Level.py b/configs/ruby/MESI_Two_Level.py
index 3ddf8ef..77fef76 100644
--- a/configs/ruby/MESI_Two_Level.py
+++ b/configs/ruby/MESI_Two_Level.py
@@ -29,8 +29,8 @@
import m5
from m5.objects import *
from m5.defines import buildEnv
-from Ruby import create_topology, create_directories
-from Ruby import send_evicts
+from .Ruby import create_topology, create_directories
+from .Ruby import send_evicts
#
# Declare caches used by the protocol
diff --git a/configs/ruby/MI_example.py b/configs/ruby/MI_example.py
index 2ea6699..264f709 100644
--- a/configs/ruby/MI_example.py
+++ b/configs/ruby/MI_example.py
@@ -29,8 +29,8 @@
import m5
from m5.objects import *
from m5.defines import buildEnv
-from Ruby import create_topology, create_directories
-from Ruby import send_evicts
+from .Ruby import create_topology, create_directories
+from .Ruby import send_evicts
#
# Declare caches used by the protocol
@@ -113,7 +113,7 @@
l1_cntrl.responseToCache = MessageBuffer(ordered = True)
l1_cntrl.responseToCache.slave = ruby_system.network.master
- phys_mem_size = sum(map(lambda r: r.size(), system.mem_ranges))
+ phys_mem_size = sum([r.size() for r in system.mem_ranges])
assert(phys_mem_size % options.num_dirs == 0)
mem_module_size = phys_mem_size / options.num_dirs
diff --git a/configs/ruby/MOESI_AMD_Base.py b/configs/ruby/MOESI_AMD_Base.py
index aa9dd50..91ff4d2 100644
--- a/configs/ruby/MOESI_AMD_Base.py
+++ b/configs/ruby/MOESI_AMD_Base.py
@@ -34,8 +34,8 @@
from m5.objects import *
from m5.defines import buildEnv
from m5.util import addToPath
-from Ruby import create_topology
-from Ruby import send_evicts
+from .Ruby import create_topology
+from .Ruby import send_evicts
from common import FileSystemConfig
addToPath('../')
@@ -328,16 +328,16 @@
# Register CPUs and caches for each CorePair and directory (SE mode
only)
if not full_system:
- for i in xrange((options.num_cpus + 1) // 2):
+ for i in range((options.num_cpus + 1) // 2):
FileSystemConfig.register_cpu(physical_package_id = 0,
core_siblings =
- xrange(options.num_cpus),
+ range(options.num_cpus),
core_id = i*2,
thread_siblings = [])
FileSystemConfig.register_cpu(physical_package_id = 0,
core_siblings =
- xrange(options.num_cpus),
+ range(options.num_cpus),
core_id = i*2+1,
thread_siblings = [])
@@ -376,7 +376,7 @@
line_size =
options.cacheline_size,
assoc = options.l3_assoc,
cpus = [n for n in
- xrange(options.num_cpus)])
+ range(options.num_cpus)])
# Assuming no DMA devices
assert(len(dma_devices) == 0)
diff --git a/configs/ruby/MOESI_CMP_directory.py
b/configs/ruby/MOESI_CMP_directory.py
index 2b7770a..8778b61 100644
--- a/configs/ruby/MOESI_CMP_directory.py
+++ b/configs/ruby/MOESI_CMP_directory.py
@@ -41,8 +41,8 @@
import m5
from m5.objects import *
from m5.defines import buildEnv
-from Ruby import create_topology, create_directories
-from Ruby import send_evicts
+from .Ruby import create_topology, create_directories
+from .Ruby import send_evicts
#
# Declare caches used by the protocol
diff --git a/configs/ruby/MOESI_CMP_token.py
b/configs/ruby/MOESI_CMP_token.py
index a2c41c0..80944f5 100644
--- a/configs/ruby/MOESI_CMP_token.py
+++ b/configs/ruby/MOESI_CMP_token.py
@@ -29,8 +29,8 @@
import m5
from m5.objects import *
from m5.defines import buildEnv
-from Ruby import create_topology, create_directories
-from Ruby import send_evicts
+from .Ruby import create_topology, create_directories
+from .Ruby import send_evicts
#
# Declare caches used by the protocol
diff --git a/configs/ruby/MOESI_hammer.py b/configs/ruby/MOESI_hammer.py
index 5aac38b..c83bb72 100644
--- a/configs/ruby/MOESI_hammer.py
+++ b/configs/ruby/MOESI_hammer.py
@@ -29,8 +29,8 @@
import m5
from m5.objects import *
from m5.defines import buildEnv
-from Ruby import create_topology, create_directories
-from Ruby import send_evicts
+from .Ruby import create_topology, create_directories
+from .Ruby import send_evicts
from common import FileSystemConfig
#
@@ -257,7 +257,7 @@
all_cntrls = all_cntrls + [io_controller]
# Register configuration with filesystem
else:
- for i in xrange(options.num_cpus):
+ for i in range(options.num_cpus):
FileSystemConfig.register_cpu(physical_package_id = 0,
core_siblings = [],
core_id = i,
diff --git a/configs/topologies/MeshDirCorners_XY.py
b/configs/topologies/MeshDirCorners_XY.py
index 6d97f82..7d065de 100644
--- a/configs/topologies/MeshDirCorners_XY.py
+++ b/configs/topologies/MeshDirCorners_XY.py
@@ -101,7 +101,7 @@
# NUMA Node for each quadrant
# With odd columns or rows, the nodes will be unequal
numa_nodes = [ [], [], [], []]
- for i in xrange(num_routers):
+ for i in range(num_routers):
if i % num_columns < num_columns / 2 and \
i < num_routers / 2:
numa_nodes[0].append(i)
diff --git a/configs/topologies/Mesh_XY.py b/configs/topologies/Mesh_XY.py
index 3ae3485..64a8506 100644
--- a/configs/topologies/Mesh_XY.py
+++ b/configs/topologies/Mesh_XY.py
@@ -176,6 +176,6 @@
# Register nodes with filesystem
def registerTopology(self, options):
- for i in xrange(options.num_cpus):
+ for i in range(options.num_cpus):
FileSystemConfig.register_node([i],
MemorySize(options.mem_size) / options.num_cpus, i)
--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/29047
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: release-staging-v20.0.0.0
Gerrit-Change-Id: Iab2f83716ea2cb19f06282f037314f2db843327a
Gerrit-Change-Number: 29047
Gerrit-PatchSet: 4
Gerrit-Owner: Jason Lowe-Power <ja...@lowepower.com>
Gerrit-Reviewer: Bobby R. Bruce <bbr...@ucdavis.edu>
Gerrit-Reviewer: Giacomo Travaglini <giacomo.travagl...@arm.com>
Gerrit-Reviewer: Hoa Nguyen <hoangu...@ucdavis.edu>
Gerrit-Reviewer: Jason Lowe-Power <power...@gmail.com>
Gerrit-Reviewer: kokoro <noreply+kok...@google.com>
Gerrit-MessageType: merged
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s