About
HPCRAN is an R Archive Network, or software repository, for HPC packages for the R programming language.
You can install an HPCRAN package via the usual
install.packages()
if you set the repos
argument
to https://hpcran.org
. However, some HPCRAN packages
have CRAN dependencies, so we recommend something like this:
options(repos=structure(c(
HPCRAN="https://hpcran.org/",
CRAN="https://cran.rstudio.com/"
)))
Then you don't need to set the repos
argument. You can put
this in your ~/.Rprofile
file.
If you are on Windows or Mac, you will need to set
type="source"
in your install.packages()
call.
You will of course need to be able to build packages from source.
Some packages, such as those that make use of GPUs, may not be installable
on non-Linux platforms.
Why HPCRAN?
HPCRAN is an R package archive specifically for HPC packages, in contrast to the CRAN which is the comprehensive package archive. The CRAN is meant for packages with a fairly universal appeal. However, software designed for HPC environments often won't work on Windows/Mac, or they use boutique hardware like GPUs, or strange software like MPI, or programming models unknown to the outside world like SPMD.
Packages with exactly one of these kinds of qualities might be allowed onto CRAN with a special exception to the CRAN rules. In order to distribute their packages on CRAN, HPC package authors are sometimes forced to ship entire copies of standard HPC libraries to the CRAN in order to conform — which for the record is completely insane. Packages with multiple of these qualities will likely be turned away, and even already-published packages may be kicked off the CRAN as their publishing standards continually increase.
While increasingly stringent rules for publishing on CRAN are ultimately a good thing on average, it makes publishing HPC packages unreasonably difficult for the reasons outlined above. The HPCRAN is meant to give HPC package authors for R a CRAN-like place to publish packages which would otherwise be a good fit for CRAN, were the rules not so stringent.
Warranty and Disclaimer
Packages distributed by HPCRAN are not endorsed by the HPCRAN team or its contributors. We make no warranties of any kind, express or implied, about packages distributed by HPCRAN.
Packages contributed to HPCRAN are provided "as is", and are not manually inspected. We take no responsibility for any packages distributed here. If you believe that a package contains malicious code, violates someone's intellectual property rights, or is otherwise anti-social, please contact wrathematics at gmail.
The HPCRAN logo is modified from the R logo, and is licensed CC-BY-SA 4.0. Most of the HPCRAN internals are available here.