HPC goodies in Guix 0.14.0
Version 0.14.0 of Guix was announced yesterday. In this post we look at the many goodies that made it into Guix during this release cycle.
Over the 1,200+ packages added since the 0.13.0 release are many noteworthy HPC additions.
Dave Love of the University of Manchester made a number of contributions on the high-performance networking side:
- Dave added several InfiniBand packages, added PSM support in libfabric.
- Open MPI gained support for RDMA, libfabric, and PSM.
- The Intel MPI Benchmarks are now available as a package.
- The size of the closure of the
openmpi
package with all its dependencies was significantly reduced. This is particularly appreciable if you’re building application bundles withguix pack
.
The collection of HPC profiling tools has grown:
Linear algebra packages have seen some changes:
- LAPACK was upgraded to 3.7.1, though 3.5.0 has been kept around for packages that are not ready for the latest API.
- Scotch is now
built in 64-bit mode on 64-bit machines, and the new
scotch32
package provides a 32-bit version for applications that need it. - BLIS has been
added. Since it does not support instruction set selection at
run-time yet, we created
several packages specialized for each ISA extension:
blis-haswell
is the variant optimized for Haswell CPUs,blis-knl
is the KNL variant, and so on. This is simplified by the implementation of a high-levelmake-blis
function that returns specialized packages.
As far as numerical simulation is concerned:
- The OpenFOAM C++ computational fluid dynamics package was contributed by Paul Garlick of Tourbillion Technology.
There’s been a lot of activity in bioinformatics, leading to a total of almost 300 bioinformatics packages, notably with the addition of the following packages:
- f-seq;
- GEMMA;
- GESS;
- Kallisto;
- kentutils;
- Ritornello;
- many, many R packages (428 R package are available today).
Changes to core Guix relevant to HPC include:
guix-daemon
gained the--listen
command-line option that we covered recently, and which is handy when installing Guix cluster-wide.- The new
guix import json
command provides a smooth way for newcomers to get started writing new package definitions. - aarch64 portability fixes were contributed by Eric Bavier of Cray, Inc.
Enjoy the new release!
Unless otherwise stated, blog posts on this site are copyrighted by their respective authors and published under the terms of the CC-BY-SA 4.0 license and those of the GNU Free Documentation License (version 1.3 or later, with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts).