Description Usage Arguments Details Value Examples
Example functions of RPC related to pbdCS
1 2 3 4 5 6 |
machine |
A machine configuration. See |
cmd |
the main command to be executed on the server. |
preload |
further commands preloaded before the main |
Using either ssh
or plink
to launch a pbdCS R cluster.
NO further input from stdin
is expected.
Outputs or errors may not be captured by R.
start_cs()
starts a pbdCS R cluster on remote servers.
Typical commands to launch a pbdCS R cluster is given in the example.
The linux/unix commands are as the following:
1)nohup
is for the non-stop call after disconnection.
2)mpiexec -np 4
is for launching 4 MPI instances.
3)Rscript -e 'pbdCS::pbdserver()'
is for R to start the
pbdCS R cluster within MPI in batch.
4)> .rrlog
is to direct the stdout
to a file
.rrlog
5)2>&1
is to turn stderr
to stdout
which
is the file .cslog
.
6)< /dev/null
is to get stdin
from
/dev/null
which is nothing happen.
7)&
is to put the batch command for the pbdCS R cluster
in background.
check_cs()
checks if there is a pbdCS R cluster on a remote
server. Lunix/unix commands ps
and grep
are used.
kill_cs()
kills the pbdCS R cluster if found.
Lunix/unix commands ps
, grep
, awk
, and kill
are used.
Mainly the message received at the command line will be printed, but may not be captured by R.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | ## Not run:
library(pbdRPC, quietly = TRUE)
# rpcopt_set(user = "snoweye", hostname = "192.168.56.101")
m <- machine(user = "snoweye", hostname = "192.168.56.101")
check_cs(m) # pid 2857 (may differ)
kill_cs(m) # all pbdCS pids are killed
check_cs(m) # make sure no pbdCS R cluster is running
### use "; " to bypass multiple commands
preload <- "source ~/work-my/00_set_devel_R; "
### start a new pbdCS R cluster
start_cs(m, preload = preload)
check_cs(m)
kill_cs(m)
### Example: for module load on supercomputers
preload <- "module load r; " # e.g. via module load r
start_cs(m, preload = preload)
check_cs(m)
kill_cs(m)
## End(Not run)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.