[m5-users] no contention bus in detailed simulation

2009-11-27 Thread Joel Hestness
Hi,
  I recently pulled down the current m5-stable repository to do some
testing, and I patched it with my changes from our group's older repository
(versions below). When I try to run some of our tests, I get a segmentation
fault. I have traced it back to our modification the the bus in
./src/mem/bus.cc. We had modified calcPacketTiming so that we could simulate
a zero-latency/no-contention bus in detailed simulation (recvTiming). I am
not sure where to start debugging this problem. I have attached the gdb
output.
  Is there, perhaps, a better way to simulate a bus with no contention in
detailed simulation?

  Thanks,
  Joel

Revisions:
  Old: changeset:   5589:733318abb7b1
  Current: changeset:   6283:94c016415053

-- 
 Joel Hestness
 PhD Student, Computer Architecture
 Dept. of Computer Science, University of Texas - Austin
 http://www.cs.utexas.edu/~hestness
gdb --args ./build/ALPHA_FS/m5.debug --trace-flags=Bus 
--trace-start=182876000 --trace-file=tracelog.txt ./configs/example/fs.py 
--script=../m5-parsec/bash-m5/test.rcS --detailed --caches --l2cache 
--fast-forward=100

j...@capillary:~/research/m5-stable$ gdb --args ./build/ALPHA_FS/m5.debug 
--trace-flags=Bus --trace-start=182876000 --trace-file=tracelog.txt 
./configs/example/fs.py --script=../m5-parsec/bash-m5/test.rcS --detailed 
--caches --l2cache --fast-forward=1
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type show copying
and show warranty for details.
This GDB was configured as i486-linux-gnu...
(gdb) run
Starting program: /home/joel/research/m5-stable/build/ALPHA_FS/m5.debug 
--trace-flags=Bus --trace-start=182876000 --trace-file=tracelog.txt 
./configs/example/fs.py --script=../m5-parsec/bash-m5/test.rcS --detailed 
--caches --l2cache --fast-forward=1
[Thread debugging using libthread_db enabled]
[New Thread 0xb7a9d8e0 (LWP 3241)]
M5 Simulator System

Copyright (c) 2001-2008
The Regents of The University of Michigan
All Rights Reserved


M5 compiled Nov 27 2009 01:36:44
M5 revision 94c016415053+ 6283+ default tip
M5 started Nov 27 2009 01:40:21
M5 executing on capillary
command line: /home/joel/research/m5-stable/build/ALPHA_FS/m5.debug 
--trace-flags=Bus --trace-start=182876000 --trace-file=tracelog.txt 
./configs/example/fs.py --script=../m5-parsec/bash-m5/test.rcS --detailed 
--caches --l2cache --fast-forward=1
Global frequency set at 1 ticks per second
info: kernel located at: /home/joel/research/m5-parsec/binaries/vmlinux
Listening for system connection on port 3456
0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000
Switch at instruction count:1
info: Entering event queue @ 0.  Starting simulation...
hack: be nice to actually delete the event here
Switched CPUS @ cycle = 1828747071000
Changing memory mode to timing
switching cpus
 REAL SIMULATION 
