[gem5-users] Re: regarding ERRORS in building of X86 ISA

2021-09-08 Thread Bobby Bruce via gem5-users
Sravani,

You have been posting very frequently to this mailing list asking for help
and, on at least two occasions, have ignored the feedback given to you.
While we want to help new gem5 users, we cannot hold your hand through
every problem. In case you are unaware, the gem5-users list is maintained
by volunteers within the gem5 community who kindly give up their time to
help others. Please keep this in mind before going directly to this list
for assistance.

Furthermore, if there are future questions to be asked, please copy and
paste the text of the error messages you receive rather than take a
screenshot.

Kind regards,
Bobby
--
Dr. Bobby R. Bruce
Room 3050,
Kemper Hall, UC Davis
Davis,
CA, 95616

web: https://www.bobbybruce.net


On Wed, Sep 8, 2021 at 12:14 AM Sravani Sravanam 20PHD7041 via gem5-users <
gem5-users@gem5.org> wrote:

> sir,
> i am sravani sravanam, a phd scholar in vit-ap university.in using gem5 i
> first CREATED THE ENVIRONMENT by using
> https://www.gem5.org/documentation/general_docs/building link.and then i
> tried to build X86 ISA.but i am getting error like
> scons: *** No SConstruct file found.
> File "/usr/lib/scons/SCons/Script/Main.py", line 940, in _main
> and i am attaching the screenshot of it.please check it.
> I am running gem5 in a virtual machine on my laptop.is it ok sir?
> please help me
> thank you
> sravani sravanam
> vit-ap university.
> ___
> gem5-users mailing list -- gem5-users@gem5.org
> To unsubscribe send an email to gem5-users-le...@gem5.org
> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
___
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

[gem5-users] gem5 v21.1.0.1 hotfix release: Fix for 'deprecated attribute' warning

2021-09-08 Thread Bobby Bruce via gem5-users
Dear all,

The stable branch of the gem5 repository now contains the v21.1.0.1 hotfix
release. This release fixes a bug where the build output was being flooded
with "'deprecated' attribute directive ignored" warnings, as reported here:
https://gem5.atlassian.net/browse/GEM5-1063. While this bug never broke the
gem5 build, it was making reading the build output hard and was causing
confusion.

Kind regards,
Bobby
--
Dr. Bobby R. Bruce
Room 3050,
Kemper Hall, UC Davis
Davis,
CA, 95616

web: https://www.bobbybruce.net
___
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

[gem5-users] Re: --take-checkpoints flag

2021-09-08 Thread Jason Lowe-Power via gem5-users
Hi Sam,

I would *guess* it's the draining code getting stuck in an infinite loop.
The draining code calls "drain" on all SimObjects in the system, and they
do their thing. Then, the drain code asks all SimObjects if they're done
draining. If not, it starts over and calls drain on all objects again. If
some object isn't draining properly or if there is some circular
dependence, there could be a "live lock" in this code. Just a guess, though.

Cheers,
Jason

On Wed, Sep 8, 2021 at 10:00 AM Thomas, Samuel 
wrote:

