[petsc-dev] PETSc build errors with he most recent thrust/cusp
Paul Mullowney
paulm at txcorp.com
Wed Jan 4 17:07:53 CST 2012
I'm having troubles building PETSc with the most recent version of CUSP
(v.0.2.0) and Thurst (v1.5.0). I see the errors below. Any help is much
appreciated.
-Paul
nvcc -gencode arch=compute_20,code=sm_20 -O3 -I/usr/local/cuda/include
-O -arch=sm_13 -c --compiler-options="-g -O3 -O
-I/home/research/paulm/gpuPETSc/petsc-dev/include
-I/home/research/paulm/gpuPETSc/petsc-dev/arch-linux2-c-opt/include
-I/usr/local/cuda/include
-I/home/research/paulm/gpuPETSc/txpetscgpu/include
-I/home/research/paulm/gpuPETSc/externLibs/cusp/
-I/usr/local/cuda/include/
-I/usr/local/contrib/openmpi-1.4.2-nodl/include
-D__INSDIR__=src/mat/impls/aij/seq/seqcusp/" aijAssemble.cu
/home/research/paulm/gpuPETSc/externLibs/cusp/cusp/detail/device/generalized_spmv/coo_flat.h(509):
error: namespace "thrust::detail::backend::cuda" has no member
"uniform_interval_splitting"
detected during instantiation of "void
cusp::detail::device::reduce_by_key(InputIterator1, InputIterator1,
InputIterator2, OutputIterator1, OutputIterator2, BinaryPredicate,
BinaryFunction) [with
InputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
InputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
OutputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
OutputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
BinaryPredicate=thrust::equal_to<thrust::tuple<PetscInt, PetscInt,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
BinaryFunction=thrust::plus<ValueType>]"
aijAssemble.cu(264): here
/home/research/paulm/gpuPETSc/externLibs/cusp/cusp/detail/device/generalized_spmv/coo_flat.h(509):
error: type name is not allowed
detected during instantiation of "void
cusp::detail::device::reduce_by_key(InputIterator1, InputIterator1,
InputIterator2, OutputIterator1, OutputIterator2, BinaryPredicate,
BinaryFunction) [with
InputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
InputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
OutputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
OutputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
BinaryPredicate=thrust::equal_to<thrust::tuple<PetscInt, PetscInt,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
BinaryFunction=thrust::plus<ValueType>]"
aijAssemble.cu(264): here
/home/research/paulm/gpuPETSc/externLibs/cusp/cusp/detail/device/generalized_spmv/coo_flat.h(509):
warning: expression has no effect
detected during:
instantiation of "void
cusp::detail::device::cuda::spmv_coo(SizeType, SizeType, IndexIterator1,
IndexIterator2, ValueIterator1, ValueIterator2, ValueIterator3,
ValueIterator4, BinaryFunction1, BinaryFunction2) [with
SizeType=unsigned long,
IndexIterator1=thrust::detail::normal_iterator<thrust::device_ptr<unsigned
int>>, IndexIterator2=thrust::constant_iterator<unsigned int,
thrust::use_default, thrust::use_default>,
ValueIterator1=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
ValueIterator2=thrust::constant_iterator<ValueType, thrust::use_default,
thrust::use_default>,
ValueIterator3=thrust::constant_iterator<ValueType, thrust::use_default,
thrust::use_default>,
ValueIterator4=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
BinaryFunction1=thrust::multiplies<ValueType>,
BinaryFunction2=thrust::plus<ValueType>]"
/home/research/paulm/gpuPETSc/externLibs/cusp/cusp/detail/device/reduce_by_key.inl(100):
here
instantiation of "void
cusp::detail::device::reduce_by_key(InputIterator1, InputIterator1,
InputIterator2, OutputIterator1, OutputIterator2, BinaryPredicate,
BinaryFunction) [with
InputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
InputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
OutputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
OutputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
BinaryPredicate=thrust::equal_to<thrust::tuple<PetscInt, PetscInt,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
BinaryFunction=thrust::plus<ValueType>]"
aijAssemble.cu(264): here
/home/research/paulm/gpuPETSc/externLibs/cusp/cusp/detail/device/generalized_spmv/coo_flat.h(509):
warning: expression has no effect
detected during:
instantiation of "void
cusp::detail::device::cuda::spmv_coo(SizeType, SizeType, IndexIterator1,
IndexIterator2, ValueIterator1, ValueIterator2, ValueIterator3,
ValueIterator4, BinaryFunction1, BinaryFunction2) [with
SizeType=unsigned long,
IndexIterator1=thrust::detail::normal_iterator<thrust::device_ptr<unsigned
int>>, IndexIterator2=thrust::constant_iterator<unsigned int,
thrust::use_default, thrust::use_default>,
ValueIterator1=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
ValueIterator2=thrust::constant_iterator<ValueType, thrust::use_default,
thrust::use_default>,
ValueIterator3=thrust::constant_iterator<ValueType, thrust::use_default,
thrust::use_default>,
ValueIterator4=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
BinaryFunction1=thrust::multiplies<ValueType>,
BinaryFunction2=thrust::plus<ValueType>]"
/home/research/paulm/gpuPETSc/externLibs/cusp/cusp/detail/device/reduce_by_key.inl(100):
here
instantiation of "void
cusp::detail::device::reduce_by_key(InputIterator1, InputIterator1,
InputIterator2, OutputIterator1, OutputIterator2, BinaryPredicate,
BinaryFunction) [with
InputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
InputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
OutputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
OutputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
BinaryPredicate=thrust::equal_to<thrust::tuple<PetscInt, PetscInt,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
BinaryFunction=thrust::plus<ValueType>]"
aijAssemble.cu(264): here
/home/research/paulm/gpuPETSc/externLibs/cusp/cusp/detail/device/generalized_spmv/coo_flat.h(506):
warning: variable "unit_size" was set but never used
detected during:
instantiation of "void
cusp::detail::device::cuda::spmv_coo(SizeType, SizeType, IndexIterator1,
IndexIterator2, ValueIterator1, ValueIterator2, ValueIterator3,
ValueIterator4, BinaryFunction1, BinaryFunction2) [with
SizeType=unsigned long,
IndexIterator1=thrust::detail::normal_iterator<thrust::device_ptr<unsigned
int>>, IndexIterator2=thrust::constant_iterator<unsigned int,
thrust::use_default, thrust::use_default>,
ValueIterator1=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
ValueIterator2=thrust::constant_iterator<ValueType, thrust::use_default,
thrust::use_default>,
ValueIterator3=thrust::constant_iterator<ValueType, thrust::use_default,
thrust::use_default>,
ValueIterator4=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
BinaryFunction1=thrust::multiplies<ValueType>,
BinaryFunction2=thrust::plus<ValueType>]"
/home/research/paulm/gpuPETSc/externLibs/cusp/cusp/detail/device/reduce_by_key.inl(100):
here
instantiation of "void
cusp::detail::device::reduce_by_key(InputIterator1, InputIterator1,
InputIterator2, OutputIterator1, OutputIterator2, BinaryPredicate,
BinaryFunction) [with
InputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
InputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
OutputIterator1=thrust::zip_iterator<thrust::tuple<thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::detail::normal_iterator<thrust::device_ptr<PetscInt>>,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
OutputIterator2=thrust::detail::normal_iterator<thrust::device_ptr<ValueType>>,
BinaryPredicate=thrust::equal_to<thrust::tuple<PetscInt, PetscInt,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type, thrust::null_type,
thrust::null_type, thrust::null_type>>,
BinaryFunction=thrust::plus<ValueType>]"
aijAssemble.cu(264): here
2 errors detected in the compilation of
"/tmp/tmpxft_000056d7_00000000-6_aijAssemble.compute_20.cpp1.ii".
More information about the petsc-dev
mailing list