info: Entering event queue @ 1828747071000.  Starting simulation...

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7a9d8e0 (LWP 3241)]
0x080befe0 in std::listPacket*, std::allocatorPacket* ::empty (this=0x4) at 
/usr/include/c++/4.3/bits/stl_list.h:759
759   { return this-_M_impl._M_node._M_next == this-_M_impl._M_node; 
}
(gdb) info stack
#0  0x080befe0 in std::listPacket*, std::allocatorPacket* ::empty 
(this=0x4) at /usr/include/c++/4.3/bits/stl_list.h:759
#1  0x080b8f03 in BasePrefetcher::getPacket (this=0x0) at 
build/ALPHA_FS/mem/cache/prefetch/base.cc:134
#2  0x08112493 in CacheLRU::getNextMSHR (this=0x9d655a0) at 
build/ALPHA_FS/mem/cache/cache_impl.hh:1307
#3  0x08112532 in CacheLRU::getTimingPacket (this=0x9d655a0) at 
build/ALPHA_FS/mem/cache/cache_impl.hh:1325
#4  0x08112744 in CacheLRU::MemSidePort::sendPacket (this=0x9d93790) at 
build/ALPHA_FS/mem/cache/cache_impl.hh:1518
#5  0x0811364e in CacheLRU::MemSidePort::processSendEvent (this=0x9d93790) at 
build/ALPHA_FS/mem/cache/cache_impl.hh:1575
#6  0x0810a41c in EventWrapperCacheLRU::MemSidePort, 
(CacheLRU::MemSidePort::processSendEvent())::process (this=0x9456df0)
at build/ALPHA_FS/sim/eventq.hh:468
#7  0x082233de in EventQueue::serviceOne (this=0x884eeb8) at 
build/ALPHA_FS/sim/eventq.cc:202
#8  0x08587dcc in simulate (num_cycles=9223372036854775807) at 
build/ALPHA_FS/sim/simulate.cc:73
#9  0x085fa28d in _wrap_simulate__SWIG_0 (args=0x9435acc) at 
build/ALPHA_FS/python/swig/event_wrap.cc:4156
#10 0x085fa395 in _wrap_simulate (self=0x0, args=0x9435acc) at 
build/ALPHA_FS/python/swig/event_wrap.cc:4206
#11 0xb7dadaed in PyCFunction_Call () from /usr/lib/libpython2.6.so.1.0
#12 0xb7d6798c in PyObject_Call () from /usr/lib/libpython2.6.so.1.0
#13 0xb7e0d0b5 in PyEval_EvalFrameEx () from /usr/lib/libpython2.6.so.1.0
#14 0xb7e11910 in 

Re: [m5-users] no contention bus in detailed simulation

2009-11-27 Thread Joel Hestness
and the attachment...

On Fri, Nov 27, 2009 at 6:31 PM, Joel Hestness hestn...@cs.utexas.eduwrote:

 Hi Steve,
   Thanks for the quick response.  I tried the m5 repository and ran into
 the same issue.
   I have attached the updated src/mem/bus.cc that we had in our old source.
  The changes that cause the problem are in calcPacketTiming, updating
 tickNextIdle and the packet firstWordTime and finishTime.
   Thanks,
   Joel


 On Fri, Nov 27, 2009 at 4:14 PM, Steve Reinhardt ste...@gmail.com wrote:

 This bug may or may not be related to your changes; there were a
 number of prefetcher bugs that I worked through a while ago and I'm
 not sure if they're in m5-stable or not..  In general, m5-stable is
 pretty stale and we haven't been very good about pushing bug fixes
 there, so if you're trying to bring your code up to date it's much
 better to go with the main m5 repository than m5-stable.  If you still
 have trouble at that point, let us know.

 Steve

 On Fri, Nov 27, 2009 at 12:32 PM, Joel Hestness hestn...@cs.utexas.edu
 wrote:
  Hi,
I recently pulled down the current m5-stable repository to do some
  testing, and I patched it with my changes from our group's older
 repository
  (versions below). When I try to run some of our tests, I get a
 segmentation
  fault. I have traced it back to our modification the the bus in
  ./src/mem/bus.cc. We had modified calcPacketTiming so that we could
 simulate
  a zero-latency/no-contention bus in detailed simulation (recvTiming). I
 am
  not sure where to start debugging this problem. I have attached the gdb
  output.
Is there, perhaps, a better way to simulate a bus with no contention
 in
  detailed simulation?
Thanks,
Joel
  Revisions:
Old: changeset:   5589:733318abb7b1
Current: changeset:   6283:94c016415053
 
  --
   Joel Hestness
   PhD Student, Computer Architecture
   Dept. of Computer Science, University of Texas - Austin
   http://www.cs.utexas.edu/~hestness
 
  ___
  m5-users mailing list
  m5-users@m5sim.org
  http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
 
 ___
 m5-users mailing list
 m5-users@m5sim.org
 http://m5sim.org/cgi-bin/mailman/listinfo/m5-users




 --
  Joel Hestness
  PhD Student, Computer Architecture
  Dept. of Computer Science, University of Texas - Austin
  http://www.cs.utexas.edu/~hestness




-- 
 Joel Hestness
 PhD Student, Computer Architecture
 Dept. of Computer Science, University of Texas - Austin
 http://www.cs.utexas.edu/~hestness


bus.cc
Description: Binary data
___
m5-users mailing list
m5-users@m5sim.org
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users