Learn R Programming

mirai (version 2.5.1)

cluster_config: Cluster Remote Launch Configuration

Description

Generates a remote configuration for launching daemons using an HPC cluster resource manager such as Slurm sbatch, SGE and Torque/PBS qsub or LSF bsub.

Usage

cluster_config(command = "sbatch", options = "", rscript = "Rscript")

Value

A list in the required format to be supplied to the remote argument of daemons() or launch_remote().

Arguments

command

filename of executable e.g. "sbatch" for Slurm. Replace with "qsub" for SGE / Torque / PBS, or "bsub" for LSF. See examples below.

options

options as would be supplied inside a script file passed to command, e.g. "#SBATCH --mem=10G", each separated by a new line. See examples below.
Other shell commands e.g. to change working directory may also be included.
For certain setups, "module load R" as a final line is required, or for example "module load R/4.5.0" for a specific R version.
For the avoidance of doubt, the initial shebang line such as "#!/bin/bash" is not required.

rscript

filename of the R executable. Use the full path of the Rscript executable on the remote machine if necessary. If launching on Windows, "Rscript" should be replaced with "Rscript.exe".

See Also

ssh_config() for SSH launch configurations, or remote_config() for generic configurations.

Examples

Run this code
# Slurm Config:
cluster_config(
  command = "sbatch",
  options = "#SBATCH --job-name=mirai
             #SBATCH --mem=10G
             #SBATCH --output=job.out
             module load R/4.5.0",
  rscript = file.path(R.home("bin"), "Rscript")
)

# SGE Config:
cluster_config(
  command = "qsub",
  options = "#$ -N mirai
             #$ -l mem_free=10G
             #$ -o job.out
             module load R/4.5.0",
  rscript = file.path(R.home("bin"), "Rscript")
)

# Torque/PBS Config:
cluster_config(
  command = "qsub",
  options = "#PBS -N mirai
             #PBS -l mem=10gb
             #PBS -o job.out
             module load R/4.5.0",
  rscript = file.path(R.home("bin"), "Rscript")
)

# LSF Config:
cluster_config(
  command = "bsub",
  options = "#BSUB -J mirai
             #BSUB -M 10000
             #BSUB -o job.out
             module load R/4.5.0",
  rscript = file.path(R.home("bin"), "Rscript")
)

if (FALSE) {

# Launch 2 daemons using the Slurm sbatch defaults:
daemons(n = 2, url = host_url(), remote = cluster_config())
}

Run the code above in your browser using DataLab