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

Supporting PETSc older versions?? #100

Closed
abhyshr opened this issue Nov 17, 2022 · 13 comments · Fixed by #180
Closed

Supporting PETSc older versions?? #100

abhyshr opened this issue Nov 17, 2022 · 13 comments · Fixed by #180
Assignees

Comments

@abhyshr
Copy link
Collaborator

abhyshr commented Nov 17, 2022

What versions of PETSc does GridPACK support and is there any reason to support PETSc version < 3.16? The develop branch is updated to use PETSc version 3.16. There is a flag

if (NOT USE_OLD_PETSC)
that checks for older versions of PETSc.

IMHO, I don't see a reason to support older PETSc versions. Which projects are using older PETSc versions? What will it take to migrate to using develop branch?

@wperkins
Copy link
Member

IMO, we should drop the use of Jed Brown's FindPETSc and rely only on pkgconfig. However, I think PETSc $\ge$ 3.12 should be supported since that's the version in Ubuntu 20 LTS (supported thru 2024).

@abhyshr
Copy link
Collaborator Author

abhyshr commented Nov 17, 2022

I agree. it was Jed who suggested me to use pkgconfig instead of FindPETSc :-) Can PETSc 3.16 not be built on Ubuntu 20 LTS? Which projects are using Ubuntu 20 LTS?

@wperkins
Copy link
Member

Sure, you can build PETSc 3.16 on Ubuntu 20. However, I'm thinking about ease of installation, not specific projects. On Ubuntu, it's much easier to just install the PETSc package than to build. In fact, on Ubuntu 20, there is no need to build any prerequisites. Just use the system packages and have GridPACK build GA. The current GridPACK can be built with PETSc 3.12 -- 3.16 in my experience. I've not tried 3.18.

Is there something specific in the newer PETSc that we need/want to be using?

@abhyshr
Copy link
Collaborator Author

abhyshr commented Nov 17, 2022

On Ubuntu, it's much easier to just install the PETSc package than to build.

What do you mean by this?

@wperkins
Copy link
Member

wperkins commented Nov 17, 2022

This is all it takes: sudo apt install petsc-dev

@abhyshr
Copy link
Collaborator Author

abhyshr commented Nov 17, 2022

Aah...I see. which version of PETSc does it install? PETSc development branch?

@abhyshr
Copy link
Collaborator Author

abhyshr commented Nov 17, 2022

Can petsc-3.16 be installed? sudo apt install petsc-3.16 or something similar?

@abhyshr
Copy link
Collaborator Author

abhyshr commented Nov 17, 2022

I am thinking a little ahead here (maybe) for what PETSc version GridPACK should support for the next release. As I mentioned in the call yesterday, we should have a release early next year.

@wperkins
Copy link
Member

Can petsc-3.16 be installed? sudo apt install petsc-3.16 or something similar?

No. Only 3.12 is available AFAIK. There may be PPA source, but I haven't looked.

@wperkins
Copy link
Member

I am thinking a little ahead here (maybe) for what PETSc version GridPACK should support for the next release. As I mentioned in the call yesterday, we should have a release early next year.

We can support 3.16 and maybe even 3.18, but I would like to retain compatibility with 3.12 for a while. I don't think this is hard to do.

@abhyshr
Copy link
Collaborator Author

abhyshr commented Nov 17, 2022

Ok. It would be good to avoid using NOT USE_OLD_PETSC flags and other such stuff that make a distinction between which versions of PETSc are used. I think (and hope) that pkgconfig can handle PETSc >= 3.12 without having to resort to NOT USE_OLD_PETSC but I am not sure.

@wperkins
Copy link
Member

Agreed. AFAIK, USE_OLD_PETSC only works for those versions of PETSc that produced a PetscConfig.cmake (or whatever) when built. I think that stopped in 3.10 or so.

@wperkins
Copy link
Member

If #164 is merged, 3.14.x would be the minimum PETSc version allowed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants