|Name:||BoF 09: Getting Scientific Software Installed: Tools & Best Practices|
|Time:||Tuesday, June 24, 2014
11:00 am - 12:00 pm
CCL - Congress Center Leipzig
|Breaks:||10:30 am - 11:30 am Coffee Break|
|Presenter:||Stijn De Weirdt, Ghent University|
|Kenneth Hoste, Ghent University|
|Abstract:||Providing scientists with the scientific software they require is a crucial aspect of supercomputer systems. However, it is well known that building and installing scientific software, and implementing user-friendly access to it for end-users can be a tedious and time consuming task.
Compilation from source is preferred in an HPC setting where performance is critical, because it allows using compilers, libraries and compilation options best suited for the hardware platform and architecture of the targeted system. However, scientists tend to focus on the functional aspect of the software they write, and typically spend little time in making sure others can easily get the software installed and running on systems different from their own. Examples of common scientific software packages that are notorious to get built include NWChem, OpenFOAM, QuantumESPRESSO, VASP, WRF, ...
Therefore, expert knowledge with regard to building and installing software from source is indispensable when deploying a collection of scientific software. Likewise, keeping the deployment up to date when new versions of compilers, libraries and the software itself are being released can be a tedious process.
Correctly and optimally building and installing scientific software is known to consume signif- icant amounts of time from user support teams for a variety of reasons, e.g., manually stepping through (often poor) documentation, platform/compiler/library dependent compilation issues, link- ing issues with well established libraries, runtime problems because of dynamic resolving of libraries, suboptimal application performance due to poor choice of build parameters, etc.
Moreover, the efforts done by user support teams of various HPC sites to obtain correct and (near) optimal builds of scientific software packages and provide them to end users are duplicated all over the world. Several sites and consortiums publicly document their ’best practices’, but documentation easily gets out of date, the duplication of efforts remains, manually performing installation procedures remains error-prone, etc. Basically, there is little collaboration among HPC sites although they all suffer from the same problems.
Another aspect is the way in which the built software packages are provided to users. A common and adequate solution for this is providing environment modules, but many open problems remain to be dealt with, e.g., module files are usually (still) constructed manually, a tedious task that makes it difficult to keep them consistent. Moreover, various design choices can be made w.r.t. module naming scheme, structure of the module files tree and tools to consume the modules, all significantly impacting the user experience.
During this Birds-of-a-Feather session, we would like to bring various experienced members of HPC user support teams, system administrators and end users together for an open discussion on how this situation can be improved. We aim to provide a platform for presenting tools and practices that help alleviate or resolve these problems, in order to streamline the work that is done and seek opportunities for collaboration.
We plan to start the session with a couple of lightning talks on tools and practices related to building and installing scientific software (e.g. EasyBuild, Lmod, etc.), followed by a show-of-hands poll on a various topics (use of tools, common practices, ...). For the latter, we will use the poll service provided by Socrative (http://socrative.com), which allows for collecting responses anonymously. Attendees simply use a room number to participate using their laptop, smartphone or tablet, no registration on the Socrative website is required. The main goal for the poll is to spur discussion and allow people to share their practices and experiences on the various topics being touched upon. Collected poll results will be shared afterwards, just like we did for a previous installment of this BoF session at SC13, see https://github.com/hpcugent/easybuild/wiki/ SC13-BoF-session.
During this Birds-of-a-Feather session, we would like to bring system administrators, members of HPC user support teams and experienced end users together.