Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Português - 日本語

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
However, this page did not exist in the previous stable version.

Aide Scilab >> Calculs Parallèles avec PVM > pvm_spawn


Starts new Scilab processes.

Calling Sequence

[tids, numt] = pvm_spawn(task, ntask, [nw], [where])


task : string, which is the file name of the scilab script (see exec) to be

started. The Scilab script must already reside on the host on which it is to be started. The name must an absolute path.


integer, specifying the number of copies of the scilab script to start.


string (optional). If win is equal to ``nw'' the Scilab process will be spawned in background with out any window coming up.


string (optional), can be a host name such as ``'' or a PVM architecture class such as ``SUN4''. If you want to use localhost as host, set where value to "."


integer, the actual number of tasks started. Values less than zero indicate a system error.


row of integers, array of the tids of the PVM processes started by this pvm_spawn call.


pvm_spawn starts ntask copies of the scilab script task.

On systems that support environment, pvm_spawn passes selected variables from parent environment to children tasks. If set, the envar PVM_EXPORT is passed. If PVM_EXPORT contains other names (separated by ':') they will be passed too. This is useful for e.g.:

setenv DISPLAY myworkstation:0.0
setenv MYSTERYVAR 13

The hosts on which the PVM processes are started are determined by the where arguments. On return the array tids contains the PVM task identifiers for each process started.

If pvm_spawn starts one or more tasks, numt will be the actual number of tasks started. If a system error occurs then numt will be < 0.

If numt is less than ntask then some executables have failed to start and the user should check the last locations in the tids array which will contain error codes (see below for meaning). The first numt tids in the array are always valid.

When the argument where is omitted an heuristic (round-robin assignment) is used to distribute the ntask processes across the virtual machine.

In the special case where a multiprocessor is specified by where pvm_spawn will start all copies on this single machine using the vendor's underlying routines.

See Also

  • pvm — communications with other applications using Parallel Virutal Machine
  • pvm_spawn_independent — Starts new PVM processes.
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Oct 05 12:11:04 CEST 2011