smpirun(1)
Execute MPI programs in the SimGrid simulator
Description
smpirun
NAME
smpirun - Execute MPI programs in the SimGrid simulator
SYNOPSIS
smpirun [SMPI OPTIONS]⦠-platform <platform.xml> -hostfile <hostfile> program [SIMULATION OPTIONS] [PROGRAM OPTIONS]
DESCRIPTION
smpirun can run MPI programs that were compiled with smpicc on top of the simulator. Basically, it generates a deployment file from the provided hostfile (if needed), and launches the simulation with the right arguments. It is intended to be easy to use to regular MPI users.
MANDATORY PARAMETERS
-platform <platform.xml>
XML file describing the platform on which we want to deploy the program. Please refer to the online documentation.
-hostfile, -machinefile <hostfile>
Hostfile listing all the machines in use
SMPI OPTIONS
The smpirun itself accepts some optional parameters, that are not to be mixed with the configuration options described in the next section.
|
-help |
Print the usage and a summary of the available options. |
-keep-temps
Do not remove the generated files after execution.
-wrapper <command>
Use command to run the program (e.g. "valgrind", "gdb --args", "rr record"). You usually want to use the "-foreground" option as well in order to have a TTY.
|
-gdb |
Run within GDB (equivalent to -wrapper "gdb --args" -keep-temps). | ||
|
-lldb |
Run within LLDB (equivalent to -wrapper "lldb --" -keep-temps). | ||
|
-vgdb |
Run within Valgrind+GDB (equivalent to -wrapper "valgrind --vgdb=yes --vgdb-error=0" -keep-temps). |
-foreground
Run the child process in the foreground. This gives the child process access to the TTY.
|
-map |
Display the machine on which each process rank is mapped. |
-np <numprocs>
Use that amount of processes. By default, there is the same number of processes as there are of hosts in the hostfile.
-no-privatize
Disable the privatization of global variables, that is activated by default. This should only be necessary if you use dynamic libraries, but you should probably link statically instead of disabling this. Do not link statically against SimGrid, only against the other libraries.
-trace
Activate the trace mechanism if available (equivalent to --cfg=tracing:yes --cfg=tracing/smpi:yes)
-trace-ti
Activate time independent tracing.
-trace-comment <comment>
Put a comment on the top of the trace file.
-trace-comment-file <file>
Insert the content of the file at the head of the trace file as a comment.
-trace-grouped
Group MPI processes by location.
-trace-resource
Trace resource utilization.
-trace-file <tracefile>
Name of the tracefile
-replay <tracefile>
Replay a trace instead of actually executing an application.
-quiet
Reduce output verbosity. This is useful to make tests reproducible.
-version
Displays the SimGrid version (human readable).
-git-version
Displays the git hash of SimGrid.
SIMULATION OPTIONS
You can change many simulation parameters on command line by passing --cfg=parameter:value after the program name. A full list of the existing parameters and their meaning can be found at https://simgrid.org/doc/latest/Configuring_SimGrid.html
Here are some options commonly used with SMPI:
--cfg=smpi/cpu-threshold:XXX
Only simulate computation chunks that last more than XXX seconds.
--cfg=smpi/simulate-computation:no
Disable the simulation of all computation chunks (that are still executed on the host machine).
AUTHORS
The SimGrid team
COPYRIGHT AND LICENCE
Copyright (c) 2014-2022. The SimGrid Team. All rights reserved.
This program is free software; you may redistribute it and/or modify it under the terms of GNU LGPL (v2.1) license.
SEE ALSO
smpicc(1) smpicxx(1) smpiff(1) smpif90(1)