Distribute files to slaves

Share:

Description

This function distributes files from the master node to the disk of the slaves in the computer cluster.

Usage

1
2
3
4
5
distributeFiles(files, to = tempdir(),
	protocol = c("R", "RCP", "SCP"), hierarchicallyDist = FALSE, 
	master=TRUE, delExistTo=FALSE,
	full.names=TRUE,
	cluster, verbose = getOption("verbose"))

Arguments

files

A character vector containing the names of the files.

to

A character that defines the path where the files should be stored at the slaves. Default: tempdir()

protocol

A character that defines the Copy-Protocol: "R", "RCP", "SCP"

hierarchicallyDist

A logical value. If TRUE data will be hierarchically distributed to all slaves. If FALSE at every slave only a part of data is available.

master

A logical value. If TRUE all data will be copied to the 'to' directory at the master node. Default = TRUE

delExistTo

A logical value. If TRUE directory 'to' will be deleted at master and all nodes first. Default = FALSE

full.names

A logical value. If TRUE, the directory path is prepended to the file names (in slot CELfiles). If FALSE, only the file names are returned .

cluster

A cluster object obtained from the function makeCluster in the SNOW package. For default .affyParaInternalEnv$cl will be used.

verbose

A logical value. If TRUE it writes out some messages. default: getOption("verbose")

Details

This function distributes files from the master node to the disk of the slaves in the computer cluster. First the vector of files get partitioned by the number of slaves. Then the parts will be copied to the to directory at the slaves. If hierarchicallyDist is TRUE, all slaves change the files among each other and in the end at every slave all files are located. (But this is not necessary for distributed computing with the affyPara package.

For using this function a computer cluster using the SNOW package has to be started. Starting the cluster with the command makeCluster generates an cluster object in the affyPara environment (.affyParaInternalEnv) and no cluster object in the global environment. The cluster object in the affyPara environment will be used as default cluster object, therefore no more cluster object handling is required. The makeXXXcluster functions from the package SNOW can be used to create an cluster object in the global environment and to use it for the preprocessing functions.

Value

A list of two objects

to

A character that defines the path where the files are located at the slaves.

CELfiles

A list of characters, how the files are distributed to the slaves. Depending on full.names only the filenames or path/filenames.

Warning

For protocol "R" hierarchically distribution not yet available.

Author(s)

Markus Schmidberger schmidb@ibe.med.uni-muenchen.de, Ulrich Mansmann mansmann@ibe.med.uni-muenchen.de

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
## Not run: 
library(affyPara)

makeCluster(10)

path <- "tmp/CELfiles"
CELfiles <- list.files(path,full.names=TRUE)

distList <- distributeFiles(CELfiles, protocol="RCP", verbose=TRUE)

stopCluster()

## End(Not run)