Skip to content

Commit

Permalink
Added note of concern and link to issue 1
Browse files Browse the repository at this point in the history
  • Loading branch information
russellpierce committed Dec 9, 2015
1 parent 5b8e7c6 commit 515c72b
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
# mcparallelDo [![License](http://img.shields.io/badge/license-GPL%20%28%3E=%202%29-brightgreen.svg?style=flat)](http://www.gnu.org/licenses/gpl-2.0.html)[![Travis-CI Build Status](https://travis-ci.org/drknexus/mcparallelDo.svg?branch=master)](https://travis-ci.org/drknexus/mcparallelDo)[![CRAN_Status_Badge](http://www.r-pkg.org/badges/version/mcparallelDo)](http://cran.r-project.org/package=mcparallelDo)
A Simplified Interface for Running Commands on Parallel Processes.

`mcparallelDo` wraps mcparallel() and mccollect() from 'parallel' with temporary variables and a task handler. Wrapped in this way the results of an mcparallel() call can be returned to the R session when the fork is complete without explicitly issuing a specific mccollect() to retrieve the value. Outside of top-level tasks, multiple mcparallel() jobs can be retrieved with a single call to mcparallelDoCheck().
`mcparallelDo` wraps mcparallel() and mccollect() from 'parallel' with temporary variables and a task handler. Wrapped in this way the results of an mcparallel() call can be returned to the R session when the fork is complete without explicitly issuing a specific mccollect() to retrieve the value. Outside of top-level tasks, multiple mcparallel() jobs can be retrieved with a single call to mcparallelDoCheck(). [A *warning*, like a regular fork these functions do not currently return warnings, only errors](https://github.com/drknexus/mcparallelDo/issues/1).

**NOTE:** Given that Windows does not support parallalism through forks, the R base functions `mcparallel` and `mccollect` do not work. Therefore, although `mcparallelDo` will work on windows and pass through commands to be evaluated, it has no meaningful effect on Windows.

# Purpose
In an interactive session one may be blocked in performing additional work by waiting for a model fit. It is cumbersome to launch an `mcparallel` fork to perform the work and the manually collect the result via `mccollect`. Specfically, one is left uncertain about when the work might be completed, requiring either some blocking due to the use of `wait = TRUE` or some inconvience by repeatedly running mccollect every now and again to see if the computation has finished.

# Dependencies

* parallel (for forking functions)
Expand Down

0 comments on commit 515c72b

Please sign in to comment.