pqR - a pretty quick version of R
pqR is a new version of the R interpreter. It is based on R-2.15.0 and later versions distributed by the R Core Team (at r-project.org), and is now compatible with R-2.15.1. It improves on the R Core version in many ways, such as:
pqR-2017-06-09 introduces a new garbage collector, which is substantially faster than the one used in previous versions of pqR and in current R Core versions. Objects also use less memory with the new garbage collections scheme. It is now possible to configure pqR to use "compressed pointers", which are 32 bits in size even on 64-bit platforms. Compressed pointers can reduce memory usage even further, especially on a 64-bit platform, at a speed cost of up to about 30% in some situations (though many operations will be almost as fast (or even faster) as with uncompressed pointers). For details, see the NEWS file (which is also included in the distribution below).
Currently, pqR is distributed only in source form, and must be compiled on your machine before you can use it. The process is very similar to building R Core versions from source.
Linux systems will usually have all or most of the utilities needed to build pqR, or they are easily installed with a Linux package manager. For a Mac, you will need to install Apple's command-line tools software and a Fortran compiler; parallel computation using "helper threads" requires installing a non-Apple C compiler that supports OpenMP. To install on a MS Windows system, you will need to first install a set of tools, including C and Fortran compilers.
Detailed installation instructions are linked to below (they are also in the source tarball you will download):
The pqR source needed for installation is in the following gzipped tar file:
pqR-2017-06-09.tar.gzYou can verify download integrity by checking the sha1sum.
Unpack this file with the "gunzip" and "tar" commands (many "tar" programs will do the gunzip automatically, or it may have been done by the download softare). Configuration, compilation, and installation can then be done in the same way as for R-2.15.0 (which is similar to later R Core releases), but there are some additional options for pqR. Refer to the file `INSTALL' for the installation instructions for Unix-like systems, or `src/gnuwin32/INSTALL' for instructions on installing on MS Windows. These instructions have been expanded to be more detailed than in R-2.15.0.
For a Windows install, you will also need either pqR-win-extras-32.tar.gz or pqR-win-extras-64.tar.gz.
The pqR wiki contains more information on systems on which pqR has been tested, including the configuration options that were used, and details of compilers used.
A repository of packages known to work with pqR (and with each other) is available at ftp://price.utstat.utoronto.ca. It may be used as the repository when installing packages as follows:
Packages from CRAN may also work with pqR, though some depend on a version of R later than 2.15.1. Note that the pqR repository is not continuously updated with new packages from CRAN. (It may be updated now and then.)
install.packages (vector-of-package-names, repos="ftp://price.utstat.utoronto.ca")
See the pqR wiki for more information on this repository.
The pqR issues page has reports of bugs and other issues. Please report bugs you find there.
For more information on pqR and R in general, see the following manuals, which have been updated where required with information on pqR:
The pqR wiki has additional current information on pqR. This includes information on systems on which pqR has been tested, and packages tested with pqR.
My blog, at radfordneal.wordpress.com, has a series of posts discussing pqR, as follows (most recent first):
Some of these posts refer to my set of speed tests for R.
pqR-2013-06-20 (first publicised release)
pqR is an open-source project licensed under the GPL.
The git repository for the source code and development history of pqR is at http://github.com/radfordneal/pqR, and also at http://gitlab.com/radfordneal/pqR. The current release is on branch Release-2017-06-09. See the MODS file in that branch (or the mods-dir directory in development branches) for information on how branches in the git repository are organized. These branches also document how pqR differs from R-2.15.0.