Menu

iffi

Gerald Mathias Magnus

Starting iffi

After having set the simulation system up with [xpl2lis], you can start the simulation in the working directory with the iffi executable. It accepts the names of one or more control files as arguments. Without argument it uses "ctl.xml" as the default input.

** Examples **
Run "ctl.xml" on a single core.

~/bin/iffi.gnu.seq

Run "minimization.xml" with 4 mpi processes:

mpirun -np 4 ~/bin/iffi.gnu.ompi minimization.xml

Run 4 jobs farm?.xml together in parallel using 2 MPI processes for each job:

mpirun -np 8 ~/bin/iffi.gnu.ompi farm1.xml farm2.xml farm3.xml farm4.xml

Run a four-member replica exchange simulation. The files replica?.xml need to have the section <discreteTempering> turned on and the same rungs specified on their respective ladders (see examples for details):

mpirun -np 4 ~/bin/iffi.gnu.ompi  replica{1,2,3,4}.xml

You can also use the same input file multiple (n) times by appending @n to it:

mpirun -np 4 ~/bin/iffi.gnu.ompi  rest.xml@4

Within the input file you can use the $REPLICA$ variable for the replica specific settings,
eg. the output directory or the restart file.

For each input file, iffi creates a so called partition, which are numbered 0, 1, 2,..., and distributes the available mpi processes to these partitions.

Output / log files

In the course of a simulation, all observables requested by the user (e.g. energies, particle trajectories, dipole moments,..) are periodically written to the directory <outPath>.

Additionally, each process writes a log file to

<logPath>/log_<timestamp>[_p<partitionId>[n<nodeId of partition>].out

where the partition and node information is only included, if multiple partitions and/or nodes are used, e.g. when running a two partition simulation the files

_log/log_20140428-135320_p0n0.out and
_log/log_20140428-135320_p1n0.out

contain the output of the two master processes (n0). Warnings (non fatal) and errors (fatal) are written to similar log files ending on .err.

Iffi does not overwrite any files. If data would be written to an already existing file,
the latter is beforehand moved to the directory <backupPath> and appended a timestamp and the extension .bak .
Additionally, a complete control file, which lists the actual configuration of the run, and a stripped control file, which lists only the non-default user settings, are written to <backupPath>.

Terminating iffi

To stop the program before the final integration step is reached, you can issue a user defined kill signal to any of the MPI processes (with process id <pid>):
- ** kill -SIGUSR1 <pid> ** will stop the program after the next regular restart file has been written.
- ** kill -SIGUSR2 <pid> ** will stop the program after the next integration step and will write a final restart file.


Related

Wiki: Compilation
Wiki: Getting started
Wiki: Plumed interface
Wiki: control file
Wiki: iphigenie
Wiki: xpl2iph
Wiki: xpl2lis

MongoDB Logo MongoDB