Error when running simulations with >256 cpus

Description

Hello,

I am trying to run simulations with 512+ num-cpu and num-dirs. I have changed the default value of NUMBER_BITS_PER_SET in the SConstruct file to 8912. I have tried running the simulations with a command similar to this:

./build/ARM/gem5.opt configs/example/garnet_synth_traffic.py--num-cpus=512 --num-dirs=512 --network=garnet --topology=Mesh_XY --mesh-rows=32 --sim-cycles=10000000 --synthetic=uniform_random --routing-algorithm=1 --vcs-per-vnet=4 --injectionrate=0.5

However, I keep getting this issue:

Traceback (most recent call last):
File "<string>", line 1, in <module>
File "build/ARM/python/m5/main.py", line 457, in main
exec(filecode, scope)
File "/home/aw868/new_aw868_gem5/configs/example/garnet_synth_traffic.py", line 151, in <module>
m5.instantiate()
File "build/ARM/python/m5/simulate.py", line 118, in instantiate
for obj in root.descendants(): obj.createCCObject()
File "build/ARM/python/m5/SimObject.py", line 1684, in createCCObject
self.getCCParams()
File "build/ARM/python/m5/SimObject.py", line 1625, in getCCParams
value = value.getValue()
File "build/ARM/python/m5/params.py", line 250, in getValue
return [ v.getValue() for v in self ]
File "build/ARM/python/m5/params.py", line 250, in <listcomp>
return [ v.getValue() for v in self ]
File "build/ARM/python/m5/SimObject.py", line 1688, in getValue
return self.getCCObject()
File "build/ARM/python/m5/SimObject.py", line 1666, in getCCObject
params = self.getCCParams()
File "build/ARM/python/m5/SimObject.py", line 1625, in getCCParams
value = value.getValue()
File "build/ARM/python/m5/params.py", line 878, in getValue
return AddrRange(long(self.start), long(self.end),
TypeError: _init_(): incompatible constructor arguments. The following argument types are supported:
1. _m5.range.AddrRange()
2. _m5.range.AddrRange(arg0: int, arg1: int)
3. _m5.range.AddrRange(arg0: int, arg1: int, arg2: List[int], arg3: int)
4. _m5.range.AddrRange(arg0: std::vector<AddrRange, std::allocator<AddrRange> >)
5. _m5.range.AddrRange(arg0: int, arg1: int, arg2: int, arg3: int, arg4: int, arg5: int)

Invoked with: 0, 536870912, [1048640, 2097280, 4194560, 8389120, 16778240, 33556480, 67112960, 134225920, 268451840], 256

Did you forget to `#include <pybind11/stl.h>`? Or <pybind11/complex.h>,
<pybind11/functional.h>, <pybind11/chrono.h>, etc. Some automatic
conversions are optional and require extra headers to be included
when compiling your pybind11 module.

I have tried this with different types of topologies and different dimensions, but whenever I surpass 256 cores, I get the issue.

Environment

None

Activity

Show:
Jason Lowe-Power
April 12, 2021, 9:15 PM

Hmm… I’m not sure we “officially” support 256+ cores. That said, this is something I would like to support. I’m hoping we can find time to look into this soon. No specific timetable, though.

Assignee

Unassigned

Reporter

Angela Wei

Priority

Medium