-
Notifications
You must be signed in to change notification settings - Fork 649
PETSc: New version 3.24.0 #12339
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
base: master
Are you sure you want to change the base?
PETSc: New version 3.24.0 #12339
Conversation
|
We could enable |
|
I see this warning: Should we do this? EDIT: It seems that this comes a YAML string parsing library. See #12343. EDIT: Nope, PETSc uses C++ now, and it calls |
|
There is a comment This comment is clearly inconsistent with the code. I assume it is the comment that is wrong? |
|
Yes, the comment is clearly wrong. cc @boriskaus |
|
It should be ok to turn on LBT support, but we should probably then make sure the forwards are set up in PetSc.jl (through a dependency on OpenBLAS32.jl). |
|
yes the comment is wrong |
|
I have added LBT support. Please review. |
|
It appears good to me - but it's a pretty big PR. I believe it should be ok to merge this and quickly test it through PetSc.jl. @boriskaus Would you be ok with that approach? |
|
This is indeed a very large PR and it is difficult to say if it'll work as expected. In the past I've found it useful to test the package by essentially running the precompiled and packaged PETSc examples, which is done here: https://github.com/boriskaus/test_PETSc_jll I've seen many cases were BinaryBuilder builds were ok, but it didn't actually run at the end (at least on the systems provided on GitHub actions) Is it possible to use the compiled binaries of this PR for such testing? If yes, how do I set this up? |
|
I do not know if there is an easy way to test these. You can manually download the build artifacts from buildkite. @DilumAluthge @giordano Is there an existing mechanism to test build artifacts in a package's CI before it is registered here? |
|
@eschnett would it be possible for to compile a local version say in your github account, so I can link the tests to that? |
|
I often have problems with the "push local version to github" setup. It's also quite frightening that this will refuse to update an existing repository so that I have to actually delete the repository for every trial run. I'm building it locally ( |
|
I experienced similar issues, but I only have to delete the latest release, rather than the repository, for this to work. The advantage of running it on github actions is that it tests several operating systems at once. |
|
The local I do not understand how to use I can use |
|
in |
you would have to modify this line and point it to the correct
|
|
I see segfaults (even with the current released versions of PETSc, and with |
|
See https://github.com/boriskaus/test_PETSc_jll/actions/runs/18791153434 for CI results There is indeed an issue with suitesparse |
|
Do you have a dependency added to |
|
Adding Interestingly, suitesparse works on Mac. On linux, it sometimes seems to do a few iterations before segfaulting. |
|
I've locally tested this latest build, and unfortunately suitesparse still fails on linux. edit: on 1.12, suitesparse works on Mac; not on linux. Obviously, linux is the most important platform for this package... |
|
I wonder if there is an issue with the suitesparse build or something else with LBT. It looks like the crash is here: https://github.com/boriskaus/test_PETSc_jll/actions/runs/18888228913/job/53909074280#step:7:190 Cc @imciner2 |
|
This is indeed within suitesparse. Interestingly, it often works for a few iterations before it crashes: 2 SNES Function norm < 1.e-11
Number of SNES iterations = 2
lid velocity = 0.0625, prandtl # = 1., grashof # = 1.
0 SNES Function norm 0.239155
0 KSP Residual norm 0.235858
1 KSP Residual norm < 1.e-11
1 SNES Function norm 6.81968e-05
0 KSP Residual norm 2.30906e-05
1 KSP Residual norm < 1.e-11
2 SNES Function norm < 1.e-11
Number of SNES iterations = 2
lid velocity = 0.0016, prandtl # = 1., grashof # = 1.
0 SNES Function norm 0.0406612
[0]PETSC ERROR: ------------------------------------------------------------------------
[0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, probably memory access out of range
[0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
[0]PETSC ERROR: The line numbers in the error traceback are not always exact.
or see https://petsc.org/release/faq/#valgrind and https://petsc.org/release/faq/
[0]PETSC ERROR: --------------------- Stack Frames ------------------------------------ |
|
The only thing that comes to mind is perhaps the libraries in SuiteSparse_jll and SuiteSparse32_jll have the same names and perhaps the wrong one is getting called somehow. |
|
interestingly, the current version of As far as I can tell the versions of all packages are the same between the 3.22 and the 3.24 tests. |
|
The versions of |
|
failing [aabda75e] SCALAPACK32_jll v2.2.2+0
[4536629a] ~ OpenBLAS_jll ⇒ v0.3.29+0
[458c3c95] + OpenSSL_jll v3.5.1+0
[83775a58] + Zlib_jll v1.3.1+2
[8e850b90] + libblastrampoline_jll v5.15.0+0working [aabda75e] + SCALAPACK32_jll v2.2.2+0
[4536629a] ~ OpenBLAS_jll ⇒ v0.3.29+0
[458c3c95] + OpenSSL_jll v3.5.1+0
[83775a58] + Zlib_jll v1.3.1+2
[8e850b90] + libblastrampoline_jll v5.15.0+0This is what the CI seems to be using. There is thus no difference in the version of |
No description provided.