The RCE provides many ways to develop and test your own code, using common languages, editors and source code utilities.
We offer Python 2.7 and 3.6 through the Anaconda environment manager. The benefit of using the Anaconda environment is that it is built with data science in mind: popular Python modules are already included in the environment, module versions are maintained by Anaconda for compatibility, and researchers can install additional modules to their home directory at any time. You can also create your own Python environments using Conda.
You can read about Anaconda and Conda at https://docs.continuum.io/anaconda/#anaconda-navigator-or-conda.
python
" invokes Python 3.6, and using "pip
" installs modules for Python 3.6.
Note: The Anaconda GUI and CLI are available only on RCE exec nodes, and cannot be run on the login node.
There are several ways of invoking Anaconda:
-or-
/usr/local/bin/python3
script.py
-or-
Some combination of the above, like opening an RCE Powered Shell, and running a python script as:
python3 ~/script.py
The Anaconda 2 versions are:
anaconda2-shell
python2
condor_q <username>
condor_ssh_to_job <job_id>
Building R modules in the RCE
The IQSS Data Science team is putting together the finishing touches on a new R package build system using Jenkins CI platform and GitHub. Check back for more information on the new Rbuild platform.
Common programming languages available in the RCE include:
The RCE is built with stability in mind. If you need a newer version of GCC or similar development tools, we offer Devtoolset via Software Collections. You can enable the tools from a Terminal:
scl enable devtoolset-4 bash
If you need these tools available on the cluster (e.g. to compile an R package) start an RCE Shell from the Applications > RCE Powered Applications menu. From there, enable the devtoolset as above, then call the appropriate statistical application (e.g. R
, xstata-mp
, etc.). When you've finished, type exit
.
For a full list of updated packages provided by devtoolset-*, please see http://mirror.centos.org/centos/6/sclo/x86_64/rh/devtoolset-4/.
Installing "xgboost" requires compilation using a newer version of GCC than is supported by default on the RCE. However, you can enable the software collections developer tools to use a newer version of GCC.
- In ~/.R/, create a file named Makevars
with these contents:
CXX14 = g++ -std=c++1y
CXX14FLAGS += -fPIC
- Start an RCE Powered Shell and enter the following
scl enable devtoolset-4 bash
R #or rstudio - these both work
chooseCRANmirror(81)
# I pick 72 here but any mirror should work
install.packages("xgboost")
Installing "lme4" requires compilation using a newer version of GCC than is supported by default on the RCE. However, you can enable the software collections developer tools to use a newer version of GCC.
-Start an RCE powered shell
scl enable devtoolset-4 bash
R
chooseCRANmirror(81)
# I pick 72 here but any mirror should work
install.packages("minqa")
packageurl <- "https://cran.r-project.org/src/contrib/Archive/nloptr/nloptr_1.2.1.tar.gz"; install.packages(packageurl, repos=NULL, type="source");
install.packages("lme4")
library("lme4")