From 2c6f8b145a70594327abaaf08707c4822594b1fb Mon Sep 17 00:00:00 2001 From: Wouter Deconinck Date: Wed, 28 Jan 2026 20:16:00 +0000 Subject: [PATCH 1/2] feat(gsoc): spack debuggable installs --- _gsocorgs/2026/umanitoba.md | 13 ++++ _gsocprojects/2026/project_Spack.md | 9 +++ .../2026/proposal_Spack_DebuggableInstalls.md | 61 ++++++++++++++++++ images/spack-logo-220-LLNL.png | Bin 0 -> 23237 bytes 4 files changed, 83 insertions(+) create mode 100644 _gsocorgs/2026/umanitoba.md create mode 100644 _gsocprojects/2026/project_Spack.md create mode 100644 _gsocproposals/2026/proposal_Spack_DebuggableInstalls.md create mode 100644 images/spack-logo-220-LLNL.png diff --git a/_gsocorgs/2026/umanitoba.md b/_gsocorgs/2026/umanitoba.md new file mode 100644 index 000000000..240cab4c8 --- /dev/null +++ b/_gsocorgs/2026/umanitoba.md @@ -0,0 +1,13 @@ +--- +title: "University of Manitoba" +author: "Wouter Deconinck" +layout: default +organization: umanitoba +logo: UManitoba-logo.png +description: | + The University of Manitoba is a Canadian public research university in the province of Manitoba, + located on original lands of Anishinaabeg, Cree, Oji-Cree, Dakota, and Dene peoples, and on the + homeland of the Métis Nation. +--- + +{% include gsoc_proposal.ext %} diff --git a/_gsocprojects/2026/project_Spack.md b/_gsocprojects/2026/project_Spack.md new file mode 100644 index 000000000..5928932c1 --- /dev/null +++ b/_gsocprojects/2026/project_Spack.md @@ -0,0 +1,9 @@ +--- +project: Spack +layout: default +logo: spack-logo-220-LLNL.png +description: | + [Spack](https://spack.io) is a flexible package manager designed to support multiple versions, configurations, platforms, and compilers. It is widely used in high-performance computing (HPC) environments to manage complex software stacks. +--- + +{% include gsoc_project.ext %} diff --git a/_gsocproposals/2026/proposal_Spack_DebuggableInstalls.md b/_gsocproposals/2026/proposal_Spack_DebuggableInstalls.md new file mode 100644 index 000000000..d70e00620 --- /dev/null +++ b/_gsocproposals/2026/proposal_Spack_DebuggableInstalls.md @@ -0,0 +1,61 @@ +--- +title: Debuggable Installations for Spack Packages +layout: gsoc_proposal +project: Spack +year: 2026 +organization: + - UM +difficulty: medium +duration: 175 +mentor_avail: June-October +project_mentors: + - email: wouter.deconinck@umanitoba.ca + first_name: Wouter + last_name: Deconinck + organization: UM + is_preferred_contact: yes +--- + +## Description + +Spack is a flexible package manager widely used in high-performance computing (HPC) to manage complex software stacks. It is commonly used in scientific computing environments, including particle physics research. For example, the key4HEP project uses Spack to manage software dependencies for high-energy physics applications. + +Spack builds packages from scratch in a staging directory, which is then installed into a Spack-managed prefix. However, this approach can make debugging installation issues challenging, as the build artifacts are not easily accessible after installation. Symbols in the installed binaries may not correspond to the original source files, complicating debugging efforts. + +There are some workarounds to ensuring debuggable installs in Spack, such as using `spack dev-build` or `spack develop`, but these methods have limitations and do not fully address the issue in a streamlined manner. This project will focus on ensuring that the source trees used for compilation can be installed in the prefix alongside the built binaries, allowing for easier debugging and symbol resolution. This project will have to ensure that temporary build products are still cleaned up properly to avoid bloating the installation prefix. + +## Task Ideas + +- Assess the limitations of the current approaches for installing source trees alongside built binaries in Spack +- Develop a robust solution to enable debuggable installs for Spack packages with out-of-source-tree build systems +- Test the implementation with a variety of packages and build systems, with a focus on high-energy physics software + +As a stretch goal, in case of rapid progress, we may consider a next step which involves installing debug symbols in a separate location for access with `debuginfod`. This would allow installed binaries to be stripped of debug symbols, reducing their size and increasing performance, while still providing access to the symbols when needed for debugging. + +## Expected Results and Milestones + +- Familiarization with Spack's build and install processes +- Summarization of current limitations and potential solutions +- Design of a solution for debuggable installs +- Analyze design for anticipated challenges +- Implementation of the solution +- Testing and validation with various packages +- Documentation and integration into Spack + +## Requirements + +- Python programming skills +- Packaging and build system knowledge (in particular CMake) +- Interest in scientific software stacks and high-energy physics + +## AI Policy + +AI assistance is allowed for this contribution. The applicant takes full responsibility for all code and results, disclosing AI use for non-routine tasks (algorithm design, architecture, complex problem-solving). Routine tasks (grammar, formatting, style) do not require disclosure. + +## How to Apply + +Email mentors with a brief background and interest in scientific software stacks and high-energy physics. Please include "gsoc26" in the subject line. Mentors will provide an evaluation task after submission. + +## Resources + +- [Spack](https://spack.io/) diff --git a/images/spack-logo-220-LLNL.png b/images/spack-logo-220-LLNL.png new file mode 100644 index 0000000000000000000000000000000000000000..49f1b98060e8be3b11a176961560b5fe365dd3ae GIT binary patch literal 23237 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 Date: Wed, 28 Jan 2026 20:30:26 +0000 Subject: [PATCH 2/2] fix: UM -> umanitoba --- _gsocproposals/2026/proposal_Spack_DebuggableInstalls.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/_gsocproposals/2026/proposal_Spack_DebuggableInstalls.md b/_gsocproposals/2026/proposal_Spack_DebuggableInstalls.md index d70e00620..84208cfe6 100644 --- a/_gsocproposals/2026/proposal_Spack_DebuggableInstalls.md +++ b/_gsocproposals/2026/proposal_Spack_DebuggableInstalls.md @@ -4,7 +4,7 @@ layout: gsoc_proposal project: Spack year: 2026 organization: - - UM + - umanitoba difficulty: medium duration: 175 mentor_avail: June-October @@ -12,7 +12,7 @@ project_mentors: - email: wouter.deconinck@umanitoba.ca first_name: Wouter last_name: Deconinck - organization: UM + organization: umanitoba is_preferred_contact: yes --- @@ -27,7 +27,7 @@ There are some workarounds to ensuring debuggable installs in Spack, such as usi ## Task Ideas - Assess the limitations of the current approaches for installing source trees alongside built binaries in Spack -- Develop a robust solution to enable debuggable installs for Spack packages with out-of-source-tree build systems +- Develop a robust solution to enable debuggable installs for Spack packages with out-of-tree build systems - Test the implementation with a variety of packages and build systems, with a focus on high-energy physics software As a stretch goal, in case of rapid progress, we may consider a next step which involves installing debug symbols in a separate location for access with `debuginfod`. This would allow installed binaries to be stripped of debug symbols, reducing their size and increasing performance, while still providing access to the symbols when needed for debugging.