[petsc-users] Combining SUPERLU_DIST with CUDA fails

Roland Richter roland.richter at ntnu.no
Mon Dec 20 13:59:41 CST 2021


I introduced the changes from that patch directly, without checking out. 
Is that insufficient?

Regards,

Roland

Am 20.12.2021 um 20:38 schrieb Barry Smith:
>
>   Are you sure you have the correct PETSc branch? From configure.log 
> it has
>
>             Defined "VERSION_GIT" to ""v3.16.2-466-g959e1fce86""
>             Defined "VERSION_DATE_GIT" to ""2021-12-18 11:17:24 -0600""
>             Defined "VERSION_BRANCH_GIT" to ""master""
>
> It should have balay/slu-without-omp-3 for the branch.
>
>
>
>> On Dec 20, 2021, at 10:50 AM, Roland Richter <roland.richter at ntnu.no> 
>> wrote:
>>
>> In that case it fails with
>>
>> /~/Downloads/git-files/petsc/mpich-complex-linux-gcc-demo/externalpackages/git.superlu_dist/SRC/cublas_utils.h:22:10: 
>> fatal error: cublas_v2.h: No such file or directory/
>>
>> even though this header is available. I assume some header paths are 
>> not set correctly?
>>
>> Thanks,
>>
>> regards,
>>
>> Roland
>>
>> Am 20.12.21 um 16:29 schrieb Barry Smith:
>>>
>>>   Please try the branch balay/slu-without-omp-3  It is in MR 
>>> https://gitlab.com/petsc/petsc/-/merge_requests/4635
>>>
>>>
>>>
>>>> On Dec 20, 2021, at 8:14 AM, Roland Richter 
>>>> <roland.richter at ntnu.no> wrote:
>>>>
>>>> Hei,
>>>>
>>>> I tried to combine CUDA with superlu_dist in petsc using the 
>>>> following configure-line:
>>>>
>>>> /./configure PETSC_ARCH=mpich-complex-linux-gcc-demo 
>>>> --CC=/opt/intel/oneapi/mpi/2021.5.0/bin/mpicc 
>>>> --CXX=/opt/intel/oneapi/mpi/2021.5.0/bin/mpicxx 
>>>> --FC=/opt/intel/oneapi/mpi/2021.5.0/bin/mpifc --CFLAGS="-mavx2 
>>>> -march=native -O3" --CXXFLAGS="-mavx2 -march=native -O3" 
>>>> --FFLAGS="-mavx2 -march=native -O3" 
>>>> --CUDAFLAGS=-allow-unsupported-compiler --CUDA-CXX=g++ 
>>>> --prefix=/opt/petsc --with-blaslapack=1 --with-mpi=1 
>>>> --with-scalar-type=complex --download-suitesparse=1 --with-cuda 
>>>> --with-debugging=0 --with-openmp --download-superlu_dist --force/
>>>>
>>>> but the configure-step fails with several errors correlated with 
>>>> CUDA and superlu_dist, the first one being
>>>>
>>>> /cublas_utils.c:21:37: error: ‘CUDART_VERSION’ undeclared (first 
>>>> use in this function); did you mean ‘CUDA_VERSION’?//
>>>> //   21 |     printf("CUDA version:   v %d\n",CUDART_VERSION);//
>>>> //| ^~~~~~~~~~~~~~//
>>>> //| CUDA_VERSION/
>>>>
>>>> Compiling superlu_dist separately works, though (including CUDA).
>>>>
>>>> Is there a bug somewhere in the configure-routine? I attached the 
>>>> full configure-log.
>>>>
>>>> Thanks!
>>>>
>>>> Regards,
>>>>
>>>> Roland
>>>>
>>>> <configure.log>
>>>
>> <configure.log>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20211220/7c7cc660/attachment.html>


More information about the petsc-users mailing list