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 ---