REACH — Regeneron Environment for Analytics, Computing, and HPC · ndexr.io
The environment stops
being a variable.
REACH runs on the Compute Canada stack — the software environment behind Canada’s national research computing
“It works on my machine” is a scientific problem, not only an IT one.
Not a product. Not a vendor. Not something to buy.
It is the software environment the Digital Research Alliance of Canada (formerly Compute Canada) built to run every national HPC cluster in the country.
REACH adopts it whole rather than inventing an internal equivalent.
A scientist only ever types one of these — module load.
Everything above it already happened: once, centrally, for everybody. No install step, no build step, no per-project environment to curate.
One published tree. No install, no root, no per-node build, no fat image to rebuild
module load edits PATH in the shell you already have.CVMFS is a read-only filesystem delivered over plain HTTP with a local cache. It was built at CERN to give the worldwide LHC computing grid one software tree.
foss-2024a is not decoration. It names the compiler, the MPI, and the BLAS underneath R — not just the R version.
Without it
Same code, different machine, slightly different numbers — and nobody can say why.
With it
Dependency drift stops being a mystery and becomes a version string you can cite.
One ordinary line, walked to the floor — every box names its own source
icu4c-75_1-src.tgz at a recorded sha256, by GCCcore 13.3.0, itself built from gcc-13.3.0 source.One recipe — source URL, checksums, every dependency named
Same intent — freeze the environment. Look at what actually gets frozen.
apt-get install takes whatever the archive serves that day.-dev packages, and not one of them says where it came from.The difference is the second box — an archive that moves, or a source at a fixed hash
Containers isolate and ship. The stack names and preserves. Those are different jobs, and REACH does not ask you to give up the first one.
Container alone
Fat image, rebuilt to move one library. Provenance stops at the base layer.
Container + mounted stack
Thin image, nothing to rebuild. The same module load inside the container and outside it — and the same bytes.
It is a software environment — not a data platform, not a scheduler, not a replacement for either.
Adopting it means committing to modules: module load becomes part of every job script and every container recipe.
And R packages live in a governed repository (repo.ndexr.io), deliberately kept out of the stack itself — the stack ships the interpreter, the repository ships the packages.
Name the environment.
Keep it forever.
reach.regeneron.ndexr.io — REACH, Regeneron Environment for Analytics, Computing, and HPC