cpu: Limit TrafficGen outstanding reqs
[gem5.git] / configs / common / Benchmarks.py
index 1f272517ab3d627ecf41321bec02d01e2b4e84b2..3cf963bd50bcebbf8462412afcc8b27f3d39baa1 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2006 The Regents of The University of Michigan
+# Copyright (c) 2006-2007 The Regents of The University of Michigan
 # All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
 #
 # Authors: Ali Saidi
 
-from SysPaths import *
+from __future__ import print_function
+from __future__ import absolute_import
+
+from .SysPaths import script, disk, binary
+from os import environ as env
+from m5.defines import buildEnv
 
 class SysConfig:
-    def __init__(self, script=None, mem=None, disk=None):
+    def __init__(self, script=None, mem=None, disk=None, rootdev=None,
+                 os_type='linux'):
         self.scriptname = script
         self.diskname = disk
         self.memsize = mem
+        self.root = rootdev
+        self.ostype = os_type
 
     def script(self):
         if self.scriptname:
@@ -49,8 +57,27 @@ class SysConfig:
     def disk(self):
         if self.diskname:
             return disk(self.diskname)
-        else:
+        elif buildEnv['TARGET_ISA'] == 'alpha':
             return env.get('LINUX_IMAGE', disk('linux-latest.img'))
+        elif buildEnv['TARGET_ISA'] == 'x86':
+            return env.get('LINUX_IMAGE', disk('x86root.img'))
+        elif buildEnv['TARGET_ISA'] == 'arm':
+            return env.get('LINUX_IMAGE', disk('linux-aarch32-ael.img'))
+        elif buildEnv['TARGET_ISA'] == 'sparc':
+            return env.get('LINUX_IMAGE', disk('disk.s10hw2'))
+        else:
+            print("Don't know what default disk image to use for %s ISA" %
+                buildEnv['TARGET_ISA'])
+            exit(1)
+
+    def rootdev(self):
+        if self.root:
+            return self.root
+        else:
+            return '/dev/sda1'
+
+    def os_type(self):
+        return self.ostype
 
 # Benchmarks are defined as a key in a dict which is a list of SysConfigs
 # The first defined machine is the test system, the others are driving systems
