Re: [petsc-dev] Kokkos error on SUMMIT

2020-10-02 Thread Junchao Zhang
On Fri, Oct 2, 2020 at 3:02 PM Junchao Zhang 
wrote:

>
>
> On Fri, Oct 2, 2020 at 2:59 PM Mark Adams  wrote:
>
>>
>>
>> On Fri, Oct 2, 2020 at 3:15 PM Barry Smith  wrote:
>>
>>>
>>>   Mark,
>>>
>>>   Looks like you are building Kokkos without CUDA.
>>
>>
>> Yes. This is a CPU build of Kokkos.
>>
>>
>>> You don't have --with-cuda on configure line that is used by Kokkos to
>>> determine what version to build.
>>>
>>>   Junchao,
>>>
>>>   I guess you need to test Kokkos Kernels without CUDA and HIP and make
>>> a few changes.
>>>
>>
>> I'm trying with OpenMP right now. If you want CPU runs then asking for
>> OMP is not terrible.
>>
>>
> That is an interesting feature of Kokkos.
>
By the design, even 'device' memory is now the host memory. The computation
is still diverted to Kokkos backend.  In other words, petsc supports
multithreading through Kokkos.


>
>
>>
>>>   Barry
>>>
>>>
>>>
>>>
>>> #if defined(PETSC_HAVE_CUDA)
>>>   #define WaitForKokkos() PetscCUDASynchronize ? (Kokkos::fence(),0) : 0;
>>> #elif defined(PETSC_HAVE_HIP)
>>>   #define WaitForKokkos() PetscHIPSynchronize ? (Kokkos::fence(),0) : 0;
>>> #endif
>>>
>>>
>>>
>>> > On Oct 2, 2020, at 11:47 AM, Mark Adams  wrote:
>>> >
>>> >
>>> > 
>>>
>>>


Re: [petsc-dev] Kokkos error on SUMMIT

2020-10-02 Thread Junchao Zhang
On Fri, Oct 2, 2020 at 2:59 PM Mark Adams  wrote:

>
>
> On Fri, Oct 2, 2020 at 3:15 PM Barry Smith  wrote:
>
>>
>>   Mark,
>>
>>   Looks like you are building Kokkos without CUDA.
>
>
> Yes. This is a CPU build of Kokkos.
>
>
>> You don't have --with-cuda on configure line that is used by Kokkos to
>> determine what version to build.
>>
>>   Junchao,
>>
>>   I guess you need to test Kokkos Kernels without CUDA and HIP and make a
>> few changes.
>>
>
> I'm trying with OpenMP right now. If you want CPU runs then asking for OMP
> is not terrible.
>
>
That is an interesting feature of Kokkos.


>
>>   Barry
>>
>>
>>
>>
>> #if defined(PETSC_HAVE_CUDA)
>>   #define WaitForKokkos() PetscCUDASynchronize ? (Kokkos::fence(),0) : 0;
>> #elif defined(PETSC_HAVE_HIP)
>>   #define WaitForKokkos() PetscHIPSynchronize ? (Kokkos::fence(),0) : 0;
>> #endif
>>
>>
>>
>> > On Oct 2, 2020, at 11:47 AM, Mark Adams  wrote:
>> >
>> >
>> > 
>>
>>


Re: [petsc-dev] Kokkos error on SUMMIT

2020-10-02 Thread Mark Adams
On Fri, Oct 2, 2020 at 3:15 PM Barry Smith  wrote:

>
>   Mark,
>
>   Looks like you are building Kokkos without CUDA.


Yes. This is a CPU build of Kokkos.


> You don't have --with-cuda on configure line that is used by Kokkos to
> determine what version to build.
>
>   Junchao,
>
>   I guess you need to test Kokkos Kernels without CUDA and HIP and make a
> few changes.
>

I'm trying with OpenMP right now. If you want CPU runs then asking for OMP
is not terrible.


>
>   Barry
>
>
>
>
> #if defined(PETSC_HAVE_CUDA)
>   #define WaitForKokkos() PetscCUDASynchronize ? (Kokkos::fence(),0) : 0;
> #elif defined(PETSC_HAVE_HIP)
>   #define WaitForKokkos() PetscHIPSynchronize ? (Kokkos::fence(),0) : 0;
> #endif
>
>
>
> > On Oct 2, 2020, at 11:47 AM, Mark Adams  wrote:
> >
> >
> > 
>
>


Re: [petsc-dev] Kokkos error on SUMMIT

2020-10-02 Thread Barry Smith


  Mark,

  Looks like you are building Kokkos without CUDA.You don't have 
--with-cuda on configure line that is used by Kokkos to determine what version 
to build.

  Junchao,

  I guess you need to test Kokkos Kernels without CUDA and HIP and make a few 
changes.

  Barry




#if defined(PETSC_HAVE_CUDA)
  #define WaitForKokkos() PetscCUDASynchronize ? (Kokkos::fence(),0) : 0;
#elif defined(PETSC_HAVE_HIP)
  #define WaitForKokkos() PetscHIPSynchronize ? (Kokkos::fence(),0) : 0;
#endif



> On Oct 2, 2020, at 11:47 AM, Mark Adams  wrote:
> 
> 
> 



[petsc-dev] Kokkos error on SUMMIT

2020-10-02 Thread Mark Adams



configure.log
Description: Binary data


make.log
Description: Binary data