> Hi Jason,
>
> Thanks for your help. I think I've honed in on the source of the problem
> -- namely, number of cpus. Is there a reason why having multiple CPUs in a
> particular configuration would limit the simulator's ability to write a
> checkpoint?
>
> Again, thank you for your help!
>
> Best,
> Sam
>
> On Wed, Sep 8, 2021 at 11:12 AM Jason Lowe-Power 
> wrote:
>
>> Hi Sam,
>>
>> Sorry for the frustration. Writing better documentation is always #2 on
>> the priority list :(.
>>
>> I always tell people not to trust any of the "options" to fs.py and
>> se.py. Those scripts have gotten so far beyond "out of hand" at this point
>> that they are almost useless. They are trying to be everything to everyone,
>> and they end up just being a mess of spaghetti code and confusion.
>>
>> To take a checkpoint, you can add the following code to a python
>> runscript:
>>
>> m5.simulate(1)
>> m5.checkpoint()
>> m5.simulate(2)
>> m5.checkpoint()
>>
>> I tested the above code by adding it to the
>> configs/learning_gem5/part1/two_level.py file.
>>
>> *Maybe* this is what --take-checkpoints is doing. It's certainly what it
>> was *supposed* to do, but again, since this code has gotten so out of hand,
>> who knows if it's actually doing what it advertises.
>>
>> If you want to use the m5ops to checkpoint, the code would look
>> something like the following (this isn't tested and it's off the top of my
>> head).
>>
>> while 1:
>>   exit_event = m5.simulate()
>>   if exit_event.getCause() == 'checkpoint'):
>> m5.checkpoint(m5.outdir + '/' + str(num))
>>   else:
>> break
>>
>> To restore from a checkpoint, pass the checkpoint directory as the only
>> parameter to m5.instantiate(ckpt_dir=).
>>
>> Hope this helps! If you're still experiencing a hang in this case, it's
>> probably a bug in the drain() code somewhere. You can try to use one of the
>> drain debug flags (I don't know exactly what these are... check gem5
>> --debug-help for a list of debug flags). Making the python runscript do
>> exactly what you expect will also help with debugging. When you control the
>> script, adding prints is easy, too!
>>
>> Finally, the file src/python/m5/simulate.py may be helpful to figure out
>> what's going on when instantiating, simulating, checkpointing, etc.
>>
>> Cheers,
>> Jason
>>
>> On Wed, Sep 8, 2021 at 6:14 AM Thomas, Samuel via gem5-users <
>> gem5-users@gem5.org> wrote:
>>
>>> Hi all,
>>>
>>> Just to follow up, because I can see that there have been some issues
>>> with not including all of the requisite issues in other threads, here is
>>> the full output from what I described above.
>>>
>>> gem5 Simulator System.  http://gem5.org
>>> gem5 is copyrighted software; use the --copyright option for details.
>>>
>>> gem5 version 21.1.0.0
>>> gem5 compiled Sep  7 2021 19:28:16
>>> gem5 started Sep  8 2021 09:09:11
>>> gem5 executing on sam-Precision-Tower-5810, pid 445665
>>> command line: build/X86/gem5.opt -d $CURR_DIR/debug
>>> $CURR_DIR/configs/example/fs.py --caches --l2cache --mem-type DDR3_1600_8x8
>>> --mem-size 2GB --meta-size 512kB --num-cpus 4 --disk-image $DISK_PATH
>>> --kernel $KERNEL_PATH --cpu-type $CPU_TYPE --script=$SCRIPT_PATH
>>> --l2_size=1MB --take-checkpoints=1,2
>>>
>>> warn: iobus.slave is deprecated. `slave` is now called `cpu_side_ports`
>>> warn: bridge.master is deprecated. `master` is now called `mem_side_port`
>>> warn: membus.master is deprecated. `master` is now called
>>> `mem_side_ports`
>>> warn: bridge.slave is deprecated. `slave` is now called `cpu_side_port`
>>> warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
>>> warn: apicbridge.slave is deprecated. `slave` is now called
>>> `cpu_side_port`
>>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>>> warn: apicbridge.master is deprecated. `master` is now called
>>> `mem_side_port`
>>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>>> warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
>>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>>> warn: tol2bus.master is deprecated. `master` is now called
>>> `mem_side_ports`
>>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>>> warn: tol2bus.slave is deprecated. 

[gem5-users] Re: --take-checkpoints flag

2021-09-08 Thread Thomas, Samuel via gem5-users
Hi Jason,

Thanks for your help. I think I've honed in on the source of the problem --
namely, number of cpus. Is there a reason why having multiple CPUs in a
particular configuration would limit the simulator's ability to write a
checkpoint?

Again, thank you for your help!

Best,
Sam

On Wed, Sep 8, 2021 at 11:12 AM Jason Lowe-Power 
wrote:

