Enhancing the 'parallel' Package
Overview
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.
New Features
availableCores()andavailableWorkers()gained support for R optionsparallelly.availableCores.methods.excludesandparallelly.availableWorkers.methods.excludes(with corresponding environment variables) to specify lookup methods to be excluded by default.makeClusterPSOCK()andmakeNodePSOCK()gained argumentrscript_callto customize the parallel worker loop, which defaults toparallel:::.workRSOCK().- Add internal worker loop
parallelly:::workRPSOCK()that takes optional argumentworkCommandto customize the defaultparallel:::workCommand().
Show all changes in 1.48.0Hide the rest of the changes in 1.48.0
- Analogusly to
availableCores(),availableWorkers()queries also Linux CGroups v2 CPU affinity valuescpuset.cpusandcpuset.cpus.effective.
Bug Fixes
availableCores(methods = "cgroups2.cpuset.cpus")would produce "Error : 'length(cpuset) <= max_cores' is not TRUE" if CGroups v2 'cpuset.cpus' comprised an empty string.availableCores(methods = "cgroups2.cpuset.cpus.effective")would produce "Error in if (any(value < 0L | value >= max_cores)) { : missing value where TRUE/FALSE needed" ifparallel::detectCores()returned a missing value.- Now
makeClusterPSOCK(workers)produces a more informative error message ifworkersis not an integer or a character vector.
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-04-30
- ERROR12 OK, 1 ERROR2026-04-28
- OK14 OK2026-03-31
Show 2 earlier changesHide 2 earlier changes
- ERROR13 OK, 1 ERROR2026-03-28
- OK14 OK2026-03-10
Documentation
- Help pages
- 24 (5 internal)
- Examples that run
- 83%15 run in a plain check (2 of them under a condition) · 2 only when donttest examples are enabled (R CMD check --as-cran) · 1 never run
- Exported functions with examples
- 85%
- Documented parameters
- 90%
- Return-value docs
- 100%
- Help pages citing references
- 21%
- An Introduction to 'parallelly'
- Parallel Workers in the Cloud
- Parallel Workers on High-Performance Compute Environments
- Parallel Workers on Other Machines
- Parallel Workers on the Local Machine
- Parallel Workers Running in a Sandbox
- Parallel Workers Running in Linux Containers
- Parallel Workers Running MS Windows via Wine
- Parallel Workers with CPU and Memory Limited
Downloads
Repository
- PRs merged (all time)
- 50%
- Median days to close, 50 most recently updated closed issues
- 5
- Median days to close, 50 most recently updated closed PRs
- 2
Stars over time
Forks over time
Issues over time
PRs over time
Commits over time
11 development-tooling and community-health practices detected across 7 families in the upstream repository
Checks run against github.com/futureverse/parallelly on 2026-10-11.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
Show all practicesHide 3 practices
Dependencies
Installing parallelly adds no packages beyond those that come with R.
Show the 48 most downloaded dependentsHide the 48 most downloaded dependents
and 41 more dependents and 36 packages that suggest it on CRAN ↗
Code & Tests
People & History
Pick two releases to compare their code metrics.
- 1.48.0Latest
- RR 4.6.0 released · 2026-04-24
- 1.47.02026-04-17 · diff ↗
- 1.46.12026-01-08 · diff ↗
- 1.46.02025-12-12 · diff ↗
- 1.45.12025-07-24 · diff ↗
- 1.45.02025-06-02 · diff ↗
- 1.44.02025-05-07 · diff ↗
- RR 4.5.0 released · 2025-04-11
- 1.43.0
- 1.42.02025-01-30 · diff ↗
- 1.41.02024-12-18 · diff ↗
- 1.40.12024-12-04 · diff ↗
- 1.40.02024-12-03 · diff ↗
- 1.39.02024-11-07 · diff ↗
- 1.38.0
Show 27 earlier eventsHide 27 earlier events
- RR 4.4.0 released · 2024-04-24
- 1.37.12024-02-29 · diff ↗
- 1.37.02024-02-14 · diff ↗
- 1.36.0
- RR 4.3.0 released · 2023-04-21
- 1.35.02023-03-23 · diff ↗
- 1.34.02023-01-13 · diff ↗
- 1.33.0
- 1.32.12022-07-21 · diff ↗
- 1.32.02022-06-07 · diff ↗
- 1.31.12022-04-22 · diff ↗
- RR 4.2.0 released · 2022-04-22
- 1.31.02022-04-07 · diff ↗
- 1.30.02021-12-17 · diff ↗
- 1.29.02021-11-21 · diff ↗
- 1.28.1
- 1.27.02021-07-19 · diff ↗
- 1.26.12021-06-30 · diff ↗
- 1.26.0
- RR 4.1.0 released · 2021-05-18
- 1.25.02021-04-30 · diff ↗
- 1.24.0
- 1.23.0
- 1.22.0
- 1.21.0
- 1.20.02020-10-20
- RR 4.0.0 released · 2020-04-24
Package metadata
- First published
- 2020-10-20
- Total releases
- 36 / 6 yrs
- License
- LGPL (>= 2.1)
- Download size
- 343 KB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("parallelly")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
The repository also keeps a CITATION.cff.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-18, which the citation names so these numbers can be found later. More on citing and the projects behind them.