Package: parallelly 1.48.0

Henrik Bengtsson

parallelly: Enhancing the 'parallel' Package

Utility functions that enhance the 'parallel' package and support the built-in parallel backends of the 'future' package. For example, availableCores() gives the number of CPU cores available to your R process as given by the operating system, 'cgroups' and Linux containers, R options, and environment variables, including those set by job schedulers on high-performance compute clusters. If none is set, it will fall back to parallel::detectCores(). Another example is 'parallel::makeCluster(type = "RPSOCK")', which is backward compatible with 'parallel::makeCluster()' while doing a better job in setting up remote cluster workers without the need for configuring the firewall to do port-forwarding to your local computer.

Authors:Henrik Bengtsson [aut, cre, cph], Mike Cheng [ctb]

parallelly_1.48.0.tar.gz
parallelly_1.48.0.tar.gz(r-4.7-arm64)parallelly_1.48.0.tar.gz(r-4.7-x86_64)parallelly_1.48.0.tar.gz(r-4.6-arm64)parallelly_1.48.0.tar.gz(r-4.6-x86_64)
parallelly_1.48.0.tgz(r-4.6-emscripten)
manual.pdf |manual.html
DESCRIPTION |NEWS
card.svg |card.png
parallelly/json (API)

# Install 'parallelly' in R:
install.packages('parallelly', repos = c('https://cran.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/futureverse/parallelly/issues

Pkgdown/docs site:https://parallelly.futureverse.org

On CRAN:

Conda:

12.13 score 1.7k packages 1.7k scripts 348k downloads 26 exports 0 dependencies

Last updated from:414fc7b7c8. Checks:4 ERROR, 2 OK. Indexed: no.

TargetResultTimeFilesSyslog
linux-devel-arm64ERROR184
linux-devel-x86_64ERROR154
source / vignettesOK139
linux-release-arm64ERROR184
linux-release-x86_64ERROR166
wasm-releaseOK92

Exports:as.clusterautoStopClusteravailableConnectionsavailableCoresavailableWorkerscloneNodeconnectionIdcpuLoadfreeConnectionsfreeCoresfreePortisConnectionValidisForkedChildisForkedNodeisLocalhostNodeisNodeAlivekillNodemakeClusterMPImakeClusterPSOCKmakeClusterSequentialmakeNodePSOCKRMPIRPSOCKSEQserializedSizesupportsMulticore

Dependencies:

An Introduction to 'parallelly'
Feature Comparison 'parallelly' vs 'parallel' | Compatibility with the parallel package | availableCores() vs parallel::detectCores() | Backward compatibility with the future package | Roadmap

Last update: 2026-06-29
Started: 2024-12-03

Parallel Workers Running MS Windows via Wine
Introduction | Install R for MS Windows 11 | Examples | Example: Parallel workers running MS Windows via Wine | Example: Installing packages in Wine | Appendix | Using a personal package library in Wine | Wine and R warnings | Windows-only CRAN packages

Last update: 2026-06-29
Started: 2024-12-03

Parallel Workers in the Cloud
Introduction | Examples | Example: Remote worker running on GCE | Example: Remote worker running on AWS

Last update: 2026-04-17
Started: 2024-12-03

Parallel Workers on High-Performance Compute Environments
Introduction | Examples | Example: Launch parallel workers via the Grid Engine job scheduler | Example: Launch parallel workers via the Fujitsu Technical Computing Suite job scheduler

Last update: 2026-04-17
Started: 2024-12-03

Parallel Workers on Other Machines
Introduction | SSH and R configuration (once) | Verifying SSH access | Configure password-less SSH access | Verifying R exists on the other machine | Final checks | Machine-specific SSH customization (recommended) | Examples | Example: Two parallel workers on a single remote machine | Example: Two parallel workers on two remote machines | Example: Three parallel workers on two remote machines | Example: A mix of local and remote workers | Example: Parallel workers on a remote machine accessed via dedicated login machine | Special needs and tweaks | Example: Remote workers ignoring any remote .Rprofile settings | Example: Use PuTTY on MS Windows to connect to remote worker | Example: Two remote workers running on MS Windows

Last update: 2026-04-17
Started: 2024-12-03

Parallel Workers on the Local Machine
Introduction | Examples | Example: Launching two parallel workers | Example: Launching as many parallel workers as allotted

Last update: 2026-04-17
Started: 2024-12-03

Parallel Workers Running in Linux Containers
Introduction | Examples | Example: Two parallel workers running in Docker | Example: Two parallel workers running in Apptainer | Example: Two parallel workers running in udocker

Last update: 2026-04-17
Started: 2024-12-03

Parallel Workers with CPU and Memory Limited
Introduction | Examples | Example: Linux parallel workers with a lower process priority ("nice") | Example: Linux parallel workers CPU and memory limited by CGroups | Example: MS Windows parallel workers with specific CPU affinities

Last update: 2026-04-17
Started: 2024-12-03

Parallel Workers Running in a Sandbox
Introduction | Examples | Example: Bubblewrap on Linux

Last update: 2026-01-08
Started: 2025-12-12

Readme and manuals

Help Manual

Help pageTopics
Coerce an Object to a Cluster Objectas.cluster as.cluster.cluster as.cluster.list as.cluster.RichSOCKnode as.cluster.SOCK0node as.cluster.SOCKnode c.cluster
Automatically Stop a Cluster when Garbage CollectedautoStopCluster
Number of Available and Free ConnectionsavailableConnections freeConnections
Get Number of Available Cores on The Current MachineavailableCores
Get Set of Available WorkersavailableWorkers
Clone one or more nodescloneNode
Find a TCP port that can be openedfreePort
Checks if a Connection is ValidconnectionId isConnectionValid
Checks whether or not we are running in a forked child processisForkedChild
Checks whether or not a Cluster Node Runs in a Forked ProcessisForkedNode
Checks whether or not a Cluster Node Runs on LocalhostisLocalhostNode
Check whether or not the cluster nodes are aliveisNodeAlive
Terminate one or more cluster nodes using process signalingkillNode
Create a Rich Message Passing Interface (MPI) Cluster of R Workers for Parallel ProcessingmakeClusterMPI RMPI
Create a Rich PSOCK Cluster of R Workers for Parallel ProcessingmakeClusterPSOCK makeNodePSOCK RPSOCK
Create a "parallel" cluster running sequentially in the current sessionmakeClusterSequential SEQ
Calculate the size of an R object when it is serializedserializedSize
Check If Forked Processing ("multicore") is SupportedsupportsMulticore
Options Used by the 'parallelly' Packagefuture.availableCores.custom future.availableCores.fallback future.availableCores.methods future.availableCores.system future.availableWorkers.custom future.availableWorkers.methods future.fork.enable future.supportsMulticore.unstable parallelly.availableCores.custom parallelly.availableCores.fallback parallelly.availableCores.fraction parallelly.availableCores.logical parallelly.availableCores.max parallelly.availableCores.methods parallelly.availableCores.methods.excludes parallelly.availableCores.min parallelly.availableCores.omit parallelly.availableCores.system parallelly.availableWorkers.custom parallelly.availableWorkers.methods parallelly.availableWorkers.methods.excludes parallelly.debug parallelly.fork.enable parallelly.makeNodePSOCK.calls parallelly.makeNodePSOCK.connectTimeout parallelly.makeNodePSOCK.rscript_call parallelly.makeNodePSOCK.rshcmd parallelly.makeNodePSOCK.rshopts parallelly.makeNodePSOCK.setup_strategy parallelly.makeNodePSOCK.socketOptions parallelly.makeNodePSOCK.timeout parallelly.makeNodePSOCK.tries parallelly.makeNodePSOCK.tries.delay parallelly.makeNodePSOCK.useXDR parallelly.makeNodePSOCK.validate parallelly.maxWorkers.localhost parallelly.maxWorkers.localhost.ignore parallelly.options parallelly.supportsMulticore.disableOn parallelly.supportsMulticore.unstable R_FUTURE_AVAILABLECORES_FALLBACK R_FUTURE_AVAILABLECORES_SYSTEM R_FUTURE_FORK_ENABLE R_FUTURE_SUPPORTSMULTICORE_UNSTABLE R_PARALLELLY_AVAILABLECORES_FALLBACK R_PARALLELLY_AVAILABLECORES_FRACTION R_PARALLELLY_AVAILABLECORES_LOGICAL R_PARALLELLY_AVAILABLECORES_MAX R_PARALLELLY_AVAILABLECORES_METHODS R_PARALLELLY_AVAILABLECORES_METHODS_EXCLUDES R_PARALLELLY_AVAILABLECORES_MIN R_PARALLELLY_AVAILABLECORES_OMIT R_PARALLELLY_AVAILABLECORES_SYSTEM R_PARALLELLY_AVAILABLEWORKERS_METHODS R_PARALLELLY_AVAILABLEWORKERS_METHODS_EXCLUDES R_PARALLELLY_FORK_ENABLE R_PARALLELLY_MAKENODEPSOCK_CALLS R_PARALLELLY_MAKENODEPSOCK_CONNECTTIMEOUT R_PARALLELLY_MAKENODEPSOCK_RSCRIPT_CALL R_PARALLELLY_MAKENODEPSOCK_RSHCMD R_PARALLELLY_MAKENODEPSOCK_RSHOPTS R_PARALLELLY_MAKENODEPSOCK_SETUP_STRATEGY R_PARALLELLY_MAKENODEPSOCK_SOCKETOPTIONS R_PARALLELLY_MAKENODEPSOCK_TIMEOUT R_PARALLELLY_MAKENODEPSOCK_TRIES R_PARALLELLY_MAKENODEPSOCK_TRIES_DELAY R_PARALLELLY_MAKENODEPSOCK_USEXDR R_PARALLELLY_MAKENODEPSOCK_VALIDATE R_PARALLELLY_MAXWORKERS_LOCALHOST R_PARALLELLY_MAXWORKERS_LOCALHOST_IGNORE R_PARALLELLY_SUPPORTSMULTICORE_DISABLEON R_PARALLELLY_SUPPORTSMULTICORE_UNSTABLE zzz-parallelly.options