---
name: "vine_worker"
section: "1"
platform: "linux"
package: "coop-computing-tools"
version: "1:7.14.5-1+b2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/vine_worker"
---

# vine\_worker(1)

worker process for executing tasks dispatched through TaskVine

## NAME

**vine\_worker** - worker process for executing tasks dispatched through TaskVine

## SYNOPSIS

FCvine\_worker \[options\] *\<manager\_host\>* *\<manager\_port\>*FT

FCvine\_worker \[options\] *\<manager\_host:manager\_port\]\>*FT

FCvine\_worker \[options\] "*\<manager\_host:manager\_port;\[manager\_host:port;manager\_host:port;...\]\>*FT)

FCvine\_worker \[options\] -M *\<projectname\>*FT

## DESCRIPTION

**vine\_worker** is the worker process for executing tasks dispatched from a manager application built using the **TaskVine** API. **vine\_worker** connects to the manager application, accepts, runs, and returns tasks dispatched to it. **vine\_worker** caches data obtained from external services and output from recently computed tasks and maintains it on disk to accelerate future applications.

The **managerhost** and **port** arguments specify the hostname and port number of the manager application for vine\_worker to connect. Several managerhosts and ports may be specified, separated with a semicolon (;), with the worker connecting to any of the managers specified (When specifying multiple managers, remember to escape the ; from shell interpretation, for example, using quotes.)

Alternatevely, the manager may be specified by name, using the **-M** option.

**vine\_worker** can be run locally or deployed remotely on any of the grid or cloud computing environments such as UGE, PBS, SLURM, and HTCondor using **[vine\_submit\_workers(1)](/vine_submit_workers/1.md)** or **[vine\_factory(1)](/vine_factory/1.md)**.

## OPTIONS

- **-v,--version**

  Show version string.

- **-h,--help**

  Show this help message.

- **-M,--manager-name=*\<name\>***

  Set the name of the project this worker should work for.  A worker can have multiple projects.

- **-C,--catalog=*\<catalog\>***

  Set catalog server to *\<catalog\>*. Format: HOSTNAME:PORT

- **-d,--debug=*\<flag\>***

  Enable debugging for the given subsystem. Try -d all as a start.

- **-o,--debug-file=*\<file\>***

  Write debugging output to this file. By default, debugging is sent to stderr (":stderr"). You may specify logs to be sent to stdout (":stdout") instead.

- **--debug-max-rotate=*\<bytes\>***

  Set the maximum file size of the debug log.  If the log exceeds this size, it is renamed to "filename.old" and a new logfile is opened.  (default=10M. 0 disables)

- **--debug-release-reset**

  Debug file will be closed, renamed, and a new one opened after being released from a manager.

- **-P,--password=*\<pwfile\>***

  Password file for authenticating to the manager.

- **-t,--timeout=*\<time\>***

  Abort after this amount of idle time. (default=900s)

- **--parent-death**

  Exit if parent process dies.

- **-w,--tcp-window-size=*\<size\>***

  Set TCP window size.

- **-i,--min-backoff=*\<time\>***

  Set initial value for backoff interval when worker fails to connect to a manager. (default=1s)

- **-b,--max-backoff=*\<time\>***

  Set maxmimum value for backoff interval when worker fails to connect to a manager. (default=60s)

- **-A,--arch=*\<arch\>***

  Set the architecture string the worker reports to its supervisor. (default=the value reported by uname)

- **-O,--os=*\<os\>***

  Set the operating system string the worker reports to its supervisor. (default=the value reported by uname)

- **--workspace=*\<path\>***

   Set the workspace directory where the worker keeps its cache, task sandboxes, performs data transfers, etc.  By default, this directory is FC/tmp/worker-UID-PIDFT and is deleted when the worker exits. OPTION\_LONG(keep-workspace) Do not delete the contents of the workspace on worker exit.  This permits the worker to restart at a later time and recover the contents of its cache directory.

- **--cores=*\<n\>***

  Set the number of cores this worker should use.  Set it to 0 to have the worker use all of the available resources. (default=1)

- **--gpus=*\<n\>***

  Set the number of GPUs this worker should use. If less than 0 or not given, try to detect gpus available.

- **--memory=*\<mb\>***

  Manually set the amount of memory (in MB) reported by this worker.

- **--disk=*\<mb\>***

  Manually set the amount of disk space (in MB) reported by this worker.

- **--wall-time=*\<s\>***

  Set the maximum number of seconds the worker may be active.

- **--feature=*\<feature\>***

  Specifies a user-defined feature the worker provides (option can be repeated).

- **--volatility=*\<chance\>***

  Set the percent chance per minute that the worker will shut down (simulates worker failures, for testing only).

- **--connection-mode=*\<mode\>***

  When using -M, override manager preference to resolve its address. One of by\_ip, by\_hostname, or by\_apparent\_ip. Default is set by manager.

- **--transfer-port=*\<port\>***

   Listening port for worker-worker transfers.  (default: any))

- **--contact-hostport=*\<hostport\>***

   Explicit contact host:port for worker-worker transfers, e.g., when routing is used. (default: :\<transfer\_port\>)

- **--ssl**

  Enable tls connection to manager (manager should support it).

- **--tls-sni=*\<\>***

  SNI domain name if different from manager hostname. Implies --ssl.

## EXIT STATUS

On success, returns zero.  On failure, returns non-zero.

## EXAMPLES

To run **vine\_worker** to join a specific manager process running on host FCmanager.somewhere.eduFT port 9123:

```

```

-

  % vine\_worker manager.somewhere.edu 9123

To run **vine\_worker** in auto mode with debugging turned on for all subsystems and to accept tasks only from a manager application with project name set to project\_A:

```

```

-

  % vine\_worker -a -d all -M project\_A

## COPYRIGHT

The Cooperative Computing Tools are Copyright (C) 2022 The University of Notre Dame.  This software is distributed under the GNU General Public License.  See the file COPYING for details.

## SEE ALSO

- •

  **Cooperative Computing Tools Documentation**

- •

  **TaskVine User Manual**

- •

  **[vine\_worker(1)](/vine_worker/1.md)** **[vine\_status(1)](/vine_status/1.md)** **[vine\_factory(1)](/vine_factory/1.md)** **[vine\_graph\_log(1)](/vine_graph_log/1.md)**
