VPSPulse Mirrors

High-Performance Open-Source Archive

Parallel Execution for Confidence Intervals

Parallel Execution for Confidence Intervals

Justin Kamerman

2024-08-27

To leverage multicore processors to speed up calcualtion of confidence intervals, use the parallel package to create a cluster and attach the qfasa.parallel.cluster option.

The cluster can be used for multiple invocations of beta.meths.CI() but should be shut down when work is complete to free up resources.

Set Number of Cores

For maximum speedup, set the qfasa.parallel.numcores option to the total number of cores on your computer. The number of cores can be determined using the detectCores() function.

parallel::detectCores()
## [1] 20

Create Cluster

options(qfasa.parallel.numcores = 8)
options(qfasa.parallel.cluster = parallel::makeCluster(getOption('qfasa.parallel.numcores'),
                                                       type='FORK'))
#
# Note that if using windows, do not include type='FORK'.

Confidence Intervals

No change is required to the conf.meth() call. The implementation will automatically detect the cluster and use it to parallelize the bootstrap iterations.

Shut Down Cluster

parallel::stopCluster(getOption('qfasa.parallel.cluster'))

Portability

Parallel execution has been tested on Ubuntu Linux, AWS Linux, and MacOS platforms only.

Need mirroring services?
Contact our team at info@vpspulse.com.

Mirror powered by VPSpulse

Infrastructure sponsored by VPSPulse & Secure Payments by ArionPay.