The 500 builds of 300 applications in the HeLmod repository will at least get you started on a full suite of scientific applications Aaron Kitzmiller, John Brunelle, Michele Clamp, James Cuff Informatics and Scientific Applications, Research Computing Faculty of Arts and Sciences Harvard University 18 May 2018 FAS | Research | Computing
Scientific software publication is easier than ever… Distribution via PyPi, CPAN, github, DataVerse, Figshare. Journals will publish scientific software (http://www.software.ac.uk/resources/guides/which-journals-should-i-publish-my-software) Articles like this (“Publish your computer code: it is good enough”) encourage software publication No generally agreed up standards 18 May 2018 FAS | Research | Computing
…resulting in a dizzying array of delivery mechanisms Linux distro package managers (yum, apt-get) Autotools, Cmake Hand-edited Makefiles Things that look like autoconf, but aren’t Poorly constructed binaries Language interpreter-specific tools (Python/pip, R/install.packages, Perl cpan) that work pretty well except when they don’t Completely custom scripts that prompt for information Homebrew, Linuxbrew Custom dependency managers Whatever boost uses 18 May 2018 FAS | Research | Computing
FAS | Research | Computing … and a huge software maintenance burden that a standard module-based system cannot effectively address 18 May 2018 FAS | Research | Computing
FAS | Research | Computing Harvard Extensions for Lmod HeLmod uses rpmbuild, spec files and scripts to construct reproducible, shareable Lmod deployments https://github.com/fasrc/helmod Lmod (https://github.com/TACC/Lmod) forces you to choose a compiler (and MPI) version before loading modules Different versions of the same module cannot be loaded together Bash scripts and RPM macros support build iterations over multiple compiler (and MPI) combinations RPM Spec files explicitly detail the successful build procedure. 18 May 2018 FAS | Research | Computing
FAS | Research | Computing 18 May 2018 FAS | Research | Computing
FAS | Research | Computing 18 May 2018 FAS | Research | Computing
FAS | Research | Computing 18 May 2018 FAS | Research | Computing
We went through the pain so you don’t have to 18 May 2018 FAS | Research | Computing