bplapply: Parallel lapply-like functionality

Description Usage Arguments Details Value Author(s) See Also Examples

Description

bplapply applies FUN to each element of X. Any type of object X is allowed, provided length, [, and [[ methods are available. The return value is a list of length equal to X, as with lapply.

Usage

1
bplapply(X, FUN, ..., BPREDO = list(), BPPARAM=bpparam())

Arguments

X

Any object for which methods length, [, and [[ are implemented.

FUN

The function to be applied to each element of X.

...

Additional arguments for FUN, as in lapply.

BPPARAM

An optional BiocParallelParam instance determining the parallel back-end to be used during evaluation, or a list of BiocParallelParam instances, to be applied in sequence for nested calls to BiocParallel functions.

BPREDO

A list of output from bplapply with one or more failed elements. When a list is given in BPREDO, bpok is used to identify errors, tasks are rerun and inserted into the original results.

Details

See methods{bplapply} for additional methods, e.g., method?bplapply("MulticoreParam").

Value

See lapply.

Author(s)

Martin Morgan mailto:mtmorgan@fhcrc.org. Original code as attributed in mclapply.

See Also

Examples

1
2
3
4
5
6
7
8
9
methods("bplapply")

## ten tasks (1:10) so ten calls to FUN default registered parallel
## back-end. Compare with bpvec.
fun <- function(v) {
    message("working") ## 10 tasks
    sqrt(v)
}
bplapply(1:10, fun) 

Example output

[1] bplapply,ANY,BatchJobsParam-method bplapply,ANY,DoparParam-method    
[3] bplapply,ANY,SerialParam-method    bplapply,ANY,SnowParam-method     
[5] bplapply,ANY,list-method           bplapply,ANY,missing-method       
see '?methods' for accessing help and source code
working
working
working
working
working
working
working
working
working
working
[[1]]
[1] 1

[[2]]
[1] 1.414214

[[3]]
[1] 1.732051

[[4]]
[1] 2

[[5]]
[1] 2.236068

[[6]]
[1] 2.44949

[[7]]
[1] 2.645751

[[8]]
[1] 2.828427

[[9]]
[1] 3

[[10]]
[1] 3.162278

BiocParallel documentation built on Nov. 8, 2020, 5:46 p.m.