Dear Yarong,

This error usually implies that you have misconfigured the simulator in the 
wiring file. 
In other words, your wiring.cpp file is not consistent with the config file. 
Highly likely it is related to the number of memory controllers (unless you 
added your own components that you did not configure correctly).

In your wiring file, make sure your memory controller component instantiates 
the correct number of instances:  

FLEXUS_INSTANTIATE_COMPONENT_ARRAY( MemoryLoopback, theMemoryCfg, theMemory, 
SCALE_WITH_SYSTEM_WIDTH, DIVIDE, 8 );

This line says that the number of controllers will be determined by the number 
of cores divided by 8. You can choose another number according to your needs. 
So, if you use, lets say, 32 cores, the total number of memory controllers will 
be 32/8=4. That is the number you need to specify in the configuration file: 

flexus.set "-net-mapper:MemControllers"                         "4"

Probably the numbers you have do not match, hence the error. After correcting 
this, you need to recompile the simulator. 
Let us know if this solved the problem.

Regards,
Djordje
________________________________________
From: Yarong Guo <[email protected]<mailto:[email protected]>>
Subject: Re: Crash while initializing sys-uarch
Date: July 31, 2013 12:45:08 AM GMT+03:00
To: Cansu Kaynak <[email protected]<mailto:[email protected]>>

Hello,
Thanks for the suggestion.
I attached gdb to the process, and did a back trace
Program received signal SIGSEGV, Segmentation fault.
0x00000038f2e721d5 in _int_malloc () from /lib64/libc.so.6
(gdb) backtrace
#0  0x00000038f2e721d5 in _int_malloc () from /lib64/libc.so.6
#1  0x00000038f2e73f2e in malloc () from /lib64/libc.so.6
#2  0x00002b031dcd7066 in mm_malloc ()
   from /m/sda10/yarong/FLEXUS/simics-3.0.31/amd64-linux/bin/libsimics-common.so
#3  0x00002b032419b6b1 in SIM_flush_I_STC_logical ()
   from /m/sda10/yarong/FLEXUS/simics-3.0.31/amd64-linux/lib/cheetah+mmu.so
#4  0x00002b031dc41d55 in ?? ()
   from /m/sda10/yarong/FLEXUS/simics-3.0.31/amd64-linux/bin/libsimics-common.so
#5  0x00002b031dc41ee7 in ?? ()
   from /m/sda10/yarong/FLEXUS/simics-3.0.31/amd64-linux/bin/libsimics-common.so
#6  0x00002b031dc41f1f in SIM_get_attribute ()
   from /m/sda10/yarong/FLEXUS/simics-3.0.31/amd64-linux/bin/libsimics-common.so
#7  0x00002b0326c35ce1 in 
Flexus::Simics::MMU::fm_init_mmu_from_simics(Flexus::Simics::MMU::mmu*, 
Flexus::Simics::API::conf_object*) ()
   from 
/m/sda10/yarong/FLEXUS/flexus-4.1/timing_v9-UP.OoO-30Jul13-143238/continues/continues_f_000_004/libflexus_UP.OoO_v9_iface_gcc.so<http://libflexus_up.ooo_v9_iface_gcc.so/>
#8  0x00002b0326c37cc8 in Flexus::Simics::v9ProcessorImpl::initializeMMUs() ()
   from 
/m/sda10/yarong/FLEXUS/flexus-4.1/timing_v9-UP.OoO-30Jul13-143238/continues/continues_f_000_004/libflexus_UP.OoO_v9_iface_gcc.so<http://libflexus_up.ooo_v9_iface_gcc.so/>
---Type <return> to continue, or q <return> to quit---q

However, all the files are in .so format, any hints on where I should go look 
for the problem?
Thank you very much!

Yarong


2013/7/29 Cansu Kaynak <[email protected]<mailto:[email protected]>>
Hi Yarong.
Unfortunately, the error output does not say much.
I suggest you start the simulation by attaching gdb to the simics process 
(after you compile the simulator with -g flag) and take a look at the backtrace 
output after the simulation crashes.
Most probably, this has to do with the configuration parameters or loading the 
flexpoint.

Hope this helps.

--
Cansu

On Jul 27, 2013, at 4:51 AM, Yarong Guo 
<[email protected]<mailto:[email protected]>>
 wrote:

Hello,

I am having a little issue running flexus after flex points have been created.
I successfully created flex points for a solaris sytem I installed using Simics.

However, when I run the simulation using the run_job script, it seems to crash 
when initializing sys-uarch.

Image memory limited to 1 GB
Opening debug output file: debug.out
Opening debug output file: stats.out
Opening debug output file: trace.out
Successfully parsed debug configurations from debug.cfg
Initializing Flexus::ConfigurationManager...done
Initializing Flexus::ComponentManager...done
Entered init_local

