Running on a Group of Machines

You can submit a Design Manager project on a group of networked machines using the command line.

However, when running a project on a cluster with scheduler, the batch system of the cluster is always the preferred option. See also: Using Batch Management Systems.

NoteBefore you submit a Design Manager project on a group of machines, ensure that the machines share the same file system.

To submit a Design Manager project, you must explicitly launch Resource Manager using the following command:

starlaunch --command <batch_command> --slots 0 --resources <host[:np][,host[:np]]>

where:

  • starlaunch launches Resource Manager.
  • --command <batch_command> specifies the starccm+ command that runs the Design Manager project in batch.
  • --slots 0 prevents the Resource Manager process from allocating cores.
  • --resources <host[:np][,host[:np]]> lists the hosts on which to run the Design Manager project.

If :np is specified, then np processes are put on that machine. There must be no spaces in the list of hosts. The processes are allocated to the machines in the resource list starting with the first entry adding np processes before moving on to the next machine in the list. If the requested processes exceed the number of machines that are listed, the remaining processes continue to be allocated starting with the first entry in the resource list.

When multiple machines are being used it is useful to define the machines in an MPI file and use the following command:

starlaunch --command <batch_command> --slots 0 --resourcefile <file>
The format of the resource file is simply a list of machines on which you wish to place processes. The name of the machine can be concatenated with a colon and an integer to represent the number of processes you wish to place on the machine. An example of such a file could be:
node1
node2:3
node3:2

This file dictates that processes are allocated to machines node1, node2, and node3. Only one processor is allocated on node1 since there is no :n specified, 3 processes are allocated to node2, and 2 processes are allocated to node3.

Only two formats for a resource file are supported:
  • The machine name is repeated n times, where n is the number of cores per node.
  • The number of cores is specified with machine name:n.

Example:

The following example shows the command for running a Design Manager project on a group of machines using a machine file:

[STAR-CCM+_INSTALL_DIR]/star/bin/starlaunch --command "[STAR-CCM+_INSTALL_DIR]/star/bin/starccm+ 
-batch run [PROJECT_ROOT_DIR]/[PROJECT].dmprj [-passtodesign <options>]" --slots 0 --resourcefile [MACHINE_FILE_DIR]/[MACHINES]

where:

  • [STAR-CCM+_INSTALL_DIR] is the absolute path to the Simcenter STAR-CCM+ installation directory.
  • [PROJECT_ROOT_DIR] is the path to your project root directory.
  • [PROJECT] is the name of your Design Manager project file.
  • [MACHINE_FILE_DIR] is the absolute path to your machine file.
  • [MACHINES] is your machine file.
  • -passtodesign <options> allows you to pass additional simulation command line options to the design simulations. Passing command line options directly from the command line is useful for machine-specific or user-specific options, which you do not want to save within your Design Manager project file (see Running on a Cluster Using Pre-Allocation, step 2b). However, command line options that require double quotes are not supported—you must set these options in the STAR-CCM+ Execution Command property. For more information, see Design Manager Options.
NOTE: If [PROJECT_ROOT_DIR] or [PROJECT] contains spaces, you must pass the Design Manager project file with nested single quotes, such as:
[STAR-CCM+_INSTALL_DIR]/star/bin/starlaunch --command "[STAR-CCM+_INSTALL_DIR]/star/bin/starccm+ 
-batch run '[PROJECT_ROOT_DIR]/[PROJECT].dmprj' [-passtodesign <options>]" --slots 0 --resourcefile [MACHINE_FILE_DIR]/[MACHINES]