The future package in R provides a unified abstraction for asynchronous and/or parallel computation. It allows R expressions to be scheduled for future evaluation, with the result retrieved later, in a way decoupled from the specific backend used. This lets code be written in a way that works with sequential execution, multicore, multisession, cluster, or remote compute backends, without changing the high-level code. It handles automatic exporting of needed global variables/functions, managing of packages, RNG, etc.
Features
- Unified Future API: same interface for different execution modes (sequential, multicore, multisession, cluster)
- Automatic detection and export of global objects and functions needed by future expressions so user doesn’t need to manage that manually
- Support for various parallel and distributed computation backends (local multicore, remote clusters, etc.)
- Plans and strategies: ability to control how futures are resolved (e.g. whether in background, how many workers, etc.) via plan() etc
- Integration with other packages (future.apply, furrr, etc.) to provide parallel versions of *apply(), mapping functions etc
- Non-blocking or asynchronous evaluation (so main process need not block while future is resolving) and support for querying whether a future is resolved etc
Categories
FrameworksFollow future
nel_h2
MongoDB Atlas runs apps anywhere
MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of future!