[petsc-users] pets-3.1-p6 with CUDA: Unknown vector type: cuda!

Jakub Pola jakub.pola at gmail.com
Thu Dec 9 17:44:12 CST 2010


When I used your suggestion I got following error.

kuba at desktop:~/External/petsc-dev$ ./config/configure.py --with-cc=gcc
--with-fc=gfortran --download-f-blas-lapack=1 --download-mpich=1
--with-cuda=1 --with-debug=no --with-cups=1 --with-thrust=1
===============================================================================
             Configuring PETSc to compile on your
system                       
===============================================================================
TESTING: checkInclude from
config.headers(config/BuildSystem/config/headers.py:82)
*******************************************************************************
         UNABLE to CONFIGURE with GIVEN OPTIONS    (see configure.log
for details):
-------------------------------------------------------------------------------
PETSc CUDA support requires the CUSP and Thrust packages
Rerun configure using --with-cusp-dir and --with-thrust-dir
*******************************************************************************


Dnia 2010-12-09, czw o godzinie 17:29 -0600, Satish Balay pisze:
> Try removing options:
> --with-cusp-dir=/usr/local/cuda/include/cusp/ --with-thrust-dir=/usr/local/cuda/include/thrust
> [and use --with-cups=1 --with-thrust=1]
> 
> As they are in default location - configure picks them automatically. But
> since they are incorrectly specified - the 'default cuda path'  gets
> the configure tests going - but this path causes grief later..
> 
> > In file included from /usr/local/cuda/include/cusp/detail/config.h:24,
> >                  from /usr/local/cuda/include/cusp/memory.h:20,
> 
> 
> Thats suspporsed to system memory.h - not cups/memory.h
> 
> Satish
> 
> On Fri, 10 Dec 2010, Jakub Pola wrote:
> 
> > Hi again,
> > 
> > I downloaded Petsc 3.1.0 as well as thrust 1.4.0 and cusp 0.2.0
> > I have problems with compiling the library. I did following steps:
> > 
> > configured pets: 
> > 
> > ./config/configure.py --with-cc=gcc --with-fc=gfortran
> > --download-f-blas-lapack=1 --download-mpich=1 --with-cuda=1
> > --with-debug=no --with-cusp-dir=/usr/local/cuda/include/cusp/
> > --with-thrust-dir=/usr/local/cuda/include/thrust
> > 
> > then make:
> > make PETSC_DIR=/home/kuba/External/petsc-dev
> > PETSC_ARCH=arch-linux-gnu-c-debug all
> > 
> > here I have problems because compilator says that 
> > /usr/local/cuda/include/thrust/iterator/iterator_traits.h:34: fatal
> > error: iterator: No such file or directory
> > 
> > But actually it is as a symbolic link:
> >  ls -l /usr/local/cuda/include/ 
> > gives 
> > lrwxrwxrwx 1 root root     34 2010-12-09 23:44 thrust
> > -> /home/kuba/External/thrust/thrust/
> > 
> > and 
> > 
> > kuba at desktop:~/External/thrust/thrust/iterator$ ls -l
> > razem 96
> > -rw-r--r-- 1 kuba kuba  7666 2010-12-09 21:30 constant_iterator.h
> > -rw-r--r-- 1 kuba kuba  6959 2010-12-09 21:30 counting_iterator.h
> > drwxr-xr-x 3 kuba kuba  4096 2010-12-09 21:30 detail
> > -rw-r--r-- 1 kuba kuba  4376 2010-12-09 21:30 iterator_adaptor.h
> > -rw-r--r-- 1 kuba kuba  8282 2010-12-09 21:30 iterator_categories.h
> > -rw-r--r-- 1 kuba kuba 14279 2010-12-09 21:30 iterator_facade.h
> > -rw-r--r-- 1 kuba kuba  2066 2010-12-09 21:30 iterator_traits.h
> > -rw-r--r-- 1 kuba kuba  6880 2010-12-09 21:30 permutation_iterator.h
> > -rw-r--r-- 1 kuba kuba  7055 2010-12-09 21:30 reverse_iterator.h
> > -rw-r--r-- 1 kuba kuba 10089 2010-12-09 21:30 transform_iterator.h
> > -rw-r--r-- 1 kuba kuba  7348 2010-12-09 21:30 zip_iterator.h
> > kuba at desktop:~/External/thrust/thrust/iterator$ 
> > 
> > 
> > Have somebody faced this kind of problem?
> > 
> > 
> > 
> > 
> > Here it is compilation log to first error
> > 
> > kuba at desktop:~/External/petsc-dev$ make
> > PETSC_DIR=/home/kuba/External/petsc-dev
> > PETSC_ARCH=arch-linux-gnu-c-debug all
> > ==========================================
> >  
> > See documentation/faq.html and documentation/bugreporting.html
> > for help with installation problems. Please send EVERYTHING
> > printed out below when reporting problems
> >  
> > To subscribe to the PETSc announcement list, send mail to 
> > majordomo at mcs.anl.gov with the message: 
> > subscribe petsc-announce
> >  
> > To subscribe to the PETSc users mailing list, send mail to 
> > majordomo at mcs.anl.gov with the message: 
> > subscribe petsc-users
> >  
> > ==========================================
> > On czw, 9 gru 2010, 23:56:38 CET on desktop
> > Machine characteristics: Linux desktop 2.6.35-22-generic #35-Ubuntu SMP
> > Sat Oct 16 20:36:48 UTC 2010 i686 GNU/Linux
> > -----------------------------------------
> > Using PETSc directory: /home/kuba/External/petsc-dev
> > Using PETSc arch: arch-linux-gnu-c-debug
> > -----------------------------------------
> > PETSC_VERSION_RELEASE    0
> > PETSC_VERSION_MAJOR      3
> > PETSC_VERSION_MINOR      1
> > PETSC_VERSION_SUBMINOR   0
> > PETSC_VERSION_PATCH      6
> > PETSC_VERSION_DATE       "Mar, 25, 2010"
> > PETSC_VERSION_PATCH_DATE "unknown"
> > PETSC_VERSION_HG         "unknown"
> > PETSC_VERSION_DATE_HG    "unknown"
> > PETSC_VERSION_(MAJOR,MINOR,SUBMINOR) \
> > -----------------------------------------
> > Using configure Options: --with-cc=gcc --with-fc=gfortran
> > --download-f-blas-lapack=1 --download-mpich=1 --with-cuda=1
> > --with-debug=no --with-cusp-dir=/usr/local/cuda/include/cusp/
> > --with-thrust-dir=/usr/local/cuda/include/thrust
> > Using configuration flags:
> > #define INCLUDED_PETSCCONF_H
> > #define IS_COLORING_MAX 65535
> > #define STDC_HEADERS 1
> > #define MPIU_COLORING_VALUE MPI_UNSIGNED_SHORT
> > #define PETSC_UINTPTR_T uintptr_t
> > #define PETSC_HAVE_PTHREAD 1
> > #define PETSC_STATIC_INLINE static inline
> > #define PETSC_REPLACE_DIR_SEPARATOR '\\'
> > #define PETSC_RESTRICT  __restrict__
> > #define PETSC_HAVE_MPI 1
> > #define PETSC_USE_SINGLE_LIBRARY 1
> > #define PETSC_USE_SOCKET_VIEWER 1
> > #define PETSC_HAVE_THRUST 1
> > #define PETSC_LIB_DIR
> > "/home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/lib"
> > #define PETSC_HAVE_FORTRAN 1
> > #define PETSC_HAVE_SOWING 1
> > #define PETSC_SLSUFFIX ""
> > #define PETSC_FUNCTION_NAME_CXX __func__
> > #define PETSC_HAVE_DOUBLE_ALIGN_MALLOC 1
> > #define PETSC_UNUSED  
> > #define PETSC_HAVE_CUDA 1
> > #define PETSC_FUNCTION_NAME_C __func__
> > #define PETSC_HAVE_C2HTML 1
> > #define PETSC_HAVE_VALGRIND 1
> > #define PETSC_HAVE_BUILTIN_EXPECT 1
> > #define PETSC_DIR_SEPARATOR '/'
> > #define PETSC_PATH_SEPARATOR ':'
> > #define PETSC_HAVE_X11 1
> > #define PETSC_HAVE_CUSP 1
> > #define PETSC_Prefetch(a,b,c)  
> > #define PETSC_HAVE_BLASLAPACK 1
> > #define PETSC_HAVE_STRING_H 1
> > #define PETSC_HAVE_SYS_TYPES_H 1
> > #define PETSC_HAVE_ENDIAN_H 1
> > #define PETSC_HAVE_SYS_PROCFS_H 1
> > #define PETSC_HAVE_DLFCN_H 1
> > #define PETSC_HAVE_STDINT_H 1
> > #define PETSC_HAVE_LINUX_KERNEL_H 1
> > #define PETSC_HAVE_TIME_H 1
> > #define PETSC_HAVE_MATH_H 1
> > #define PETSC_HAVE_STDLIB_H 1
> > #define PETSC_HAVE_SYS_PARAM_H 1
> > #define PETSC_HAVE_SYS_SOCKET_H 1
> > #define PETSC_HAVE_UNISTD_H 1
> > #define PETSC_HAVE_SYS_WAIT_H 1
> > #define PETSC_HAVE_LIMITS_H 1
> > #define PETSC_HAVE_SYS_UTSNAME_H 1
> > #define PETSC_HAVE_NETINET_IN_H 1
> > #define PETSC_HAVE_FENV_H 1
> > #define PETSC_HAVE_FLOAT_H 1
> > #define PETSC_HAVE_SEARCH_H 1
> > #define PETSC_HAVE_SYS_SYSINFO_H 1
> > #define PETSC_HAVE_SYS_RESOURCE_H 1
> > #define PETSC_HAVE_SYS_TIMES_H 1
> > #define PETSC_HAVE_NETDB_H 1
> > #define PETSC_HAVE_MALLOC_H 1
> > #define PETSC_HAVE_PWD_H 1
> > #define PETSC_HAVE_FCNTL_H 1
> > #define PETSC_HAVE_STRINGS_H 1
> > #define PETSC_HAVE_MEMORY_H 1
> > #define PETSC_TIME_WITH_SYS_TIME 1
> > #define PETSC_HAVE_SYS_TIME_H 1
> > #define PETSC_USING_F90 1
> > #define PETSC_HAVE_RTLD_NOW 1
> > #define PETSC_HAVE_RTLD_LOCAL 1
> > #define PETSC_HAVE_RTLD_LAZY 1
> > #define PETSC_C_STATIC_INLINE static inline
> > #define PETSC_HAVE_FORTRAN_UNDERSCORE 1
> > #define PETSC_HAVE_CXX_NAMESPACE 1
> > #define PETSC_HAVE_RTLD_GLOBAL 1
> > #define PETSC_C_RESTRICT  __restrict__
> > #define PETSC_CXX_RESTRICT  __restrict__
> > #define PETSC_CXX_STATIC_INLINE static inline
> > #define PETSC_HAVE_LIBCUBLAS 1
> > #define PETSC_HAVE_LIBCUDART 1
> > #define PETSC_HAVE_LIBDL 1
> > #define PETSC_HAVE_LIBFBLAS 1
> > #define PETSC_HAVE_LIBFLAPACK 1
> > #define PETSC_HAVE_ERF 1
> > #define PETSC_HAVE_LIBCUFFT 1
> > #define PETSC_HAVE_LIBRT 1
> > #define PETSC_ARCH "arch-linux-gnu-c-debug"
> > #define PETSC_VERSION_DATE_HG "Thu Dec 09 20:23:16 2010 +0100"
> > #define PETSC_VERSION_BS_HG "47bec558f992b1828a074066eb6df9f5b106a6b6"
> > #define PETSC_VERSION_HG "488e1fcaa13db132861c12416293551e6e00b14e"
> > #define PETSC_DIR "/home/kuba/External/petsc-dev"
> > #define PETSC_VERSION_BS_DATE_HG "Tue Dec 07 14:41:13 2010 -0600"
> > #define HAVE_GZIP 1
> > #define PETSC_CLANGUAGE_C 1
> > #define PETSC_USE_EXTERN_CXX  
> > #define PETSC_USE_ERRORCHECKING 1
> > #define PETSC_MISSING_DREAL 1
> > #define PETSC_SIZEOF_MPI_COMM 4
> > #define PETSC_BITS_PER_BYTE 8
> > #define PETSC_SIZEOF_MPI_FINT 4
> > #define PETSC_SIZEOF_VOID_P 4
> > #define PETSC_RETSIGTYPE void
> > #define PETSC_HAVE_CXX_COMPLEX 1
> > #define PETSC_SIZEOF_LONG 4
> > #define PETSC_USE_FORTRANKIND 1
> > #define PETSC_SIZEOF_SIZE_T 4
> > #define PETSC_SIZEOF_CHAR 1
> > #define PETSC_SIZEOF_DOUBLE 8
> > #define PETSC_SIZEOF_FLOAT 4
> > #define PETSC_HAVE_C99_COMPLEX 1
> > #define PETSC_SIZEOF_INT 4
> > #define PETSC_SIZEOF_LONG_LONG 8
> > #define PETSC_SIZEOF_SHORT 2
> > #define PETSC_HAVE_STRCASECMP 1
> > #define PETSC_HAVE_POPEN 1
> > #define PETSC_HAVE_SIGSET 1
> > #define PETSC_HAVE_GETWD 1
> > #define PETSC_HAVE_VSNPRINTF 1
> > #define PETSC_HAVE_TIMES 1
> > #define PETSC_HAVE_DLSYM 1
> > #define PETSC_HAVE_SNPRINTF 1
> > #define PETSC_HAVE_GETPWUID 1
> > #define PETSC_HAVE_GETHOSTBYNAME 1
> > #define PETSC_HAVE_SLEEP 1
> > #define PETSC_HAVE_DLERROR 1
> > #define PETSC_HAVE_FORK 1
> > #define PETSC_HAVE_RAND 1
> > #define PETSC_HAVE_GETTIMEOFDAY 1
> > #define PETSC_HAVE_DLCLOSE 1
> > #define PETSC_HAVE_UNAME 1
> > #define PETSC_HAVE_GETHOSTNAME 1
> > #define PETSC_HAVE_MKSTEMP 1
> > #define PETSC_HAVE_SIGACTION 1
> > #define PETSC_HAVE_DRAND48 1
> > #define PETSC_HAVE_NANOSLEEP 1
> > #define PETSC_HAVE_VA_COPY 1
> > #define PETSC_HAVE_CLOCK 1
> > #define PETSC_HAVE_ACCESS 1
> > #define PETSC_HAVE_SIGNAL 1
> > #define PETSC_HAVE_USLEEP 1
> > #define PETSC_HAVE_GETRUSAGE 1
> > #define PETSC_HAVE_VFPRINTF 1
> > #define PETSC_HAVE_MEMALIGN 1
> > #define PETSC_HAVE_GETDOMAINNAME 1
> > #define PETSC_HAVE_TIME 1
> > #define PETSC_HAVE_LSEEK 1
> > #define PETSC_HAVE_SOCKET 1
> > #define PETSC_HAVE_SYSINFO 1
> > #define PETSC_HAVE_READLINK 1
> > #define PETSC_HAVE_REALPATH 1
> > #define PETSC_HAVE_DLOPEN 1
> > #define PETSC_HAVE_MEMMOVE 1
> > #define PETSC_HAVE__GFORTRAN_IARGC 1
> > #define PETSC_SIGNAL_CAST  
> > #define PETSC_HAVE_GETCWD 1
> > #define PETSC_HAVE_VPRINTF 1
> > #define PETSC_HAVE_BZERO 1
> > #define PETSC_HAVE_GETPAGESIZE 1
> > #define PETSC_LEVEL1_DCACHE_LINESIZE 64
> > #define PETSC_LEVEL1_DCACHE_SIZE 32768
> > #define PETSC_LEVEL1_DCACHE_ASSOC 8
> > #define PETSC_USE_PROC_FOR_SIZE 1
> > #define PETSC_HAVE_DYNAMIC_LIBRARIES 1
> > #define PETSC_HAVE_SHARED_LIBRARIES 1
> > #define PETSC_MEMALIGN 16
> > #define PETSC_HAVE_FORTRAN_GET_COMMAND_ARGUMENT 1
> > #define PETSC_HAVE_GFORTRAN_IARGC 1
> > #define PETSC_HAVE_ISINF 1
> > #define PETSC_HAVE_ISNAN 1
> > #define PETSC_HAVE_MPI_COMM_C2F 1
> > #define PETSC_HAVE_MPI_LONG_DOUBLE 1
> > #define PETSC_HAVE_MPI_COMM_F2C 1
> > #define PETSC_HAVE_MPI_FINT 1
> > #define PETSC_HAVE_MPI_F90MODULE 1
> > #define PETSC_HAVE_MPI_FINALIZED 1
> > #define PETSC_HAVE_MPI_COMM_SPAWN 1
> > #define PETSC_HAVE_MPI_WIN_CREATE 1
> > #define PETSC_HAVE_MPIIO 1
> > #define PETSC_HAVE_MPI_C_DOUBLE_COMPLEX 1
> > #define PETSC_HAVE_MPI_ALLTOALLW 1
> > #define PETSC_HAVE_MPI_IN_PLACE 1
> > #define PETSC_USE_INFO 1
> > #define PETSC_PETSC_USE_BACKWARD_LOOP 1
> > #define PETSC_Alignx(a,b)   
> > #define PETSC_USE_DEBUG 1
> > #define PETSC_USE_LOG 1
> > #define PETSC_IS_COLOR_VALUE_TYPE short
> > #define PETSC_USE_CTABLE 1
> > #define PETSC_USE_GDB_DEBUGGER 1
> > #define PETSC_CUDA_EXTERN_C_BEGIN extern "C" {
> > #define PETSC_CUDA_EXTERN_C_END }
> > #define PETSC_HAVE_CUSP_SMOOTHED_AGGREGATION 1
> > #define PETSC_BLASLAPACK_UNDERSCORE 1
> > -----------------------------------------
> > Using C/C++ include paths: -I/home/kuba/External/petsc-dev/include
> > -I/home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/include
> > -I/usr/local/cuda/include -I/usr/local/cuda/include/cusp/
> > -I/usr/local/cuda/include/thrust/
> > Using C/C++
> > compiler: /home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/bin/mpicc
> > -Wall -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas -g3   
> > Using Fortran include/module paths:
> > -I/home/kuba/External/petsc-dev/include
> > -I/home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/include
> > -I/usr/local/cuda/include -I/usr/local/cuda/include/cusp/
> > -I/usr/local/cuda/include/thrust/
> > Using Fortran
> > compiler: /home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/bin/mpif90 -Wall -Wno-unused-variable -g   
> > -----------------------------------------
> > Using C/C++
> > linker: /home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/bin/mpicc
> > Using C/C++ flags: -Wall -Wwrite-strings -Wno-strict-aliasing
> > -Wno-unknown-pragmas -g3
> > Using Fortran
> > linker: /home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/bin/mpif90
> > Using Fortran flags: -Wall -Wno-unused-variable -g
> > -----------------------------------------
> > Using libraries:
> > -L/home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/lib  -lpetsc
> > -lX11 -Wl,-rpath,/usr/local/cuda/lib -L/usr/local/cuda/lib -lcufft
> > -lcublas -lcudart
> > -Wl,-rpath,/home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/lib
> > -lflapack -lfblas -L/usr/lib/gcc/i686-linux-gnu/4.4.5
> > -L/usr/lib/i686-linux-gnu -ldl -lmpich -lopa -lmpl -lrt -lpthread
> > -lgcc_s -lmpichf90 -lgfortran -lm -lm -lmpichcxx -lstdc++ -lmpichcxx
> > -lstdc++ -ldl -lmpich -lopa -lmpl -lrt -lpthread -lgcc_s -ldl 
> > ------------------------------------------
> > Using
> > mpiexec: /home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/bin/mpiexec
> > ==========================================
> > /bin/rm -f
> > -rf /home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/lib/libpetsc*.*
> > /bin/rm -f
> > -f /home/kuba/External/petsc-dev/arch-linux-gnu-c-debug/include/petsc*.mod
> > BEGINNING TO COMPILE LIBRARIES IN ALL DIRECTORIES
> > =========================================
> > libfast in: /home/kuba/External/petsc-dev/src
> > libfast in: /home/kuba/External/petsc-dev/src/inline
> > libfast in: /home/kuba/External/petsc-dev/src/sys
> > libfast in: /home/kuba/External/petsc-dev/src/sys/viewer
> > libfast in: /home/kuba/External/petsc-dev/src/sys/viewer/impls
> > libfast in: /home/kuba/External/petsc-dev/src/sys/viewer/impls/socket
> > In file included from /usr/local/cuda/include/cusp/detail/config.h:24,
> >                  from /usr/local/cuda/include/cusp/memory.h:20,
> > 
> > from /home/kuba/External/petsc-dev/include/petscsys.h:1671,
> >                  from send.c:3:
> > /usr/local/cuda/include/thrust/version.h:69: error: expected ‘=’, ‘,’,
> > ‘;’, ‘asm’ or ‘__attribute__’ before ‘thrust’
> > In file included from /usr/local/cuda/include/cusp/memory.h:22,
> > 
> > from /home/kuba/External/petsc-dev/include/petscsys.h:1671,
> >                  from send.c:3:
> > /usr/local/cuda/include/thrust/iterator/iterator_traits.h:34: fatal
> > error: iterator: No such file or directory
> > compilation terminated.
> > 
> > 
> > 
> > Dnia 2010-12-09, czw o godzinie 20:47 +0100, Jed Brown pisze:
> > > On Thu, Dec 9, 2010 at 20:44, Jakub Pola <jakub.pola at gmail.com> wrote:
> > >         Petsc Release Version 3.1.0
> > > 
> > > You need petsc-dev for this.
> > 
> > 
> > 




More information about the petsc-users mailing list