@@ -59,48 +86,62 @@ Benchmarks = {
     'PovrayBench':  [SysConfig('povray-bench.rcS', '512MB', 'povray.img')],
     'PovrayAutumn': [SysConfig('povray-autumn.rcS', '512MB', 'povray.img')],
 
-    'NetperfStream':   [SysConfig('netperf-stream-client.rcS'),
+    'NetperfStream':    [SysConfig('netperf-stream-client.rcS'),
+                         SysConfig('netperf-server.rcS')],
+    'NetperfStreamUdp': [SysConfig('netperf-stream-udp-client.rcS'),
                          SysConfig('netperf-server.rcS')],
-    'NetperfStreamNT': [SysConfig('netperf-stream-nt-client.rcS'),
+    'NetperfUdpLocal':  [SysConfig('netperf-stream-udp-local.rcS')],
+    'NetperfStreamNT':  [SysConfig('netperf-stream-nt-client.rcS'),
                          SysConfig('netperf-server.rcS')],
-    'NetperfMaerts':   [SysConfig('netperf-maerts-client.rcS'),
+    'NetperfMaerts':    [SysConfig('netperf-maerts-client.rcS'),
                          SysConfig('netperf-server.rcS')],
-    'SurgeStandard':   [SysConfig('surge-server.rcS', '512MB'),
+    'SurgeStandard':    [SysConfig('surge-server.rcS', '512MB'),
                          SysConfig('surge-client.rcS', '256MB')],
-    'SurgeSpecweb':    [SysConfig('spec-surge-server.rcS', '512MB'),
+    'SurgeSpecweb':     [SysConfig('spec-surge-server.rcS', '512MB'),
                          SysConfig('spec-surge-client.rcS', '256MB')],
-    'Nhfsstone':       [SysConfig('nfs-server-nhfsstone.rcS', '512MB'),
+    'Nhfsstone':        [SysConfig('nfs-server-nhfsstone.rcS', '512MB'),
                          SysConfig('nfs-client-nhfsstone.rcS')],
-    'Nfs':             [SysConfig('nfs-server.rcS', '900MB'),
+    'Nfs':              [SysConfig('nfs-server.rcS', '900MB'),
                          SysConfig('nfs-client-dbench.rcS')],
-    'NfsTcp':          [SysConfig('nfs-server.rcS', '900MB'),
+    'NfsTcp':           [SysConfig('nfs-server.rcS', '900MB'),
                          SysConfig('nfs-client-tcp.rcS')],
-    'IScsiInitiator':  [SysConfig('iscsi-client.rcS', '512MB'),
+    'IScsiInitiator':   [SysConfig('iscsi-client.rcS', '512MB'),
                          SysConfig('iscsi-server.rcS', '512MB')],
-    'IScsiTarget':     [SysConfig('iscsi-server.rcS', '512MB'),
+    'IScsiTarget':      [SysConfig('iscsi-server.rcS', '512MB'),
                          SysConfig('iscsi-client.rcS', '512MB')],
-    'Validation':      [SysConfig('iscsi-server.rcS', '512MB'),
+    'Validation':       [SysConfig('iscsi-server.rcS', '512MB'),
                          SysConfig('iscsi-client.rcS', '512MB')],
-    'Ping':            [SysConfig('ping-server.rcS',),
+    'Ping':             [SysConfig('ping-server.rcS',),
                          SysConfig('ping-client.rcS')],
 
-    'ValAccDelay':     [SysConfig('devtime.rcS', '512MB')],
-    'ValAccDelay2':    [SysConfig('devtimewmr.rcS', '512MB')],
-    'ValMemLat':       [SysConfig('micro_memlat.rcS', '512MB')],
-    'ValMemLat2MB':    [SysConfig('micro_memlat2mb.rcS', '512MB')],
-    'ValMemLat8MB':    [SysConfig('micro_memlat8mb.rcS', '512MB')],
-    'ValMemLat':       [SysConfig('micro_memlat8.rcS', '512MB')],
-    'ValTlbLat':       [SysConfig('micro_tlblat.rcS', '512MB')],
-    'ValSysLat':       [SysConfig('micro_syscall.rcS', '512MB')],
-    'ValCtxLat':       [SysConfig('micro_ctx.rcS', '512MB')],
-    'ValStream':       [SysConfig('micro_stream.rcS', '512MB')],
-    'ValStreamScale':  [SysConfig('micro_streamscale.rcS', '512MB')],
-    'ValStreamCopy':   [SysConfig('micro_streamcopy.rcS', '512MB')],
+    'ValAccDelay':      [SysConfig('devtime.rcS', '512MB')],
+    'ValAccDelay2':     [SysConfig('devtimewmr.rcS', '512MB')],
+    'ValMemLat':        [SysConfig('micro_memlat.rcS', '512MB')],
+    'ValMemLat2MB':     [SysConfig('micro_memlat2mb.rcS', '512MB')],
+    'ValMemLat8MB':     [SysConfig('micro_memlat8mb.rcS', '512MB')],
+    'ValMemLat':        [SysConfig('micro_memlat8.rcS', '512MB')],
+    'ValTlbLat':        [SysConfig('micro_tlblat.rcS', '512MB')],
+    'ValSysLat':        [SysConfig('micro_syscall.rcS', '512MB')],
+    'ValCtxLat':        [SysConfig('micro_ctx.rcS', '512MB')],
+    'ValStream':        [SysConfig('micro_stream.rcS', '512MB')],
+    'ValStreamScale':   [SysConfig('micro_streamscale.rcS', '512MB')],
+    'ValStreamCopy':    [SysConfig('micro_streamcopy.rcS', '512MB')],
 
-    'bnAn': [SysConfig('/z/saidi/work/m5.newmem.head/configs/boot/bn-app.rcS',
-                       '128MB', '/z/saidi/work/bottleneck/bnimg.img')]
+    'MutexTest':        [SysConfig('mutex-test.rcS', '128MB')],
+    'ArmAndroid-GB':    [SysConfig('null.rcS', '256MB',
+                    'ARMv7a-Gingerbread-Android.SMP.mouse.nolock.clean.img',
+                    None, 'android-gingerbread')],
+    'bbench-gb':        [SysConfig('bbench-gb.rcS', '256MB',
+                            'ARMv7a-Gingerbread-Android.SMP.mouse.nolock.img',
+                            None, 'android-gingerbread')],
+    'ArmAndroid-ICS':   [SysConfig('null.rcS', '256MB',
+                            'ARMv7a-ICS-Android.SMP.nolock.clean.img',
+                            None, 'android-ics')],
+    'bbench-ics':       [SysConfig('bbench-ics.rcS', '256MB',
+                            'ARMv7a-ICS-Android.SMP.nolock.img',
+                            None, 'android-ics')]
 }
 
-benchs = Benchmarks.keys()
+benchs = list(Benchmarks.keys())
 benchs.sort()
 DefinedBenchmarks = ", ".join(benchs)