After successfully following the steps in this post :
[Simflex] Help for installing ultrasparc over linux
Evangelos Vlachos evlachos at ece.cmu.edu
Tue Jun 16 18:24:22 EDT 2009
I tried running the following job :
[eugen at localhost flexus-test-app]$ ./run-job -fxpt-out flexpoint_000 -cfg
OoO UniFlex.OoO
It did not go smooth ... I am hoping someone can help me out. There is no
benchmark application running on the target machine at this point. But from my
understanding that should not be a problem.
Starting initial flexpoint creation of flexus_test with UniFlex.OoO in
/home/eugen/work/simics/flexus/Flexus-3.0.0/flexus-test-app/runs/eugen-UniFlex.OoO-23Jul09-165202
Launching job
Opening debug output file: debug.out
Opening debug output file: stats.out
Successfully parsed debug configurations from debug.cfg
Initializing Flexus::ConfigurationManager...done
Initializing Flexus::ComponentManager...done
Entered init_local
1 <startup.cpp:110> {0}- Initializing Flexus.
Flexus (C) 2006 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 UniFlex.OoO v3.0
2 <ComponentManager.cpp:81> {0}- Instantiating system with a width factor of: 1
3 <uFetch.hpp:76> {0}- ufetch port FetchSnoopOut is not wired
4 <Cache.hpp:82> {0}- L1d port BackSideOut_Prefetch is not wired
5 <Cache.hpp:82> {0}- L2 port BackSideOut_Snoop is not wired
6 <Cache.hpp:82> {0}- L2 port BackSideOut_Prefetch is not wired
7 <wiring.cpp:89> {0}- initializing Parameters...
Warning: The 'flexus-UniFlex.OoO-v9-iface-gcc' module unexpectedly defined the
'Flexus' class
Warning: The 'flexus-UniFlex.OoO-v9-iface-gcc' module unexpectedly defined the
'SimicsInterface' class
8 <flexus.cpp:377> {0}- Set stat interval to : 50000
9 <flexus.cpp:382> {0}- Set region interval to : 50000
Opening debug output file: trace.out
Successfully parsed debug configurations from iteration.trace.cfg
WARNING: There is no parameter named "-L2:allow_offchip_stream_fetch"
WARNING: There is no parameter named "-L2:bypass_bus"
type run to start simulation
simics> run
10 <ComponentManager.cpp:96> {0}- Initalizing components...
11 <FetchAddressGenerateImpl.cpp:90> {0}- Thread[0.0] connected to cpu0 Initial
PC: v:000532eb4
12 <mai_api.hpp:386> (<undefined>[<undefined>]) {0}- Assertion failed:
((!(false))) : <undefined>
Abort (SIGABRT) in main thread
The simulation state has been corrupted. Simulation cannot continue.
Please restart Simics.
[cpu0] v:0x0000000000532eb4 p:0x00000132eb4 lduba [%i3 + %g0] 0x15, %i0 #
ASI_PHYS_BYPASS_EC_WITH_EBIT
So far I managed to get Linux on the Simics sunfire-bagle configuration. I
automatically login, and start running a benchmark ( bitcount ), a snapshot. (
part of what prepare-test-app is suppose to do).
I need some assistance getting to the next steps:
- do I need to insert SIMICS_magic_instructions into the benchmark code?
- do I need a special compiler that will allow me to cross compile for v9_Linux
that knows about magic_instructions ?
I have a hard time (based on the Getting starting guide) understanding the
relation of what happens on the target system running the simulation and these
steps :
prepare-test-app
create-initial-flexpoints
create-flexpoints
run-timing-jobs
and
run-job
I am sure these are obvious for someone familiar with flexus, but they do not
come out easily from the "Getting Started Guide".
Thank you in advance for your help,
Eugen