Multiple Runs problems

28 views
Skip to first unread message

Lorenzo

unread,
Nov 12, 2009, 10:22:33 AM11/12/09
to Castalia Simulator
Hi everyone;

I'm using Castalia for some experiments, but I've noticed a strange
behavior, I don't understand.

I'm trying to execute multiple runs of my simulation, but the strange
thing is that if I execute the 10 runs together (specifying the RNG in
the omnetpp.ini file) I obtain some results; otherwise, if I execute
the 10 runs separately (i.e. the first run ends, then I manually
restart the second, and so on), I obtain completely different results.
Obviously, the used RNGs in both cases are exactly the same (I've used
the 10 first random seeds used in the Connectivity example
application).

The problem is that the results I obtain using multiple runs are
totally far from those I'm expecting, while the ones obtained with
separate runs are more realistic.

Do you know if this is a known problem, and if it is possible to fix
it? Is there any problem in how Castalia manages multiple executions?
Or maybe, I miss some point? Consider that I've taken exactly the
connectivityMap multipleRunsExample as a base.
Since I should perform a big number of simulations it would be hard to
make them manually one by one......
I thank you in advance for your support,

best

Lorenzo

Athanassios Boulis

unread,
Nov 12, 2009, 9:16:54 PM11/12/09
to castalia-...@googlegroups.com

Hi Lorenzo,

This is indeed strange. Can you please give more details so we could reproduce
the problem? For example, does the problem exist with the old connectivityMap
multipleRuns application we have in Castalia?

What do you exactly mean by "manually executing each run"?
Do you have separate omnetpp.ini files that each have only one run
in them (or manybe even no run section at all)?
Do you use the same omnetpp.ini file with the multiple runs and 
then use the -r switch when executing to specify a particular run?

One major point to notice is that if you are NOT using any runs for
manually running one simulation, then maybe some parameter are not
set as you expect them. If you are defining a parameter twice then only
the first value is taken into account. For example, you may have a parameter
defined in an ini file you include in your omnetpp (e.g. an ini file that
governs the MAC or channel params) and then you define it again manually 
in your omnetpp ini. The first value (usually the one you have not defined)
will be in effect. This is the way omnet works. Just something to keep an 
eye on.

Lorenzo

unread,
Nov 17, 2009, 9:52:00 AM11/17/09
to Castalia Simulator
Well,

I've solved the problem, and I've probably found out what it was due
to.
Answering to your question, by "manually executing each run" I mean
using the same omnetpp.ini file with a different Run-section each
time
(specifying different seeds).
My problem was probably due to the fact that I didn't release all the
memory
in the code of the application, so something probably remained still
set with the
same parameters.

What I've done is to include a runParam.ini file in the omnetpp.ini
and I wrote
a bash script which modify that runParam.ini before starting a new
run.

I've not tested the connectivityMap multipleRuns application, but I
will do this in a few
days and I'll let you know.

Thank you for your support, in any case.

Best,

Lorenzo
Reply all
Reply to author
Forward
0 new messages