Fermilab Computing Division

CS Document 6896-v1

SpackDev: Multi-Package Development with Spack (CHEP 2019 presentation)

Document #:
Document type:
Submitted by:
Chris Green
Updated by:
Chris Green
Document Created:
31 Oct 2019, 11:42
Contents Revised:
31 Oct 2019, 11:42
Metadata Revised:
31 Oct 2019, 11:42
Viewable by:
  • Public document
Modifiable by:

Quick Links:
Latest Version

Development of scientific software has always presented challenges to its practitioners, among other things due to its inherently collaborative nature. Software systems often consistent of up to several dozen closely-related packages developed within a particular experiment or related ecosystem, with up to a couple of hundred externally-sourced dependencies. Making improvements to one such package can require related changes to multiple other packages, and some systemic improvements can require major structural changes across the ecosystem.

There have been several attempts to produce a multi-package development system within HEP in the past, such systems usually being limited to one or a few experiments and requiring a common build system (e.g. Make, CMake). Common features include a central installation of each "release" of the software system to avoid multiple builds of the same package on a system, and integration with version control systems.

SpackDev is based on the powerful Spack build and packaging system in wide use in HPC, utilizing its package recipes and build mangement system to extract build instructions and manage the parallel development, build and test process for multiple packages at a time. Intended to handle packages without restriction to one internal build system, SpackDev is integrated with Spack as a command extension and is generally applicable outside HEP. We describe SpackDev's features and development over the last two years and the medium-term future, and initial experience using the SpackDev in the context of the LArSoft liquid argon detector toolkit.

Files in Document:
Associated with Events:
CHEP 2019 held on 04 Nov 2019 in Adelaide, Australia
Publication Information:
Techpubs SLIDES-19-066-SCD
DocDB Home ]  [ Search ] [ Authors ] [ Events ] [ Topics ]

DocDB Version 8.8.9, contact Document Database Administrators