Skip to content

firedrake-configure options for Ubuntu 2026.04#5085

Merged
connorjward merged 35 commits into
releasefrom
JHopeCollins/firedrake-configure-ubuntu2604
May 14, 2026
Merged

firedrake-configure options for Ubuntu 2026.04#5085
connorjward merged 35 commits into
releasefrom
JHopeCollins/firedrake-configure-ubuntu2604

Conversation

@JHopeCollins
Copy link
Copy Markdown
Member

@JHopeCollins JHopeCollins commented May 7, 2026

  1. PETSc can't find the apt PTScotch package on it's own any more so we need to set the linking flags in the PETSc configure arguments.

  2. Hypre apt package is now new enough for PETSc to use so we don't have to build from source.

  3. Ubuntu26.04 uses gcc15 which seems to result in some problems in interpolation kernels for complicated elements, so we default to -O2 for this compiler, and -O1 on CI.

  4. CUDA packages are not ready yet for Ubuntu26.04 so we don't provide an Arch for that combination yet.

  5. The Ubuntu24.04 arches are now CommunityArch so they are still available to people but we will no longer test them.

@JHopeCollins JHopeCollins self-assigned this May 7, 2026
@JHopeCollins JHopeCollins changed the base branch from main to release May 7, 2026 13:01
@francesco-ballarin
Copy link
Copy Markdown
Member

francesco-ballarin commented May 7, 2026

Basically every package should be new enough for PETSc to use, we have started the migration to PETSc 3.25 in Debian unstable and we didn't need to update any package (except PETSc itself).

If there are some packages that PETSc complains about, please let me know.
FYI, at some point in 2027 or 2028 you may need to go back to your manually built dependencies: Debian will keep updating PETSc and its dependencies, but we can't backport the updates to ubuntu.

Comment thread scripts/firedrake-configure Outdated
Copy link
Copy Markdown
Contributor

@connorjward connorjward left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Unfortunately looks like it is hitting errors. I wonder if the GitHub actions runner version of Ubuntu 26.04 has slightly different libraries than the Dockerhub one.

Comment thread .github/workflows/core.yml Outdated
Comment thread .github/workflows/core.yml Outdated
Comment thread scripts/firedrake-configure Outdated
@connorjward
Copy link
Copy Markdown
Contributor

Can you do the GPU change at the same time? Should be identical work

@JHopeCollins
Copy link
Copy Markdown
Member Author

Basically every package should be new enough for PETSc to use, we have started the migration to PETSc 3.25 in Debian unstable and we didn't need to update any package (except PETSc itself).

If there are some packages that PETSc complains about, please let me know.
FYI, at some point in 2027 or 2028 you may need to go back to your manually built dependencies: Debian will keep updating PETSc and its dependencies, but we can't backport the updates to ubuntu.

We would be very happy if this could be PETSc policy to support latest apt packages across the board. The only package that we need that didn't work from apt with Ubuntu2024.04 was hypre, the version was slightly too old for the latest PETSc.

We don't use the apt PETSc, so hopefully we won't need to start manually build things we can currently use

@JHopeCollins
Copy link
Copy Markdown
Member Author

Can you do the GPU change at the same time? Should be identical work

I was going to do that once the regular ones are working

@JHopeCollins JHopeCollins added the gpu For special runner label May 7, 2026
Comment thread scripts/firedrake-configure Outdated
Comment thread scripts/firedrake-configure
Comment thread scripts/firedrake-configure Outdated
Comment thread scripts/firedrake-configure
@connorjward
Copy link
Copy Markdown
Contributor

I wonder if the errors are due to unsafely compiling pygraphviz. Let's drop it as a dependency for now and see what happens. If it's not that then this could be a whole can of worms.

We found out that -O3 was leading to garbage values in tricky
interpolation kernels with GCC 15 on both Ubuntu 26.04 and Arch.

This will allow us to support Ubuntu 26.04.
We found out that -O3 was leading to garbage values in tricky
interpolation kernels with GCC 15 on both Ubuntu 26.04 and Arch.

This will allow us to support Ubuntu 26.04.
@connorjward connorjward marked this pull request as ready for review May 13, 2026 10:36
@connorjward
Copy link
Copy Markdown
Contributor

As far as I can tell the cursed combination of CUDA, Ubuntu 26.04 and GCC 15 is not yet compatible. I think we have to keep the GPU CI running on 24.04 for the moment. I will investigate the errors with the default and complex builds.

Copy link
Copy Markdown
Member Author

@JHopeCollins JHopeCollins left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, thanks for taking this on and finishing it up!

@connorjward connorjward enabled auto-merge (squash) May 14, 2026 13:53
@connorjward connorjward merged commit 1ec80a5 into release May 14, 2026
15 of 16 checks passed
@connorjward connorjward deleted the JHopeCollins/firedrake-configure-ubuntu2604 branch May 14, 2026 16:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gpu For special runner installation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants