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.