-
Notifications
You must be signed in to change notification settings - Fork 10
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
tandem on GPUs #50
Comments
Okay. Couple of things. [1] Lets first establish that the PETSc + GPU build is working with a very simple example. Let's start by not using multigrid at all. Please try this and upload what is sent to stdout.
[2] In general, debugging this will be impossible with an optimized build of PETSc. For testing you absolutely must use a debug build of PETSc. Does spack support this? |
I get the following error right at the start:
|
@Thomas-Ulrich Thomas - I believe be52dc6 (now in main) should resolve the error you encountered. The error stems from changes in PETSc and its error handler. Can you please try your test again? |
Hi Dave,
|
@Thomas-Ulrich Great you ran that test and got past the immediate error. The new error is also resolved on branch |
It worked!
|
Note that I now get with multigrid and no debug:
|
Nice. It is getting closer.
I am very puzzled why the log generated contains lots of nan's where there should be run-times. I've never seen that before. |
Can be also see when running
Indeed when reducing the mesh size to 3914 nodes 25174 elements (h_fault=1) |
Overall, the GPU code converges much slowly to solution.
The same setup converges much more slowly when running with the additional options:
Note also
|
(for tracking the cause of the difference in the residual decrease) |
Testing the matrix free I get:
|
Thanks for the log files. I will take a look. To use matrix-free you need |
The name of the issue is too vague. The current issues are not related to getting something running on a GPU. Closing this and make a new issue. |
I've installed a cuda-aware petsc and associated tandem with:
spack install -j 50 tandem@main polynomial_degree=2 domain_dimension=3 ^petsc +cuda ^cuda@11 ^openmpi+cuda
This yields the following dependencies:
I've tested it on the Ridgecrest example from the paper (note that I am able to run it full CPUs).
One node (note the added Petsc arguments
-mg_levels_mat_type aijcusparse -vec_type cuda -mat_type aijcusparse
):Same error on 2 nodes:
The text was updated successfully, but these errors were encountered: