Running multiple configurations in parallel

2,454 views
Skip to first unread message

Kim Højgaard-Hansen

unread,
Nov 6, 2012, 4:30:53 AM11/6/12
to omn...@googlegroups.com
Hi,

This might be a really weird request, but is it possible to make opp_runall (or something else) run a certain set of configurations in parallel on one machine?

The reason I ask is because we currently do a lot of pre-calculations generating omnet configuration, to avoid having to implement everything in C++ directly in omnet. So i have code external to omnet generating stuff like:

[Config foo-1]
extends = my-default-settings
**.wlan.mac.foo = "calculated stuff for experiment1"

[Config foo-2]
extends = my-default-settings
**.wlan.mac.foo = "calculated stuff for experiment2"

Each config only result in one simulation run

Now, I know I could "just" implement the thing in omnet directly, but since this is some really weird non-standard stuff, I hardly see it used outside my own work. At least not in the current version, so I would like to keep it external to omnet. The drawback currently is that I need to make scripts to call the omnet run executable with the configuration names, and if I want it to run in parallel using all cores I need to solve that myself also. 

I have been messing around trying different things like seeing if I could use the ${runnumber} in the config name :) and other hacks. I am well aware this is quite a hack, and understand if it cannot be done. I'm mostly asking here to check that I did not miss anything, making it possible to do it.

Best,

Kim

Rudolf Hornig

unread,
Nov 6, 2012, 4:46:55 AM11/6/12
to omn...@googlegroups.com
Why don't you use parameter iteration?


e.g.:

this would require only a single config and result in 4 runs with the appropriate parameters
Rudolf

Kim Højgaard-Hansen

unread,
Nov 6, 2012, 5:15:09 AM11/6/12
to omn...@googlegroups.com
Doh! I knew I missed something, thanks!

/Kim


--
--
Sent from the OMNeT++ mailing list. To configure your membership,
visit http://groups.google.com/group/omnetpp
 
 
 

Kim Højgaard-Hansen

unread,
Nov 7, 2012, 6:11:50 AM11/7/12
to omn...@googlegroups.com
this is working, thanks

I do think there is a couple of "UI" problems with that approach though.

Say you have:

**.whost1.tcpApp[0].tOpen = ${startTime=60..3600 step 60}s
**.wlan.mac.schedulingIntervals = ${foo= "1,2", "3,4", "4,5" ! startTime}

if you have * in the run configuration e.g. "run all", you get:

Preparing for running configuration test-1, run #0...

<!> Error: Scenario generator: parallel iterator ${...!startTime} does not have enough values.


End.

Simulation terminated with exit code: 1

in this example it is quite easy to spot what the problem is, but it really is not if you had 58 values in foo, instead of the needed 50 :)


Another one:

If you specify exactly "0,1" in as run numbers for the above configuration, you get a different error. A pop-up with:

"Run number (1) is greater than the number of runs (1) supported by the current configuration"

This is not really easy to digest, if you have a lot of values :)

anyway, it is minor stuff, just wanted to let you know about it.

Best,

Kim

Raunak Gupta

unread,
Jul 31, 2015, 9:16:03 AM7/31/15
to OMNeT++ Users, kim...@gmail.com
Hello Rudolf,

I too have a question about running parallel simulation. I want to run simulations with different vehicle densities. How can I use vehsperhour(defines vehicle density) variable from SUMO in my omnetpp.ini file so as to execute multiple runs.

Thanks in advance
Raunak Gupta

Alfonso Ariza Quintana

unread,
Jul 31, 2015, 9:33:05 AM7/31/15
to omn...@googlegroups.com

I usually work with this type of scenarios, different seeds, different traffic …, my latest simulation was 400 different scenarios.

I use openlava and, using old computers, a small cluster of 36 CPU with openlava. I have an script that queue my simulations in the cluster and openlava makes the rest.

--
You received this message because you are subscribed to the Google Groups "OMNeT++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to omnetpp+u...@googlegroups.com.
Visit this group at http://groups.google.com/group/omnetpp.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages