Lines Matching refs:options
75 def create(self, size, assoc, options):
85 def create(self, size, assoc, options):
92 def create(self, options, ruby_system, system):
96 self.L1Icache.create(options.l1i_size, options.l1i_assoc, options)
98 self.L1D0cache.create(options.l1d_size, options.l1d_assoc, options)
100 self.L1D1cache.create(options.l1d_size, options.l1d_assoc, options)
102 self.L2cache.create(options.l2_size, options.l2_assoc, options)
121 self.send_evictions = send_evicts(options)
125 if options.recycle_latency:
126 self.recycle_latency = options.recycle_latency
135 def create(self, options):
136 self.size = MemorySize(options.tcp_size)
141 self.resourceStalls = options.no_tcc_resource_stalls
146 def create(self, options, ruby_system, system):
148 self.L1cache = TCPCache(dataAccessLatency = options.TCP_latency)
149 self.L1cache.create(options)
170 if options.recycle_latency:
171 self.recycle_latency = options.recycle_latency
179 def create(self, options):
180 self.size = MemorySize(options.sqc_size)
181 self.assoc = options.sqc_assoc
186 def create(self, options, ruby_system, system):
189 self.L1cache.create(options)
199 if options.recycle_latency:
200 self.recycle_latency = options.recycle_latency
208 def create(self, options):
209 self.assoc = options.tcc_assoc
210 if hasattr(options, 'bw_scalor') and options.bw_scalor > 0:
211 s = options.num_compute_units
218 self.size = MemorySize(options.tcc_size)
219 self.dataArrayBanks = 256 / options.num_tccs #number of data banks
220 self.tagArrayBanks = 256 / options.num_tccs #number of tag banks
221 self.size.value = self.size.value / options.num_tccs
224 self.start_index_bit = math.log(options.cacheline_size, 2) + \
225 math.log(options.num_tccs, 2)
229 def create(self, options, ruby_system, system):
232 self.L2cache.create(options)
234 if options.recycle_latency:
235 self.recycle_latency = options.recycle_latency
241 def create(self, options, ruby_system, system):
242 self.size = MemorySize(options.l3_size)
243 self.size.value /= options.num_dirs
244 self.assoc = options.l3_assoc
245 self.dataArrayBanks /= options.num_dirs
246 self.tagArrayBanks /= options.num_dirs
247 self.dataArrayBanks /= options.num_dirs
248 self.tagArrayBanks /= options.num_dirs
249 self.dataAccessLatency = options.l3_data_latency
250 self.tagAccessLatency = options.l3_tag_latency
255 def create(self, options, ruby_system, system):
258 self.L3cache.create(options, ruby_system, system)
262 if options.recycle_latency:
263 self.recycle_latency = options.recycle_latency
278 def create(self, options, ruby_system, system):
280 phys_mem_size = AddrRange(options.mem_size).size()
281 mem_module_size = phys_mem_size / options.num_dirs
293 def create(self, options, ruby_system, system):
298 self.directory.create(options, ruby_system, system)
300 self.L3CacheMemory.create(options, ruby_system, system)
306 if options.recycle_latency:
307 self.recycle_latency = options.recycle_latency
321 def create(self, options, ruby_system, system):
322 self.block_size = "%dB" % (64 * options.blocks_per_region)
323 self.size = options.region_dir_entries * \
324 self.block_size * options.num_compute_units
327 self.tagAccessLatency = options.dir_tag_latency
329 self.resourceStalls = options.no_resource_stalls
330 self.start_index_bit = 6 + int(math.log(options.blocks_per_region, 2))
335 def create(self, options, ruby_system, system):
338 self.cacheMemory.create(options, ruby_system, system)
339 self.blocksPerRegion = options.blocks_per_region
344 self.always_migrate = options.always_migrate
345 self.sym_migrate = options.symmetric_migrate
346 self.asym_migrate = options.asymmetric_migrate
353 if options.recycle_latency:
354 self.recycle_latency = options.recycle_latency
367 def create(self, options, ruby_system, system):
370 self.cacheMemory.resourceStalls = options.no_tcc_resource_stalls
373 self.blocksPerRegion = options.blocks_per_region
377 self.cacheMemory.size = options.region_buffer_entries * \
378 self.cacheMemory.block_size * options.num_compute_units
379 self.toDirLatency = options.gpu_to_dir_latency
380 self.toRegionDirLatency = options.cpu_to_dir_latency
382 TCC_bits = int(math.log(options.num_tccs, 2))
386 if options.recycle_latency:
387 self.recycle_latency = options.recycle_latency
446 def create_system(options, full_system, system, dma_devices, bootmem,
462 TCC_bits = int(math.log(options.num_tccs, 2))
470 crossbar_bw = 16 * options.num_compute_units #Assuming a 2GHz clock
472 for i in range((options.num_cpus + 1) // 2):
475 cp_cntrl.create(options, ruby_system, system)
478 rb_cntrl.create(options, ruby_system, system)
538 for i in range(options.num_compute_units):
544 tcp_cntrl.create(options, ruby_system, system)
545 tcp_cntrl.WB = options.WB_L1
574 for i in range(options.num_sqc):
577 sqc_cntrl.create(options, ruby_system, system)
602 for i in range(options.num_tccs):
605 tcc_cntrl.create(options, ruby_system, system)
607 tcc_cntrl.l2_response_latency = options.TCC_latency
608 tcc_cntrl.WB = options.WB_L2
609 tcc_cntrl.number_of_TBEs = 2560 * options.num_compute_units
636 rb_cntrl.create(options, ruby_system, system)
637 rb_cntrl.number_of_TBEs = 2560 * options.num_compute_units
675 assert(options.num_l3caches == options.num_dirs == 1)
682 dir_cntrl.create(options, ruby_system, system)
683 dir_cntrl.number_of_TBEs = 2560 * options.num_compute_units
684 dir_cntrl.useL3OnWT = options.use_L3_on_WT
724 reg_cntrl.create(options, ruby_system, system)
725 reg_cntrl.number_of_TBEs = options.num_tbes