A Future API for Parallel Processing using 'callr'

Implementation of the Future API on top of the 'callr' package. This allows you to process futures, as defined by the 'future' package, in parallel out of the box, on your local (Linux, macOS, Windows, ...) machine. Contrary to backends relying on the 'parallel' package (e.g. 'future::multisession'), the 'callr' backend provided here can run more than 125 parallel R processes.


News

Package: future.callr

Version: 0.4.0 [2019-01-05]

NEW FEATURES:

  • Now the future label is exposed in the process information (e.g. top) via a dummy --future-label="" argument in the callr system call.

BUG FIXES:

  • plan(callr, workers) where 'workers' being a function would result in an error when a future was created.

Version: 0.3.1 [2018-07-18]

NEW FEATURES:

  • The callr backend supports the handling of the standard output as implemented in future (>= 1.9.0).

BUG FIXES:

  • Callr futures did not protect against recursive parallelism, e.g. with plan(list(callr, callr)) the second layer of futures would use the same number of workers as the first layer.

Version: 0.3.0 [2018-05-03]

NEW FEATURES:

  • Argument 'workers' of future strategies may now also be a function, which is called without argument when the future strategy is set up and used as is. For instance, plan(callr, workers = halfCores) where halfCores <- function() { max(1, round(availableCores() / 2)) } will use half of the number of available cores. This is useful when using nested future strategies with remote machines.

  • Gathering of results from background processes is made a little bit more robust against slow file systems by retrying a few times before accepting an error as an error.

CODE REFACTORING:

  • Prepared code to gather a richer set of results from futures.

BUG FIXES:

  • Callr futures did not acknowledge timeout option 'future.wait.timeout'.

Version: 0.2.0 [2018-02-12]

NEW FEATURES:

  • Producing errors of class FutureError where applicable.

DOCUMENTATION:

  • Minor updates to the vignette related to the callr package.

Version: 0.1.1 [2017-11-18]

BUG FIXES:

  • Number of workers in plan(callr, workers = n) was not respected.

Version: 0.1.0 [2017-11-16]

NEW FEATURES:

  • Added callr futures. Use plan(callr) or plan(callr, workers = 4L).

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("future.callr")

0.4.0 by Henrik Bengtsson, 4 months ago


https://github.com/HenrikBengtsson/future.callr


Report a bug at https://github.com/HenrikBengtsson/future.callr/issues


Browse source code at https://github.com/cran/future.callr


Authors: Henrik Bengtsson [aut, cre, cph]


Documentation:   PDF Manual  


LGPL (>= 2.1) license


Imports callr

Depends on future

Suggests future.apply, listenv, markdown, R.rsp


See at CRAN