> Hi Sam,
>
> Sorry for the frustration. Writing better documentation is always #2 on
> the priority list :(.
>
> I always tell people not to trust any of the "options" to fs.py and se.py.
> Those scripts have gotten so far beyond "out of hand" at this point that
> they are almost useless. They are trying to be everything to everyone, and
> they end up just being a mess of spaghetti code and confusion.
>
> To take a checkpoint, you can add the following code to a python runscript:
>
> m5.simulate(1)
> m5.checkpoint()
> m5.simulate(2)
> m5.checkpoint()
>
> I tested the above code by adding it to the
> configs/learning_gem5/part1/two_level.py file.
>
> *Maybe* this is what --take-checkpoints is doing. It's certainly what it
> was *supposed* to do, but again, since this code has gotten so out of hand,
> who knows if it's actually doing what it advertises.
>
> If you want to use the m5ops to checkpoint, the code would look
> something like the following (this isn't tested and it's off the top of my
> head).
>
> while 1:
>   exit_event = m5.simulate()
>   if exit_event.getCause() == 'checkpoint'):
> m5.checkpoint(m5.outdir + '/' + str(num))
>   else:
> break
>
> To restore from a checkpoint, pass the checkpoint directory as the only
> parameter to m5.instantiate(ckpt_dir=).
>
> Hope this helps! If you're still experiencing a hang in this case, it's
> probably a bug in the drain() code somewhere. You can try to use one of the
> drain debug flags (I don't know exactly what these are... check gem5
> --debug-help for a list of debug flags). Making the python runscript do
> exactly what you expect will also help with debugging. When you control the
> script, adding prints is easy, too!
>
> Finally, the file src/python/m5/simulate.py may be helpful to figure out
> what's going on when instantiating, simulating, checkpointing, etc.
>
> Cheers,
> Jason
>
> On Wed, Sep 8, 2021 at 6:14 AM Thomas, Samuel via gem5-users <
> gem5-users@gem5.org> wrote:
>
>> Hi all,
>>
>> Just to follow up, because I can see that there have been some issues
>> with not including all of the requisite issues in other threads, here is
>> the full output from what I described above.
>>
>> gem5 Simulator System.  http://gem5.org
>> gem5 is copyrighted software; use the --copyright option for details.
>>
>> gem5 version 21.1.0.0
>> gem5 compiled Sep  7 2021 19:28:16
>> gem5 started Sep  8 2021 09:09:11
>> gem5 executing on sam-Precision-Tower-5810, pid 445665
>> command line: build/X86/gem5.opt -d $CURR_DIR/debug
>> $CURR_DIR/configs/example/fs.py --caches --l2cache --mem-type DDR3_1600_8x8
>> --mem-size 2GB --meta-size 512kB --num-cpus 4 --disk-image $DISK_PATH
>> --kernel $KERNEL_PATH --cpu-type $CPU_TYPE --script=$SCRIPT_PATH
>> --l2_size=1MB --take-checkpoints=1,2
>>
>> warn: iobus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: bridge.master is deprecated. `master` is now called `mem_side_port`
>> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
>> warn: bridge.slave is deprecated. `slave` is now called `cpu_side_port`
>> warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
>> warn: apicbridge.slave is deprecated. `slave` is now called
>> `cpu_side_port`
>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: apicbridge.master is deprecated. `master` is now called
>> `mem_side_port`
>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.master is deprecated. `master` is now called
>> `mem_side_ports`
>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
>> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
>> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
>> warn: tol2bus.slave is deprecated. `slave` is now called 

[gem5-users] Re: Is it ok to remove `maxRoutingTableSizeCheck`?

2021-09-08 Thread Jason Lowe-Power via gem5-users
Hi Emil,

You can remove that check. However, you should note that the classic caches
aren't designed to support high-bandwidth operation. Also, this assert
triggering could be a sign that there's infinite queuing somewhere (which
is one reason why the classic caches aren't great for high bandwidth
systems).

Cheers,
Jason

On Wed, Sep 8, 2021 at 3:48 AM Emil VATAI via gem5-users <
gem5-users@gem5.org> wrote:

> Hi,
>
> We are trying to do some simulations. We are using a simulator based on an
> old version of Gem5 ([1] created to simulate a64fx chip).
> We made some further modifications, namely replaced `SnoopMask` to be of
> type `std::bitset<>` to be able to run more-or-less arbitrary number of
> cores. And running with more cores resulted in triggering the following
> panic in `coherent_xbar.cc` (it occurs 2x in the code, around line 330 and
> 400 [3], not sure which one was triggered).
> ```
> panic_if(routeTo.size() > 512, "Routing table exceeds 512 packets\n");
> ```
> comparing this to a more recent version of gem5 the constant 512 seems to
> be the `maxRoutingTableSizeCheck` variable [4].
>
> My question is, how important is that check? How will it impact the
> simulation? Will it still be a "correct" simulation (or will skipping that
> check do something silly, like skip simulation half of the memory writes or
> something like that).
>
> Best,
> Emil
>
> [1] https://github.com/RIKEN-RCCS/riken_simulator
> [2] https://github.com/bgerofi/riken_simulator/
> [3]
> https://github.com/bgerofi/riken_simulator/blob/1f6627cf95688c508b73c8ead6838aa1f843f436/src/mem/coherent_xbar.cc#L339
> [4]
> https://github.com/gem5/gem5/blob/87c121fd954ea5a6e6b0760d693a2e744c2200de/src/mem/coherent_xbar.cc#L346
> ___
> gem5-users mailing list -- gem5-users@gem5.org
> To unsubscribe send an email to gem5-users-le...@gem5.org
> %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
>
___
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

[gem5-users] Re: --take-checkpoints flag

2021-09-08 Thread Jason Lowe-Power via gem5-users
Hi Sam,

