Opened 7 years ago

Last modified 7 years ago

#731 new defect

simfactory does not expand @MACHINE@ in the SubmitScript if submitted with option --submitscriipt

Reported by: alibeck Owned by: Erik Schnetter
Priority: major Milestone:
Component: SimFactory Version:
Keywords: Cc:


In the submitscript template for supermuc there is a line as


This line is then expanded during submit e.g. to

/home/hpc/pr32pi/lu32vak/Cactus-Simfact2-NewRepos/Cactus/simfactory/bin/sim run test_queue_40 --machine=supermuc --restart-id=0

If I add

--submitscript <scriptfile>

to sim submit, this line looks as follows:

/home/hpc/pr32pi/lu32vak/Cactus-Simfact2-NewRepos/Cactus/simfactory/bin/sim run test_queue_40 --machine=@MACHINE@ --restart-id=0

The submission command in my case was:

simfactory/bin/sim submit test_queue_40 --parfile=par/static_tov.par --configuration aliremote --procs=40 --submitscript configs/aliremote/SubmitScript --machine=supermuc --walltime 2:00:00

So even with giving the regular SubmitScript file name to the option --submitscript will cause this error

Attachments (0)

Change History (5)

comment:1 Changed 7 years ago by Erik Schnetter

The option --submitscript should only be accepted when building a configuration. When creating or submitting a simulation, this stored submitscript should then be used. The reason is that submit script and run script often depend e.g. on the MPI version that is used while building, so they are not independent.

comment:2 Changed 7 years ago by Frank Löffler

Is there a --force option? If so, it would be a good idea to make it possible to use --submitscript while submitting when using --force. This would make testing much less painful and more intuitive.

comment:3 Changed 7 years ago by Roland Haas

It would be nice I think to evetually be able to change submit scripts for simulations that have already started (same as changing parfiles/executables etc. would be nice) for testing. It would then be nice if all option behave the same way independent of which simfactory sub-command is used. Ie. --submitscript behaved the same way for both create and submit sub-commands.

comment:4 Changed 7 years ago by Erik Schnetter

Simfactory should really abort with an error message if an option is used that doesn't match the command given.

One of the main points of Simfactory is to be safe and easy to use. That implies that it shouldn't have many options that let people modify its behaviour in subtle ways. I would rather have a discussion on what a good behaviour is, and make this the default.

I don't know what kind of testing you mean that is currently painful. If you mean testing new submission scripts, then you can do this by directly editing either the copy stored with the executable or the copy stored with the simulation; once you have something working, you clean it up and commit it. Compare this to editing a makefile directly within the source tree; Cactus doesn't have an option to override certain makefiles while building either.

There is also a feature request to make Simfactory automatically update submit scripts etc. from the MDB.

comment:5 Changed 7 years ago by Erik Schnetter

To change a simulation we could introduce a "modify-simulation" command with a similar syntax to "create", except that it modifies a simulation that is currently inactive.

Modify Ticket

Change Properties
Set your email in Preferences
as new The owner will remain Erik Schnetter.
Next status will be 'review'.
as The resolution will be set.
to The owner will be changed from Erik Schnetter to the specified user.
Next status will be 'confirmed'.
The owner will be changed from Erik Schnetter to anonymous.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.