% File src/library/parallel/man/parallel-package.Rd
% Part of the R package, https://www.R-project.org
% Copyright 2011-2016 R Core Team
% Distributed under GPL 2 or later

\name{parallel-package}
\alias{parallel-package}
\alias{parallel}
\docType{package}
\title{
  Support for Parallel Computation
}
\description{
  Support for parallel computation, including random-number generation.
}
\details{
  This package was first included with \R 2.14.0 in 2011.

  There is support for multiple RNG streams with the
  \samp{"L'Ecuyer-CMRG"} \link{RNG}: see \code{\link{nextRNGStream}}.

  It contains functionality derived from and pretty much equivalent to
  that contained in packages \pkg{multicore} (formerly on
  \acronym{CRAN}, with some low-level functions renamed and not
  exported) and \CRANpkg{snow} (for socket clusters only, but MPI
  %% and NWS
  clusters generated by \CRANpkg{snow} are also supported). There
  have been many enhancements and bug fixes since 2011.

  This package also provides \code{\link{makeForkCluster}} to create
  socket clusters by forking (not Windows).

  For a complete list of exported functions, use
  \code{library(help = "parallel")}.
}
\author{
  Brian Ripley, Luke Tierney and Simon Urbanek

  Maintainer: R Core Team \email{R-core@r-project.org}
}
\seealso{
  Parallel computation involves launching worker processes: functions
  \code{\link{psnice}} and \code{\link{pskill}} in package \pkg{tools}
  provide means to manage such processes.
}
\keyword{ package }
