Your submission was sent successfully! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates from Canonical and upcoming events where you can meet our team.Close

Thank you for contacting our team. We will be in touch shortly.Close

  1. Blog
  2. Article

Igor Ljubuncic
on 21 December 2023


There are three types of computer users: the end user, the system administrator, and the involuntary system administrator. As it happens, everyone has found themselves in the last group at some point or another; you sit down to perform a task relevant to your needs or duties, but suddenly the machine does not work as expected. At that moment, you end up debugging the software and the hardware, instead of focusing on what you really want.

In the realm of High Performance Computing (HPC), where every second and byte of data count, the necessity to avoid hardware- and software-related snags is as high [sic] as ever. In Canonical, we want to make sure that the consumers of our products and tools can have a streamlined, efficient experience – so they can focus on their work and not on the setup.

This is why we have some great news for you just in time for the holidays. You can find a RISC-V version of Spack, the package manager focused on scientific software for HPC and supercomputing in the Snap Store! 

We wanted to package Spack as a snap for RISC-V to make it a little easier for research software engineers, supercomputing cluster administrators, and scientists to start experimenting with the architecture. Spack is capable of building 7,000+ packages from source on heterogeneous compute environments, which makes Spack a natural choice for testing our HPC cluster deployments on RISC-V hardware.

We packaged it so you don’t have to

We have had an amd64 Spack snap available for a couple of months now, but we have recently added support for other architectures such as arm64, s390x, ppc64el, and riscv64. While Spack is relatively easy to install, the snap tries to unify and enhance the deployment and usage experience. We pre-bootstrapped Spack by including clingo, patchelf, and gnupg already inside the snap, and we enable you to pin specific Spack versions and refresh when you’re ready.

Our focus is to save you time building the package manager, figuring out the dependencies, all the fine details that would make you into an involuntary system administrator. Instead, grab the snap, install it, use it, job done. We started down this path of enabling multiple architectures in the snap after attending the Second International Workshop on RISC-V for HPC at SC23 in November. 

After learning how others were experimenting with the latest advancements in the RISC-V ecosystem for HPC, our HPC engineer Jason Nucciarone identified an opportunity for us to take the industry experiment to the next level. Spack is an excellent tool for setting up workload environments and managing complex software stacks on distributed, multi-tenant HPC systems. It was a natural choice to use the package manager to build and test scientific software on RISC-V. However, before we could start any experimenting, we needed to enable riscv64 support for the Spack snap package.

We had to do some work to get the snap working on RISC-V. Namely, we had to build yq – a command-line YAML processor – from scratch as the cross-compiler used in yq’s build process does not support cross-compiling to riscv64. We also had to upgrade Spack to version 0.21.0 because of a KeyError that would arise if you were running on an architecture not supported by all Spack packages.If you’re interested, you can find the riscv64 build of Spack is still in the edge channel. Install it, test it, tell us how it goes. We welcome your feedback and participation.

HPC team’s New Year’s resolution

In the coming weeks and months, we intend to publish a series of articles, guides and whitepapers focused on the HPC domain. We want to showcase our progress in building tools and solutions for HPC engineers and scientists, we want to share benchmarks and studies, and in general, help you get an efficient, fast, stable computing experience. You can subscribe to our newsletter (in the sidebar to your right) to get updates on upcoming content.

Happy holidays!

Photo by Christiaan Huynen on Unsplash.

Related posts


Igor Ljubuncic
24 January 2024

Canonical’s recipe for High Performance Computing

HPC HPC

In essence, High Performance Computing (HPC) is quite simple. Speed and scale. In practice, the concept is quite complex and hard to achieve. It is not dissimilar to what happens when you go from a regular car to a supercar or a hypercar – the challenges and problems you encounter at 100 km/h are vastly ...


Canonical
11 April 2024

Ventana and Canonical collaborate on enabling enterprise data center, high-performance and AI computing on RISC-V

Silicon Article

This blog is co-authored by Gordan Markuš, Canonical and Kumar Sankaran, Ventana Micro Systems Unlocking the future of semiconductor innovation  RISC-V, an open standard instruction set architecture (ISA), is rapidly shaping the future of high-performance computing, edge computing, and artificial intelligence. The RISC-V customizable and ...


Aaron Prisk
3 April 2024

Creating Snaps on Ubuntu Touch

Community Article

This article was written in collaboration with Alfred E. Neumayer of the UBports Project. Tablets, phones and current technology’s capabilities are phenomenal. Who would have thought a thin, light, barely 10 inch device would provide all the power necessary to run Virtual Machines, wherever one desires while powered on battery? That a sma ...