summaryrefslogtreecommitdiff
path: root/configs/example/fs.py
diff options
context:
space:
mode:
authorRon Dreslinski <rdreslin@umich.edu>2006-10-18 13:34:52 -0400
committerRon Dreslinski <rdreslin@umich.edu>2006-10-18 13:34:52 -0400
commit63c2a782d60dffaf7150ed0799767b215bbce6fb (patch)
treebf576dc58c45031b5a2592f9574ac400876cd070 /configs/example/fs.py
parent9c582c7e144aef0bfc9d14bb4690d56d1688496a (diff)
parent0e2561710b44f811a5e179935d54ef240013d03e (diff)
downloadgem5-63c2a782d60dffaf7150ed0799767b215bbce6fb.tar.xz
Merge zizzer:/bk/newmem
into zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest --HG-- extra : convert_revision : 9e47881686a6c060fa28e7edfd9a0b556099bf30
Diffstat (limited to 'configs/example/fs.py')
-rw-r--r--configs/example/fs.py20
1 files changed, 17 insertions, 3 deletions
diff --git a/configs/example/fs.py b/configs/example/fs.py
index 200b0b522..f0e32e97f 100644
--- a/configs/example/fs.py
+++ b/configs/example/fs.py
@@ -42,6 +42,8 @@ parser = optparse.OptionParser()
parser.add_option("-d", "--detailed", action="store_true")
parser.add_option("-t", "--timing", action="store_true")
+parser.add_option("-n", "--num_cpus", type="int", default=1)
+parser.add_option("--caches", action="store_true")
parser.add_option("-m", "--maxtick", type="int")
parser.add_option("--maxtime", type="float")
parser.add_option("--dual", action="store_true",
@@ -64,6 +66,13 @@ if args:
print "Error: script doesn't take any positional arguments"
sys.exit(1)
+class MyCache(BaseCache):
+ assoc = 2
+ block_size = 64
+ latency = 1
+ mshrs = 10
+ tgts_per_mshr = 5
+
# client system CPU is always simple... note this is an assignment of
# a class, not an instance.
ClientCPUClass = AtomicSimpleCPU
@@ -96,9 +105,14 @@ else:
bm = [SysConfig()]
server_sys = makeLinuxAlphaSystem(server_mem_mode, bm[0])
-server_sys.cpu = ServerCPUClass(cpu_id=0)
-server_sys.cpu.connectMemPorts(server_sys.membus)
-server_sys.cpu.mem = server_sys.physmem
+np = options.num_cpus
+server_sys.cpu = [ServerCPUClass(cpu_id=i) for i in xrange(np)]
+for i in xrange(np):
+ if options.caches:
+ server_sys.cpu[i].addPrivateSplitL1Caches(MyCache(size = '32kB'),
+ MyCache(size = '64kB'))
+ server_sys.cpu[i].connectMemPorts(server_sys.membus)
+ server_sys.cpu[i].mem = server_sys.physmem
if len(bm) == 2:
client_sys = makeLinuxAlphaSystem(client_mem_mode, bm[1])