Flexus (C) 2006-2010 The SimFlex Project
Eric Chung, Michael Ferdman, Brian Gold, Nikos Hardavellas, Jangwook Kim,
Ippokratis Pandis, Minglong Shao, Jared Smolens, Stephen Somogyi,
Evangelos Vlachos, Thomas Wenisch, Roland Wunderlich
Anastassia Ailamaki, Babak Falsafi and James C. Hoe.

Flexus Simics simulator - Built as UP.OoO v1.0

1 <startup.cpp:121> {0}- Initializing Flexus.
2 <ComponentManager.cpp:79> {0}- Instantiating system with a width factor of: 1
3 <WhiteBoxImpl.cpp:416> {0}- Creating WhiteBox
4 <WhiteBoxImpl.cpp:99> {0}- symtable loaded
5 <uFetch.hpp:82> {0}- ufetch port InstructionFetchSeen is not wired
6 <uFetch.hpp:82> {0}- ufetch port ClockTickSeen is not wired
7 <v9Decoder.hpp:66> {0}- decoder port DispatchedInstructionOut is not wired
8 <uArch.hpp:121> {0}- uarch port StoreForwardingHitSeen is not wired
9 <Cache.hpp:92> {0}- L1d port FrontSideOut_I is not wired
10 <Cache.hpp:92> {0}- L1d port BackSideOut_Prefetch is not wired
11 <wiring.cpp:101> {0}-  initializing Parameters...
Warning: The 'flexus-UP.OoO-v9-iface-gcc' module unexpectedly defined the 
'Flexus' class
Warning: The 'flexus-UP.OoO-v9-iface-gcc' module unexpectedly defined the 
'SimicsInterface' class
WARNING: There is no parameter named "-uarch:early_sgp"
WARNING: There is no parameter named "-uarch:track_parallel"
12 <configuration.hpp:189> {0}- Bad Lexical Cast attempting to set dynamic 
parameter.
WARNING: Unable to set parameter CacheLevel to eL1
13 <configuration.hpp:189> {0}- Bad Lexical Cast attempting to set dynamic 
parameter.
WARNING: Unable to set parameter CacheLevel to eL2
14 <flexus.cpp:385> {0}- Set region interval to : 50000
[cpu0 info] Note that on this cpu, instruction-fetch-trace is implemented using 
instruction-cache-access-trace with a suitable cache line size.
15 <flexus.cpp:532> {0}- Loading Flexus state from subdirectory flexus_state_in
16 <ComponentManager.cpp:94> {0}- Initalizing components...
17 <ComponentManager.cpp:98> {0}- Initalizing sys-white-box
18 <ComponentManager.cpp:98> {0}- Initalizing sys-fag
19 <mai_api.cpp:279> {0}- Searching 1 cpus.
20 <mai_api.cpp:283> {0}- Processor 0: cpu0 - CPU 0
21 <mai_api.cpp:305> {0}- Found CPU: '' - 0
22 <mai_api.cpp:325> {0}- Found 1 Flexus CPUs and 0 Client CPUs and 0 Besim 
CPUs in 0 VMs
23 <mai_api.cpp:428> {0}- Automatic organization of equal-size VMs
24 <mai_api.cpp:435> {0}- Square topology of VMs: 1x1
25 <mai_api.cpp:439> {0}- Square VM: 1x1
26 <mai_api.cpp:467> {0}- VMS per row = 1, CPVM = 1, GridOfVM = 1*1, NumRows = 1
27 <mai_api.cpp:527> {0}- theProcMap[0] = (0, 0) (abs_index = 0)
28 <mai_api.cpp:541> {0}- Finished creating Processor Mapper.
29 <FetchAddressGenerateImpl.cpp:88> {0}- sys-fag Thread[0.0] connected to cpu0 
Initial PC: v:000010704
30 <ComponentManager.cpp:98> {0}- Initalizing sys-ufetch
31 <ComponentManager.cpp:98> {0}- Initalizing sys-combiner
32 <ComponentManager.cpp:98> {0}- Initalizing sys-decoder
33 <ComponentManager.cpp:98> {0}- Initalizing sys-uarch
Segmentation fault (SIGSEGV) in main thread
Crash stack trace:
#0 0x00000038f2e721d5 <unknown>
./go.sh: line 4: 23436 Segmentation fault      
/m/sda10/yarong/FLEXUS/simics-3.0.31/scripts/start-simics -no-copyright -x 
start.simics -no-win -ma -batch-mode -q
Cannot open stats database ../stats_db.out.gz

Does everybody know where the bug might be?
Thank you!!!

Yarong



Reply via email to