Sorry for the frustration. Writing better documentation is always #2 on the
priority list :(.

I always tell people not to trust any of the "options" to fs.py and se.py.
Those scripts have gotten so far beyond "out of hand" at this point that
they are almost useless. They are trying to be everything to everyone, and
they end up just being a mess of spaghetti code and confusion.

To take a checkpoint, you can add the following code to a python runscript:

m5.simulate(1)
m5.checkpoint()
m5.simulate(2)
m5.checkpoint()

I tested the above code by adding it to the
configs/learning_gem5/part1/two_level.py file.

*Maybe* this is what --take-checkpoints is doing. It's certainly what it
was *supposed* to do, but again, since this code has gotten so out of hand,
who knows if it's actually doing what it advertises.

If you want to use the m5ops to checkpoint, the code would look
something like the following (this isn't tested and it's off the top of my
head).

while 1:
  exit_event = m5.simulate()
  if exit_event.getCause() == 'checkpoint'):
m5.checkpoint(m5.outdir + '/' + str(num))
  else:
break

To restore from a checkpoint, pass the checkpoint directory as the only
parameter to m5.instantiate(ckpt_dir=).

Hope this helps! If you're still experiencing a hang in this case, it's
probably a bug in the drain() code somewhere. You can try to use one of the
drain debug flags (I don't know exactly what these are... check gem5
--debug-help for a list of debug flags). Making the python runscript do
exactly what you expect will also help with debugging. When you control the
script, adding prints is easy, too!

Finally, the file src/python/m5/simulate.py may be helpful to figure out
what's going on when instantiating, simulating, checkpointing, etc.

Cheers,
Jason

On Wed, Sep 8, 2021 at 6:14 AM Thomas, Samuel via gem5-users <
gem5-users@gem5.org> wrote:

> Hi all,
>
> Just to follow up, because I can see that there have been some issues with
> not including all of the requisite issues in other threads, here is the
> full output from what I described above.
>
> gem5 Simulator System.  http://gem5.org
> gem5 is copyrighted software; use the --copyright option for details.
>
> gem5 version 21.1.0.0
> gem5 compiled Sep  7 2021 19:28:16
> gem5 started Sep  8 2021 09:09:11
> gem5 executing on sam-Precision-Tower-5810, pid 445665
> command line: build/X86/gem5.opt -d $CURR_DIR/debug
> $CURR_DIR/configs/example/fs.py --caches --l2cache --mem-type DDR3_1600_8x8
> --mem-size 2GB --meta-size 512kB --num-cpus 4 --disk-image $DISK_PATH
> --kernel $KERNEL_PATH --cpu-type $CPU_TYPE --script=$SCRIPT_PATH
> --l2_size=1MB --take-checkpoints=1,2
>
> warn: iobus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: bridge.master is deprecated. `master` is now called `mem_side_port`
> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
> warn: bridge.slave is deprecated. `slave` is now called `cpu_side_port`
> warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
> warn: apicbridge.slave is deprecated. `slave` is now called `cpu_side_port`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: apicbridge.master is deprecated. `master` is now called
> `mem_side_port`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.master is deprecated. `master` is now called `mem_side_ports`
> warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
> warn: tol2bus.slave 

[gem5-users] Re: --take-checkpoints flag

2021-09-08 Thread Thomas, Samuel via gem5-users
Hi all,

Just to follow up, because I can see that there have been some issues with
not including all of the requisite issues in other threads, here is the
full output from what I described above.

gem5 Simulator System.  http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.

gem5 version 21.1.0.0
gem5 compiled Sep  7 2021 19:28:16
gem5 started Sep  8 2021 09:09:11
gem5 executing on sam-Precision-Tower-5810, pid 445665
command line: build/X86/gem5.opt -d $CURR_DIR/debug
$CURR_DIR/configs/example/fs.py --caches --l2cache --mem-type DDR3_1600_8x8
--mem-size 2GB --meta-size 512kB --num-cpus 4 --disk-image $DISK_PATH
--kernel $KERNEL_PATH --cpu-type $CPU_TYPE --script=$SCRIPT_PATH
--l2_size=1MB --take-checkpoints=1,2

