Veselin Dobrev

Results 475 comments of Veselin Dobrev

I tried moving the call to `mfem::Hypre::Instance` after the calls to `HYPRE_Initialize` and `mfem::Hypre::SetDefaultOptions` but that did not resolve the issue, so there must be something else going on.

Another observation: if I move the call to `mfem::Hypre::Instance` to the end of `Hypre::InitDevice` then I don't see the issue. Maybe `HYPRE_Initialize` and `mfem::Hypre::SetDefaultOptions` do not actually make any CUDA...

Okay, I'm not sure I see a much better way to handle this issue than what's currently done here -- calling `mfem::Hypre::Finalize` from the `mfem::Device` destructor. There's one thing, however,...

I'm testing the PR with HYPRE v2.29.0 (built with CUDA v11.1.1) and I see crashes in `ex0p` at the end of the run. I'm investigating.

Here's a patch (for commit 9bee2fca) that works for me: ```diff diff --git a/general/device.cpp b/general/device.cpp index 2d600955f..3ed11e916 100644 --- a/general/device.cpp +++ b/general/device.cpp @@ -258,7 +258,15 @@ void Device::Configure(const std::string &device,...