Hi all, Is the prefetching module written within ruby is stable with the present ruby setup? I found a seg fault when i tried running ruby with enable_prefetch = True for MESI_CMP_directory.py.
*command:* ./build/ALPHA/gem5.opt configs/example/ruby_fs.py -n 4 --l1i_size=32kB --l1d_size=32kB --l2_size=512MB --num-l2caches=4 --topology=Mesh --num-dirs=4 --mesh-rows=2 --mem-size=1024MB --cpu-type=detailed --script=../../PAR_PRE/ request/m5parsec/bodytrack_4c_simlarge.rcS *output from gdb:* Program received signal SIGSEGV, Segmentation fault. MessageBuffer::enqueue (this=0x3391340, message=..., delay=...) at build/ALPHA/mem/ruby/buffers/MessageBuffer.cc:159 159 if (m_time_last_time_enqueue < m_receiver_ptr->curCycle()) { (gdb) bt #0 MessageBuffer::enqueue (this=0x3391340, message=..., delay=...) at build/ALPHA/mem/ruby/buffers/MessageBuffer.cc:159 #1 0x0000000000b4195f in L1Cache_Controller::enqueuePrefetch (this=0x322da10, param_address=..., param_type=@0x322be8c) at build/ALPHA/mem/protocol/L1Cache_Controller.cc:1394 #2 0x0000000000c6e016 in Prefetcher::initializeStream (this=0x322acb0, address=<optimized out>, stride=1, index=<optimized out>, type=<optimized out>) at build/ALPHA/mem/ruby/structures/Prefetcher.cc:318 #3 0x0000000000c7095a in Prefetcher::observeMiss (this=0x322acb0, address=..., type=@0x2734a88) at build/ALPHA/mem/ruby/structures/Prefetcher.cc:171 #4 0x0000000000b3ef41 in L1Cache_Controller::po_observeMiss (this=0x322da10, m_tbe_ptr=<optimized out>, m_cache_entry_ptr=<optimized out>, addr=<optimized out>) at build/ALPHA/mem/protocol/L1Cache_Controller.cc:1187 #5 0x0000000000b5df63 in L1Cache_Controller::doTransitionWorker (this=0x322da10, event=L1Cache_Event_Ifetch, state=L1Cache_State_FIRST, next_state=<optimized out>, m_tbe_ptr=@0x7fffffffbf58, m_cache_entry_ptr=@0x7fffffffbf60, addr=...) at build/ALPHA/mem/protocol/L1Cache_Transitions.cc:194 #6 0x0000000000b5f2f1 in L1Cache_Controller::doTransition (this=0x322da10, event=L1Cache_Event_Ifetch, m_cache_entry_ptr=0x27e34a0, m_tbe_ptr=0x27d7ae8, addr=...) at build/ALPHA/mem/protocol/L1Cache_Transitions.cc:36 #7 0x0000000000b64cfc in L1Cache_Controller::wakeup (this=0x322da10) at build/ALPHA/mem/protocol/L1Cache_Wakeup.cc:633 #8 0x0000000000bb4c52 in Consumer::ConsumerEvent::process (this=0x27954a0) at build/ALPHA/mem/ruby/common/Consumer.hh:108 #9 0x00000000008e73b6 in EventQueue::serviceOne (this=<optimized out>) at build/ALPHA/sim/eventq.cc:207 #10 0x0000000000927330 in simulate (num_cycles=<optimized out>) at build/ALPHA/sim/simulate.cc:72 #11 0x000000000088fb2c in _wrap_simulate__SWIG_0 (args=<optimized out>) at build/ALPHA/python/swig/event_wrap.cc:4559 #12 _wrap_simulate (self=<optimized out>, args=<optimized out>) at build/ALPHA/python/swig/event_wrap.cc:4609 #13 0x00007ffff77bc0ee in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0 #14 0x00007ffff77bdf05 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0 #15 0x00007ffff77bc075 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0 #16 0x00007ffff77bd064 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0 #17 0x00007ffff77bd064 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0 #18 0x00007ffff77bdf05 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0 #19 0x00007ffff77be042 in PyEval_EvalCode () from /usr/lib/libpython2.7.so.1.0 #20 0x00007ffff77bc5e9 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0 #21 0x00007ffff77bdf05 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0 #22 0x00007ffff77bc075 in PyEval_EvalFrameEx () from /usr/lib/libpython2.7.so.1.0 #23 0x00007ffff77bdf05 in PyEval_EvalCodeEx () from /usr/lib/libpython2.7.so.1.0 #24 0x00007ffff77be042 in PyEval_EvalCode () from /usr/lib/libpython2.7.so.1.0 #25 0x00007ffff77e04bc in PyRun_StringFlags () from /usr/lib/libpython2.7.so.1.0 #26 0x00000000008edbcf in m5Main (argc=<optimized out>, argv=<optimized out>) at build/ALPHA/sim/init.cc:280 #27 0x0000000000414452 in main (argc=14, argv=0x7fffffffe038) at build/ALPHA/sim/main.cc:57 Any pointers on this issue? -- *thanks®ards * *BISWABANDAN* http://www.cse.iitm.ac.in/~biswa/ *Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius - and a lot of courage - to move in the opposite direction.*
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users