[petsc-users] make error in stefanozampini/hypre-cuda-rebased-v2

Mark Adams mfadams at lbl.gov
Fri Mar 13 20:24:43 CDT 2020


It made and past make test, thanks,

On Fri, Mar 13, 2020 at 12:37 PM Junchao Zhang <jczhang at mcs.anl.gov> wrote:

> Mark, I have a workaround and pushed to
> stefanozampini/hypre-cuda-rebased-v2. You can try it. Thanks.
> --Junchao Zhang
>
>
> On Fri, Mar 13, 2020 at 10:22 AM Junchao Zhang <jczhang at mcs.anl.gov>
> wrote:
>
>> Mark,
>>   I reproduced the error on Summit with pgi compilers. I found these
>> atomics in /sw/summit/cuda/10.1.243/include/sm_32_atomic_functions.h. I am
>> investigating it. Thanks.
>> --Junchao Zhang
>>
>>
>> On Fri, Mar 13, 2020 at 8:17 AM Mark Adams <mfadams at lbl.gov> wrote:
>>
>>> This error goes away with 32 bit integers. These methods are part of
>>> CUDA C++ (
>>> https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html) and I
>>> see unsigned long long int versions, but not signed ones that are in PETSc.
>>>
>>> My cuda is not that new:
>>>
>>> 08:43 2 stefanozampini/hypre-cuda-rebased-v2= ~/petsc_install$ nvcc
>>> --version
>>> nvcc: NVIDIA (R) Cuda compiler driver
>>> Copyright (c) 2005-2019 NVIDIA Corporation
>>> Built on Sun_Jul_28_19:07:52_PDT_2019
>>> Cuda compilation tools, release 10.1, V10.1.243
>>>
>>> Junchao, do you have any ideas?
>>>
>>> I did try just removing these methods and then it complained that they
>>> were not there.
>>>
>>> Thanks,
>>> Mark
>>>
>>> On Thu, Mar 12, 2020 at 9:26 PM Satish Balay <balay at mcs.anl.gov> wrote:
>>>
>>>> >>>>>>>>
>>>>
>>>> /autofs/nccs-svm1_home1/adams/petsc_install/src/vec/is/sf/impls/basic/cuda/
>>>> sfpackcuda.cu(334): error: function "atomicMin(long long *, long
>>>> long)" has already been defined
>>>>
>>>>
>>>> /autofs/nccs-svm1_home1/adams/petsc_install/src/vec/is/sf/impls/basic/cuda/
>>>> sfpackcuda.cu(345): error: function "atomicMax(long long *, long
>>>> long)" has already been defined
>>>>
>>>>
>>>> /autofs/nccs-svm1_home1/adams/petsc_install/src/vec/is/sf/impls/basic/cuda/
>>>> sfpackcuda.cu(413): error: function "atomicAnd(long long *, long
>>>> long)" has already been defined
>>>>
>>>>
>>>> /autofs/nccs-svm1_home1/adams/petsc_install/src/vec/is/sf/impls/basic/cuda/
>>>> sfpackcuda.cu(414): error: function "atomicOr(long long *, long long)"
>>>> has already been defined
>>>>
>>>>
>>>> /autofs/nccs-svm1_home1/adams/petsc_install/src/vec/is/sf/impls/basic/cuda/
>>>> sfpackcuda.cu(415): error: function "atomicXor(long long *, long
>>>> long)" has already been defined
>>>> <<<<<<
>>>>
>>>> This is a strange error. For one the compiler is not showing where the
>>>> prior definition is.
>>>>
>>>> And the prior definition I see is 'double atomicMin(double* address,
>>>> double val)' which shouldn't conflict - as this is c++?
>>>>
>>>> Satish
>>>>
>>>> On Thu, 12 Mar 2020, Mark Adams wrote:
>>>>
>>>> > I get this make error in stefanozampini/hypre-cuda-rebased-v2
>>>> >
>>>>
>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20200313/236096bf/attachment.html>


More information about the petsc-users mailing list