[petsc-users] unable to build petsc with cuda / superlu-dist enabled

Barry Smith bsmith at petsc.dev
Thu Aug 25 07:44:56 CDT 2022


nvcc fatal   : redefinition of argument 'optimize'
make[2]: *** [SRC/CMakeFiles/superlu_dist.dir/build.make:499: SRC/CMakeFiles/superlu_dist.dir/superlu_gpu_utils.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
nvcc fatal   : redefinition of argument 'optimize'
make[2]: *** [SRC/CMakeFiles/superlu_dist-static.dir/build.make:499: SRC/CMakeFiles/superlu_dist-static.dir/superlu_gpu_utils.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....

It seems that nvcc is unhappy with something in superlu_gpu_utils.cu  Could you check that file for any "redefinition of optimize"? Unfortunately the nvcc compiler isn't kind enough to print the line number of the redefinition or that information is lost somehow in the build process.

Barry

> On Aug 25, 2022, at 6:50 AM, byron <lbgpublic at gmail.com> wrote:
> 
> Hi All
> 
> I am having trouble getting petsc to build with cuda / superlu-dist enabled.  I have been trying to build it as part of another software tool, moose, hence the choice of options being passed to configure
> 
> python3 ./configure --download-hypre=1 \
> --with-shared-libraries=1 \
> --download-hdf5=1 \
> --download-hdf5-fortran-bindings=0 \
> --with-debugging=no \
> --download-fblaslapack=1 \
> --download-metis=1 \
> --download-ptscotch=1 \
> --download-parmetis=1 \
> --download-superlu_dist=1 \
> --download-mumps=1 \
> --download-strumpack=1 \
> --download-scalapack=1 \
> --download-slepc=1 \
> --with-mpi=1 \
> --with-openmp=1 \
> --with-cxx-dialect=C++11 \
> --with-fortran-bindings=0 \
> --with-sowing=0 \
> --with-64-bit-indices \
> --with-cuda \
> --prefix=/home/blah/blah
> 
> it fails with 
> 
> =============================================================================================                                                                                                             Installing PTScotch; this may take several minutes                                                                                                                                            =============================================================================================                                                                                                       =============================================================================================                                                                                                             Trying to download git://https://github.com/xiaoyeli/superlu_dist <https://github.com/xiaoyeli/superlu_dist> for SUPERLU_DIST                                                                                                            =============================================================================================                                                                                                       =============================================================================================                                                                                                             Configuring SUPERLU_DIST with cmake; this may take several minutes                                                                                                                            =============================================================================================                                                                                                       =============================================================================================                                                                                                             Compiling and installing SUPERLU_DIST; this may take several minutes                                                                                                                          =============================================================================================                                                                                                                             *******************************************************************************
>          UNABLE to CONFIGURE with GIVEN OPTIONS    (see configure.log for details):
> -------------------------------------------------------------------------------
> Error running make on  SUPERLU_DIST
> *******************************************************************************
> 
> I've attached the configure.log.
> 
> I've tried a few different things but nothing that resulted in a successfull build.  The most promising was I tried to build superlu_dist separately with the configure options that petsc passes it and then kept trying the build over and over droping out different configure options until I got it to work.  In that case removing a "-std=c++14" entry appeared to fix the problem but then when I made the same change in how petsc builds superlu-dist the make failed on superlu-dist with a different error.  I get the feeling I'm dealing with symptoms of the problem rather than the cause.  
> 
> Thanks
> Byron
>           
> 
> 
>  
> <configure.log>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20220825/0e9f9980/attachment.html>


More information about the petsc-users mailing list