warn: iobus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: bridge.master is deprecated. `master` is now called `mem_side_port`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: bridge.slave is deprecated. `slave` is now called `cpu_side_port`
warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
warn: apicbridge.slave is deprecated. `slave` is now called `cpu_side_port`
warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: apicbridge.master is deprecated. `master` is now called
`mem_side_port`
warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: iobus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: tol2bus.slave is deprecated. `slave` is now called `cpu_side_ports`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.master is deprecated. `master` is now called `mem_side_ports`
warn: membus.slave is deprecated. `slave` is now called `cpu_side_ports`
Global frequency set at 1 ticks per second
warn: system.workload.acpi_description_table_pointer.rsdt adopting orphan
SimObject param 'entries'
[Detaching after fork from child process 445724]
[Detaching after fork from child process 445725]
build/X86/mem/mem_interface.cc:792: warn: DRAM device capacity (8192
Mbytes) does not match the address range assigned (2048 Mbytes)
build/X86/sim/kernel_workload.cc:46: info: kernel located at:
/home/sam/Desktop/clean-gem5/gem5/_dist/binaries/x86_64-vmlinux-2.6.22.9
  0: system.pc.south_bridge.cmos.rtc: Real-time clock set to Sun Jan  1
00:00:00 2012
system.pc.com_1.device: Listening for connections on port 3464
0: system.remote_gdb: listening for remote gdb on port 7008
build/X86/dev/intel_8254_timer.cc:125: warn: Reading current count from
inactive timer.
 REAL SIMULATION 
build/X86/sim/simulate.cc:107: info: Entering event queue @ 0.  Starting
simulation...
Exiting @ tick 1 because simulate() limit reached
build/X86/sim/simulate.cc:107: info: Entering event queue @ 1.
Starting simulation...


At this point, the program hangs, and occupies the ports until I manually
reset it even after killing the terminal 

[gem5-users] Is it ok to remove `maxRoutingTableSizeCheck`?

2021-09-08 Thread Emil VATAI via gem5-users
Hi,

We are trying to do some simulations. We are using a simulator based on an old 
version of Gem5 ([1] created to simulate a64fx chip).
We made some further modifications, namely replaced `SnoopMask` to be of type 
`std::bitset<>` to be able to run more-or-less arbitrary number of cores. And 
running with more cores resulted in triggering the following panic in 
`coherent_xbar.cc` (it occurs 2x in the code, around line 330 and 400 [3], not 
sure which one was triggered).
```
panic_if(routeTo.size() > 512, "Routing table exceeds 512 packets\n");
```
comparing this to a more recent version of gem5 the constant 512 seems to be 
the `maxRoutingTableSizeCheck` variable [4].

My question is, how important is that check? How will it impact the simulation? 
Will it still be a "correct" simulation (or will skipping that check do 
something silly, like skip simulation half of the memory writes or something 
like that).

Best,
Emil

[1] https://github.com/RIKEN-RCCS/riken_simulator
[2] https://github.com/bgerofi/riken_simulator/
[3] 
https://github.com/bgerofi/riken_simulator/blob/1f6627cf95688c508b73c8ead6838aa1f843f436/src/mem/coherent_xbar.cc#L339
[4] 
https://github.com/gem5/gem5/blob/87c121fd954ea5a6e6b0760d693a2e744c2200de/src/mem/coherent_xbar.cc#L346
___
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s


[gem5-users] Different values for different versions

2021-09-08 Thread raulgv--- via gem5-users
Hi everyone,
I am looking to work on 2 computers with different versions of gem5. When I 
have transferred the same executable from one PC to another and have tried the 
execution with the same command, they have given me different values in the L1 
cache. The command I ran was:
~/gem5/build/ARM/gem5.opt ~/gem5/configs/example/se.py --cpu-type=O3_ARM_v7a_3 
--num-cpus=1 --cpu-clock=1GHz --mem-size=500MB --caches --l1d_size=32kB 
--l1i_size=32kB --l1d_assoc=1 --l1i_assoc=1 --cacheline_size=32 -c file.arm
My question is what have I done wrong? How do I define the same machine for 
both versions of gem5?
Thanks in advance
#New
system.cpu.dcache.ReadReq.hits::total 4.527.099 # number of ReadReq hits (Count)
system.cpu.dcache.ReadReq.misses::total 1.440 # number of ReadReq misses (Count)
system.cpu.icache.ReadReq.hits::total 1.823.5251 # number of ReadReq hits 
(Count)
system.cpu.icache.ReadReq.misses::total 4.950 # number of ReadReq misses (Count)

#Old
system.cpu.dcache.ReadReq_hits::total 1.001.163 # number of ReadReq hits
system.cpu.dcache.ReadReq_misses::total 101 # number of ReadReq misses
system.cpu.icache.ReadReq_hits::total 6.016.930 # number of ReadReq hits
system.cpu.icache.ReadReq_misses::total 384 # number of ReadReq misses
___
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

[gem5-users] Re: regarding ERRORS in building of X86 ISA

2021-09-08 Thread Gabriel Busnot via gem5-users
What about running scons inside the gem5 directory instead of your home 
directory? And don't run it with sudo.
___
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s