Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow compilation with PETSc but without MPI. #15781

Merged
merged 1 commit into from Jul 24, 2023
Merged

Conversation

bangerth
Copy link
Member

I don't have a setup to test this, though. Let's see whether we can get confirmation from Tomáš Levý, who reported the problem on the mailing list.

Copy link
Member

@tjhei tjhei left a comment

Choose a reason for hiding this comment

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

My vote would be to disallow usage of PETSc when configuring without MPI.

@bangerth
Copy link
Member Author

I could live with this, though I will point out that people use PETSc not only for its parallel capabilities, but also for eigenvalue problems (SLEPc), and now for its time steppers and nonlinear solvers. All of these also work without MPI. (They also work with MPI, and so there is little harm telling people to configure with MPI and then just not use it.)

@masterleinad
Copy link
Member

My vote would be to disallow usage of PETSc when configuring without MPI.

I agree. I don't think this is too much to ask of users and is also consistent with how we treat Trilinos.

@bangerth
Copy link
Member Author

As reported on the mailing list, this seems to work. My suggestion is to go with it. (If approved, I will also create a version for the 9.5 branch.)

@tjhei
Copy link
Member

tjhei commented Jul 23, 2023

My reason for not allowing this configuration is that we have 0 CI or regression tester coverage and none of the developers uses it. It is likely to break again (if it works at all in the first place).

@tamiko
Copy link
Member

tamiko commented Jul 23, 2023

Let us merge this PR as is and apply it to the release branch.

But for the future I agree with @tjhei - In principle we could add a PETSc without MPI variant ot the regression tester. But I don't think that the increased burden (we currently use 8-10h out of a budget of 12h on tester-tos) is worth the benefit.

Also, Debian/Ubuntu has a packaged PETSc available with MPI support enabled. So it is really a very minor ask for a user to either install this package - or if they want to have a newer one - to install build dependencies: apt build-dep petsc slepc and configure petsc/slepc with MPI support enabled.

So what about we make PETSc configure consistent to the way how we treat Trilinos?

@tamiko tamiko merged commit db3b59f into dealii:master Jul 24, 2023
15 checks passed
@bangerth bangerth deleted the no-mpi branch July 24, 2023 17:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants