MOESI_hammer.py (9232:3bb99fab80d4) | MOESI_hammer.py (9318:dec0b284ded9) |
---|---|
1# Copyright (c) 2006-2007 The Regents of The University of Michigan 2# Copyright (c) 2009 Advanced Micro Devices, Inc. 3# All rights reserved. 4# 5# Redistribution and use in source and binary forms, with or without 6# modification, are permitted provided that the following conditions are 7# met: redistributions of source code must retain the above copyright 8# notice, this list of conditions and the following disclaimer; --- 131 unchanged lines hidden (view full) --- 140 # By default, the probe filter size is configured to be twice the 141 # size of the L2 cache. 142 # 143 pf_size = MemorySize(options.l2_size) 144 pf_size.value = pf_size.value * 2 145 dir_bits = int(math.log(options.num_dirs, 2)) 146 pf_bits = int(math.log(pf_size.value, 2)) 147 if options.numa_high_bit: | 1# Copyright (c) 2006-2007 The Regents of The University of Michigan 2# Copyright (c) 2009 Advanced Micro Devices, Inc. 3# All rights reserved. 4# 5# Redistribution and use in source and binary forms, with or without 6# modification, are permitted provided that the following conditions are 7# met: redistributions of source code must retain the above copyright 8# notice, this list of conditions and the following disclaimer; --- 131 unchanged lines hidden (view full) --- 140 # By default, the probe filter size is configured to be twice the 141 # size of the L2 cache. 142 # 143 pf_size = MemorySize(options.l2_size) 144 pf_size.value = pf_size.value * 2 145 dir_bits = int(math.log(options.num_dirs, 2)) 146 pf_bits = int(math.log(pf_size.value, 2)) 147 if options.numa_high_bit: |
148 if options.numa_high_bit > 0: | 148 if options.pf_on or options.dir_on: |
149 # if numa high bit explicitly set, make sure it does not overlap 150 # with the probe filter index 151 assert(options.numa_high_bit - dir_bits > pf_bits) 152 153 # set the probe filter start bit to just above the block offset | 149 # if numa high bit explicitly set, make sure it does not overlap 150 # with the probe filter index 151 assert(options.numa_high_bit - dir_bits > pf_bits) 152 153 # set the probe filter start bit to just above the block offset |
154 pf_start_bit = 6 | 154 pf_start_bit = block_size_bits |
155 else: 156 if dir_bits > 0: | 155 else: 156 if dir_bits > 0: |
157 pf_start_bit = dir_bits + 5 | 157 pf_start_bit = dir_bits + block_size_bits - 1 |
158 else: | 158 else: |
159 pf_start_bit = 6 | 159 pf_start_bit = block_size_bits |
160 161 for i in xrange(options.num_dirs): 162 # 163 # Create the Ruby objects associated with the directory controller 164 # 165 166 mem_cntrl = RubyMemoryControl(version = i, 167 ruby_system = ruby_system) --- 58 unchanged lines hidden --- | 160 161 for i in xrange(options.num_dirs): 162 # 163 # Create the Ruby objects associated with the directory controller 164 # 165 166 mem_cntrl = RubyMemoryControl(version = i, 167 ruby_system = ruby_system) --- 58 unchanged lines hidden --- |