[petsc-users] Combining SUPERLU_DIST with CUDA fails
Barry Smith
bsmith at petsc.dev
Mon Dec 20 13:38:03 CST 2021
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 <https://gitlab.com/petsc/petsc/-/merge_requests/4635>
>>
>>
>>
>>> On Dec 20, 2021, at 8:14 AM, Roland Richter <roland.richter at ntnu.no <mailto: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/d8d690e7/attachment.html>
More information about the petsc-users
mailing list