summaryrefslogtreecommitdiff
path: root/configs/ruby/GPU_VIPER.py
diff options
context:
space:
mode:
Diffstat (limited to 'configs/ruby/GPU_VIPER.py')
-rw-r--r--configs/ruby/GPU_VIPER.py53
1 files changed, 53 insertions, 0 deletions
diff --git a/configs/ruby/GPU_VIPER.py b/configs/ruby/GPU_VIPER.py
index 94dcbefe3..e8e781562 100644
--- a/configs/ruby/GPU_VIPER.py
+++ b/configs/ruby/GPU_VIPER.py
@@ -499,6 +499,59 @@ def create_system(options, full_system, system, dma_devices, bootmem,
cpuCluster.add(cp_cntrl)
+ # Register CPUs and caches for each CorePair and directory (SE mode only)
+ if not full_system:
+ FileSystemConfig.config_filesystem(options)
+ for i in xrange((options.num_cpus + 1) // 2):
+ FileSystemConfig.register_cpu(physical_package_id = 0,
+ core_siblings = \
+ xrange(options.num_cpus),
+ core_id = i*2,
+ thread_siblings = [])
+
+ FileSystemConfig.register_cpu(physical_package_id = 0,
+ core_siblings = \
+ xrange(options.num_cpus),
+ core_id = i*2+1,
+ thread_siblings = [])
+
+ FileSystemConfig.register_cache(level = 0,
+ idu_type = 'Instruction',
+ size = options.l1i_size,
+ line_size = options.cacheline_size,
+ assoc = options.l1i_assoc,
+ cpus = [i*2, i*2+1])
+
+ FileSystemConfig.register_cache(level = 0,
+ idu_type = 'Data',
+ size = options.l1d_size,
+ line_size = options.cacheline_size,
+ assoc = options.l1d_assoc,
+ cpus = [i*2])
+
+ FileSystemConfig.register_cache(level = 0,
+ idu_type = 'Data',
+ size = options.l1d_size,
+ line_size = options.cacheline_size,
+ assoc = options.l1d_assoc,
+ cpus = [i*2+1])
+
+ FileSystemConfig.register_cache(level = 1,
+ idu_type = 'Unified',
+ size = options.l2_size,
+ line_size = options.cacheline_size,
+ assoc = options.l2_assoc,
+ cpus = [i*2, i*2+1])
+
+ for i in range(options.num_dirs):
+ FileSystemConfig.register_cache(level = 2,
+ idu_type = 'Unified',
+ size = options.l3_size,
+ line_size = options.cacheline_size,
+ assoc = options.l3_assoc,
+ cpus = [n for n in
+ xrange(options.num_cpus)])
+
gpuCluster = None
if hasattr(options, 'bw_scalor') and options.bw_scalor > 0:
gpuCluster = Cluster(extBW = crossbar_bw, intBW = crossbar_bw)