<div dir="ltr">Si it seems like these two calls in cupminit.inc are inconsistent with lazy:<div><br><div>22:41 adams/gamg-reduce-opt-cuda *= ~/petsc$ git grep PetscBeganKokkos<br>src/sys/objects/cupminit.inc:    PetscBeganKokkos = PETSC_TRUE;<br>src/sys/objects/cupminit.inc:    PetscBeganKokkos = PETSC_TRUE;<br></div></div><div><br></div><div>I can do an MR to remove these if that is the case.</div><div><br></div><div>Mark</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Oct 15, 2020 at 8:34 PM Barry Smith <<a href="mailto:bsmith@petsc.dev">bsmith@petsc.dev</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
  I thought the plan was that Kokkos also had a lazy initialization but perhaps it does not and needs to be fixed.<br>
<br>
  Barry<br>
<br>
> On Oct 15, 2020, at 6:49 PM, Mark Adams <<a href="mailto:mfadams@lbl.gov" target="_blank">mfadams@lbl.gov</a>> wrote:<br>
> <br>
> I am running a on SUMMIt with a Kokkos cuda configuration and while debugging with ddt I noticed that it spent a long time in KokkosInit, but I was not using Kokkos. KokkosInit was call in PETSc's GPU init, which seems logical enough, but it would be better if it is not called if you are not using Kokkos.<br>
> <br>
> I recall seeing places where Kokkos is checked when calling a Kokkos method (ie, lazy initialization). Do we have policy on whether we are being lazy with KokkosInit or not?<br>
> <br>
> Mark<br>
<br>
</blockquote></div>