The getting-started guide presents a series of steps where you can
generate flexpoints by combining Simics and Flexus. The goal for
flexpoints generation is described in much more detail in several papers.
These are listed in the simflex webpage: www.ece.cmu.edu/~simflex
Please, spend some time going through any one of them to get the
high-level picture of SimFlex. Also, slides from tutorials are
available in the same website.
The two scripts you mentioned in your e-mail (create-initial-flexpoint
and create-flexpoints) can only use Trace-based
simulators. These two scripts are NOT performing the actual simulation.
They are just setting up checkpoints and flexpoints of your benchmark. The
actual simulation takes place in the run-job script, where
you are able to choose any available simulator to perform your
experiments.
Evangelos
On Tue, 16 Jun 2009, sparsh mittal ISU wrote:
> Hello
> While executing
> ./create-initial-flexpoint SimulatorName and
> ./create-flexpoints SimulatorName
>
> I am not able to run any simulator except TraceFlex. Specifically I wanted
> to ask whether
> SimulatorName=UniFlex, UniFlex.OoO, CMPFlex, CMPFlex.OoO
> would work, when I executed prepare-test-app with x86=1?
>
> Here is the error message:
>
>
> ./create-initial-flexpoint UniFlex
> Starting initial flexpoint creation of flexus_test with UniFlex in
> /home/sparsh/cdrive/flexus-3.0.0/flexus-test-app/runs/sparsh-UniFlex-16Jun09-104047
> 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 v3.0
>
> 2 <ComponentManager.cpp:81> {0}- Instantiating system with a width factor
> of: 1
> 3 <InorderSimicsFeederImpl.cpp:284> (feeder[<undefined>]) {0}- Initializing
> InorderSimicsFeeder.
> 4 <InorderSimicsFeederImpl.cpp:332> (feeder[<undefined>]) {0}- Connecting:
> cpu0
> 5 <Cache.hpp:82> {0}- L1d port BackSideOut_Prefetch is not wired
> 6 <Cache.hpp:82> {0}- L1i port BackSideOut_Snoop is not wired
> 7 <Cache.hpp:82> {0}- L1i port BackSideOut_Prefetch is not wired
> 8 <Cache.hpp:82> {0}- L2 port BackSideOut_Snoop is not wired
> 9 <Cache.hpp:82> {0}- L2 port BackSideOut_Prefetch is not wired
> 10 <wiring.cpp:89> {0}- initializing Parameters...
> Warning: The 'flexus-UniFlex-x86-iface-gcc' module unexpectedly defined the
> 'Flexus' class
> Warning: The 'flexus-UniFlex-x86-iface-gcc' module unexpectedly defined the
> 'SimicsInterface' class
> Warning: The 'flexus-UniFlex-x86-iface-gcc' module unexpectedly defined the
> 'InOrderFeeder' class
> Opening debug output file: termination.out
> Successfully parsed debug configurations from termination.dbg.cfg
> 11 <ConfigurationManager.cpp:100> {0}- WARNING: -fetch:icachelinesize
> (ICacheLineSize) was not set in initializeParameters(), from the command
> line, or from Simics.
> 12 <ConfigurationManager.cpp:106> (<undefined>[<undefined>]) {0}- Assertion
> failed: ((!(false))) : ERROR: Not all parameters were initialized, and
> initalizeParameters() indicates that they should be.
> Abort (SIGABRT) in main thread
> The simulation state has been corrupted. Simulation cannot continue.
> Please restart Simics.
> [cpu0] cs:0x08048b8f p:0x0d76eb8f magic breakpoint (xchg bx, bx)
>
> --
> Thanks and Regards
> Sparsh Mittal
> Graduate Student
> Electrical and Computer Engineering
> Iowa State University, Iowa, USA
>