[Gems-users] Question about initial ruby in GEMS2.1.1 and Simics 4.2


Date: Fri, 6 May 2011 17:03:46 -0400
From: wangshuz@xxxxxxxxxxxxxxxxx
Subject: [Gems-users] Question about initial ruby in GEMS2.1.1 and Simics 4.2
Hello all,

I had some question when I initialed the ruby module. when I set the g_NUM_PROCESSORS to 1, the system was good and I can test some program on my sytstem. However if I  set the g_NUM_PROCESSORS to 2 or more. The system had a segmentation fault.

I used "cashew-common.simics(sunfire)" to write a checkpoint. I'm not sure if I used a correct module to write a checkpoint.
DO I must use Solaris operating system to write a checkpoint? Just like what the guide "http://www.cs.wisc.edu/gems/GEMS-Ubuntu.pdf" did.

Another question is that I don't know these problems was caused by Simics or GEMS. I don't how to find the reason.


the following is the terminal's report:

admin1@admin1:~/gems/simics/simics_42_workspace/MOESI_CMP_token$ ./simics -stall -c first.check/
Simics 4.2 (build 3107 x86-linux) Copyright 1998-2011 Virtutech AB

Use of this software is subject to appropriate license.
Type 'copyright' for details on copyright and 'help' for on-line documentation.

WARNING: module 'sunfire-components' is not thread safe. Turning multithreading off.
simics> instruction-fetch-mode instruction-fetch-trace
[board_cmp0.cpu[0] info] Instruction fetch trace is implemented using instruction cache access trace with a suitable cache line size.
simics> istc-disable
Turning I-STC off and flushing old data
simics> dstc-disable
Turning D-STC off and flushing old data
simics> cpu-switch-time 1
simics> load-module ruby
successful installation of the ruby timing model.
Registering a user decoder for the 'ultrasparc-ii' class.
simics> ruby0.setparam g_NUM_PROCESSORS 2
simics> ruby0.setparam g_MEMORY_SIZE_BYTES 4294967296
simics> ruby0.init
Ruby Timing Mode
Creating event queue...
Creating event queue done
Creating system...
  Processors: 2
Segmentation fault (SIGSEGV) in main thread
#0  0x0057afa0 (/home/admin1/gems/simics-4.2.75/x86-linux/bin/libsimics-common.so + 0xb8fa0)
#1  0x0057b056 in SIM_step_count + 0x36 (/home/admin1/gems/simics-4.2.75/x86-linux/bin/libsimics-common.so + 0xb9056)
#2  0x0249ba8c in _ZN15SimicsProcessorC2EP6Systemi + 0x15c (/home/admin1/gems/simics_42_workspace/x86-linux/lib/ruby.so + 0x276a8c)
#3  0x02490391 in _ZN12SimicsDriverC1EP6System + 0xf1 (/home/admin1/gems/simics_42_workspace/x86-linux/lib/ruby.so + 0x26b391)
#4  0x024b0b74 in _ZN6SystemC2Ev + 0x424 (/home/admin1/gems/simics_42_workspace/x86-linux/lib/ruby.so + 0x28bb74)
#5  0x023af3ca in init_simulator + 0x28a (/home/admin1/gems/simics_42_workspace/x86-linux/lib/ruby.so + 0x18a3ca)
#6  0x023c2317 in _ZN9initvar_t12dispatch_setEPvP11conf_objectP10attr_valueS4_ + 0x1d7 (/home/admin1/gems/simics_42_workspace/x86-linux/lib/ruby.so + 0x19d317)
#7  0x023c25df in initvar_dispatch_set + 0x2f (/home/admin1/gems/simics_42_workspace/x86-linux/lib/ruby.so + 0x19d5df)
#8  0x0054e0b3 (/home/admin1/gems/simics-4.2.75/x86-linux/bin/libsimics-common.so + 0x8c0b3)
#9  0x0054ea5d in SIM_set_attribute + 0x5d (/home/admin1/gems/simics-4.2.75/x86-linux/bin/libsimics-common.so + 0x8ca5d)
#10  0x005f76c3 (/home/admin1/gems/simics-4.2.75/x86-linux/bin/libsimics-common.so + 0x1356c3)
#11  0x0098cf4d in PyCFunction_Call + 0x15d (/home/admin1/gems/simics-4.2.75/x86-linux/sys/lib/libpython2.5.so.1.0 + 0x58f4d)
#12  0x009da48c in PyEval_EvalFrameEx + 0x5d6c (/home/admin1/gems/simics-4.2.75/x86-linux/sys/lib/libpython2.5.so.1.0 + 0xa648c)
#13  0x009db893 in PyEval_EvalCodeEx + 0x793 (/home/admin1/gems/simics-4.2.75/x86-linux/sys/lib/libpython2.5.so.1.0 + 0xa7893)
#14  0x00978fd0 (/home/admin1/gems/simics-4.2.75/x86-linux/sys/lib/libpython2.5.so.1.0 + 0x44fd0)
#15  0x00957587 in PyObject_Call + 0x37 (/home/admin1/gems/simics-4.2.75/x86-linux/sys/lib/libpython2.5.so.1.0 + 0x23587)
The simulation state has been corrupted. Simulation cannot continue.
Please restart Simics.
Traceback (most recent call last):
  File "/mp/simics-4.2/src/core/common/terminal_frontend.py", line 509, in <lambda>
  File "/mp/simics-4.2/src/core/common/terminal_frontend.py", line 383, in write
  File "/mp/simics-4.2/src/core/common/terminal_frontend.py", line 363, in write_line
  File "/mp/simics-4.2/src/core/common/terminal_frontend.py", line 354, in output_text
  File "/mp/simics-4.2/src/core/common/terminal_frontend.py", line 342, in raw_write
SimExc_Index: Non-existent processor id
Exception in Python call


Regards,
Shu
[← Prev in Thread] Current Thread [Next in Thread→]
  • [Gems-users] Question about initial ruby in GEMS2.1.1 and Simics 4.2, wangshuz <=