Learn R Programming

⚠️There's a newer version (1.58.0) of this package.Take me there.

future (version 1.7.0)

Unified Parallel and Distributed Processing in R for Everyone

Description

The purpose of this package is to provide a lightweight and unified Future API for sequential and parallel processing of R expression via futures. The simplest way to evaluate an expression in parallel is to use `x %<-% { expression }` with `plan(multiprocess)`. This package implements sequential, multicore, multisession, and cluster futures. With these, R expressions can be evaluated on the local machine, on in parallel a set of local machines, or distributed on a mix of local and remote machines. Extensions to this package implements additional backends for processing futures via compute cluster schedulers etc. Because of its unified API, there is no need to modify code in order switch from sequential on the local machine to, say, distributed processing on a remote compute cluster. Another strength of this package is that global variables and functions are automatically identified and exported as needed, making it straightforward to tweak existing code to make use of futures.

Copy Link

Version

Install

install.packages('future')

Monthly Downloads

292,352

Version

1.7.0

License

LGPL (>= 2.1)

Issues

Pull Requests

Stars

Forks

Maintainer

Henrik Bengtsson

Last Published

February 11th, 2018

Functions in future (1.7.0)

futures

Gets all futures in an object
availableCores

Get number of available cores on current machine
%plan%

Use a specific plan for a future assignment
%label%

Specify label for a future assignment
getExpression

Inject code for the next type of future to use for nested futures
%lazy%

Control lazy / eager evaluation for a future assignment
multicore

Create a multicore future whose value will be resolved asynchronously in a forked parallel process
sequential

Create a sequential future whose value will be in the current R session
remote

Create a remote future whose value will be resolved asynchronously in a remote process
tweak

Tweaks a future function by adjusting its default arguments
%tweak%

Temporarily tweaks the arguments of the current strategy
%seed%

Set random seed for future assignment
mandelbrot

Mandelbrot convergence counts
nullcon

Creates a connection to the system null device
future.options

Options used for futures
run.Future

Run a future
usedCores

Get number of cores currently used
requestCore

Request a core for multicore processing
makeClusterPSOCK

Create a cluster of R workers for parallel processing
nbrOfWorkers

Gets the number of workers available
resolve

Resolve one or more futures synchronously
plan

Plan how to resolve a future
resolved

Check whether a future is resolved or not
getGlobalsAndPackages

Retrieves global variables of an expression and their associated packages
.length

Gets the length of an object without dispatching
supportsMulticore

Check whether multicore processing is supported or not
sessionDetails

Outputs details on the current R session
%globals%

Specify globals and packages for a future assignment
multiprocess

Create a multiprocess future whose value will be resolved asynchronously using multicore or a multisession evaluation
multisession

Create a multisession future whose value will be resolved asynchronously in a parallel R session
value.Future

The value of a future
values

Gets all values in an object
Future-class

A future represents a value that will be available at some point in the future
FutureGlobals

A representation of a set of globals used with futures
MultiprocessFuture-class

An multiprocess future is a future whose value will be resolved asynchronously in a parallel process
FutureCondition

A condition (message, warning, or error) that occurred while orchestrating a future
as.cluster

Coerce an object to a cluster object
MulticoreFuture-class

An multicore future is a future whose value will be resolved asynchronously in a parallel process
UniprocessFuture-class

An uniprocess future is a future whose value will be resolved synchronously in the current process
FutureEvaluationCondition

A condition (message, warning, or error) that occurred while evaluation a future
ClusterFuture-class

A cluster future is a future whose value will be resolved asynchronously in a parallel process
ConstantFuture-class

A future with a constant value
backtrace

Back trace the expressions evaluated before a condition was caught
availableWorkers

Get set of available workers
future

Create a future
find_references

Get first or all references of an R object
cluster

Create a cluster future whose value will be resolved asynchronously in a parallel process
futureOf

Get the future of a future variable
future_lapply

Apply a Function over a List or Vector via Futures
fold

Efficient fold / reduce / accumulate / combine of a vector